From 96b3746643709d4d2e5829b5e240c76e9296a2b9 Mon Sep 17 00:00:00 2001 From: Bendik Aagaard Lynghaug Date: Wed, 30 Sep 2026 15:29:30 +0200 Subject: [PATCH] One binary: the lint and the trainer are commands of portal portal serve runs a site; portal lint is what iris was; portal plan, build, report and the rest are what portal-trainer was. One source at one version, so the three never disagree about what content means. Both histories are merged in (subtree). The release attaches the bare binary for a content repo's CI. The trainer's plans, intakes, engines and reference prompt come along; its runs stay in the old repo. Co-Authored-By: Claude Fable 5.1 Claude-Session: https://claude.ai/code/session_01GT37Z1Xtfd9pUuQtMTg6Yt --- .gitea/workflows/publish.yml | 71 +- CHANGELOG.md | 4 + Cargo.toml | 4 +- docs/README.md | 11 +- docs/SUMMARY.md | 6 + .../CHANGELOG.md => docs/lint-changelog.md | 0 docs/lint.md | 54 + vendor/trainer/README.md => docs/training.md | 33 +- .../trainer/engines => engines}/anthropic.sh | 0 {vendor/trainer/engines => engines}/claude.sh | 0 .../trainer/engines => engines}/mailbox.sh | 0 {vendor/trainer/engines => engines}/ollama.sh | 0 .../building-permits-personas.yaml | 0 .../intakes => intakes}/building-permits.yaml | 0 .../intakes => intakes}/contractor.yaml | 0 .../intakes => intakes}/fotballklubb.yaml | 0 {vendor/trainer/intakes => intakes}/hire.yaml | 0 .../trainer/intakes => intakes}/physio.yaml | 0 .../rehab-entreprenor-no.yaml | 0 .../intakes => intakes}/tomtervel.yaml | 0 .../plans => plans}/building-permits.yaml | 0 .../plans => plans}/contractor-full.yaml | 0 .../trainer/plans => plans}/contractor.yaml | 0 .../trainer/plans => plans}/fotballklubb.yaml | 0 {vendor/trainer/plans => plans}/hire.yaml | 0 {vendor/trainer/plans => plans}/physio.yaml | 0 .../trainer/plans => plans}/tomtervel.yaml | 0 {vendor/trainer/plans => plans}/uhhm.yaml | 0 .../aggregates.yaml | 0 .../needs.yaml | 0 .../questions/desk/_section.yaml | 0 .../questions/desk/index.yaml | 0 .../questions/how.yaml | 0 .../questions/index.yaml | 0 .../questions/received.yaml | 0 .../portal-portal => portal-portal}/site.yaml | 0 .../construction/needs.yaml | 0 .../software-studio/needs.yaml | 0 {vendor/trainer/skill => skill}/SKILL.md | 0 src/lib.rs | 7 + {vendor/lint/src => src/lint}/check.rs | 20 +- {vendor/lint/src => src/lint}/local.rs | 12 +- vendor/lint/src/main.rs => src/lint/mod.rs | 7 +- {vendor/lint/src => src/lint}/needs.rs | 8 +- {vendor/lint/src => src/lint}/replay.rs | 10 +- src/main.rs | 25 + {vendor/trainer/src => src/trainer}/build.rs | 4 +- {vendor/trainer/src => src/trainer}/card.rs | 0 .../trainer/src/main.rs => src/trainer/mod.rs | 16 +- {vendor/trainer/src => src/trainer}/plan.rs | 8 +- {vendor/trainer/src => src/trainer}/rate.rs | 4 +- .../generator => src/trainer}/reference.md | 0 {vendor/trainer/src => src/trainer}/report.rs | 0 {vendor/trainer/src => src/trainer}/score.rs | 4 +- .../trainer/src => src/trainer}/simulate.rs | 2 +- vendor/lint/.gitea/workflows/publish.yml | 46 - vendor/lint/.gitea/workflows/test.yml | 37 - vendor/lint/.gitignore | 1 - vendor/lint/Cargo.lock | 5991 ----------------- vendor/lint/Cargo.toml | 25 - vendor/lint/README.md | 57 - vendor/trainer/.gitea/workflows/test.yml | 44 - vendor/trainer/.gitignore | 2 - vendor/trainer/Cargo.lock | 163 - vendor/trainer/Cargo.toml | 14 - .../generated/aggregates.yaml | 43 - .../generated/answers-skim.jsonl | 10 - .../generated/answers.jsonl | 10 - .../generated/needs.yaml | 124 - .../questions/applicants/thanks.yaml | 9 - .../generated/questions/desk/_section.yaml | 1 - .../generated/questions/desk/index.yaml | 58 - .../questions/desk/phone-enquiry-logged.yaml | 9 - .../questions/desk/phone-enquiry.yaml | 20 - .../generated/questions/enquiries/thanks.yaml | 11 - .../generated/questions/index.yaml | 85 - .../generated/questions/safety/_section.yaml | 1 - .../generated/questions/safety/index.yaml | 16 - .../questions/site-issues/thanks.yaml | 9 - .../questions/subcontractors/thanks.yaml | 10 - .../contractor-2026-09-21/generated/run.log | 3 - .../contractor-2026-09-21/generated/site.yaml | 2 - .../generated/tasks-skim.jsonl | 10 - .../generated/tasks.jsonl | 10 - .../runs/contractor-2026-09-21/generator.log | 4 - .../heldout-qwen3-8b/ho-ans-full.jsonl | 10 - .../heldout-qwen3-8b/ho-ans-skim.jsonl | 10 - .../heldout-qwen3-8b/ho-full.jsonl | 10 - .../heldout-qwen3-8b/ho-skim.jsonl | 10 - .../rating/model-official-voice-control.json | 720 -- .../rating/model-says-who-reads-it.json | 720 -- .../rating/rate-generated.json | 77 - .../rating/rate-says-who-reads-it.json | 77 - .../simulation/README.md | 44 - .../simulation/a-open-quoted/cases.jsonl | 30 - .../simulation/a-open-quoted/model.json | 706 -- .../simulation/a-open-quoted/score.json | 409 -- .../simulation/b-with-surveyed/cases.jsonl | 30 - .../simulation/b-with-surveyed/model.json | 720 -- .../simulation/b-with-surveyed/score.json | 465 -- .../score-after-prompt-change.json | 93 - .../score-before-prompt-change.json | 98 - .../contractor-build-2026-09-21/a-full.jsonl | 8 - .../contractor-build-2026-09-21/a-skim.jsonl | 8 - .../aggregates.yaml | 75 - .../contractor-build-2026-09-21/needs.yaml | 149 - .../questions/crew/_section.yaml | 1 - .../questions/crew/index.yaml | 11 - .../crew/report-site-issue-sent.yaml | 10 - .../questions/crew/report-site-issue.yaml | 30 - .../questions/index.yaml | 123 - .../questions/project_managers/_section.yaml | 1 - .../questions/project_managers/index.yaml | 98 - .../log-phone-enquiry-sent.yaml | 10 - .../project_managers/log-phone-enquiry.yaml | 28 - .../questions/received/build-enquiry.yaml | 10 - .../questions/received/job-application.yaml | 10 - .../received/subcontractor-application.yaml | 10 - .../questions/received/survey-enquiry.yaml | 10 - .../questions/safety_officer/_section.yaml | 1 - .../questions/safety_officer/index.yaml | 26 - .../contractor-build-2026-09-21/rate.json | 77 - .../rescore-2026-09-22/README.md | 45 - .../rescore-2026-09-22/answers-full.jsonl | 8 - .../rescore-2026-09-22/answers-skim.jsonl | 8 - .../rescore-2026-09-22/rate.json | 102 - .../runs/contractor-build-2026-09-21/run.log | 22 - .../contractor-build-2026-09-21/site.yaml | 2 - .../runs/contractor-full-2026-09-21/README.md | 44 - .../contractor-full-2026-09-21/routes.jsonl | 40 - .../runs/contractor-full-2026-09-22/README.md | 43 - .../aggregates.yaml | 186 - .../answers-full.jsonl | 22 - .../answers-skim.jsonl | 22 - .../runs/contractor-full-2026-09-22/build.log | 46 - ...stions_clients_change-request-sent.yaml.md | 54 - ...2-questions_clients_change-request.yaml.md | 68 - .../llm/03-questions_clients_index.yaml.md | 205 - .../llm/04-questions_crew_index.yaml.md | 92 - ...uestions_crew_order-materials-sent.yaml.md | 54 - .../06-questions_crew_order-materials.yaml.md | 66 - ...stions_crew_report-site-issue-sent.yaml.md | 54 - ...8-questions_crew_report-site-issue.yaml.md | 66 - ...09-questions_decide_change-request.yaml.md | 72 - .../llm/10-questions_index.yaml.md | 98 - ...1-questions_project_managers_index.yaml.md | 246 - ...ct_managers_log-phone-enquiry-sent.yaml.md | 54 - ...project_managers_log-phone-enquiry.yaml.md | 68 - ...ect_managers_post-job-request-sent.yaml.md | 54 - ..._project_managers_post-job-request.yaml.md | 68 - ...6-questions_received_build-enquiry.yaml.md | 54 - ...questions_received_job-application.yaml.md | 54 - ...tions_received_neighbour-complaint.yaml.md | 54 - ...received_subcontractor-application.yaml.md | 54 - ...-questions_received_survey-enquiry.yaml.md | 54 - ...-questions_received_warranty-claim.yaml.md | 54 - .../22-questions_safety_officer_index.yaml.md | 84 - ..._officer_safety-round-finding-sent.yaml.md | 54 - ...afety_officer_safety-round-finding.yaml.md | 66 - .../25-questions_site_managers_index.yaml.md | 181 - .../26-questions_subcontractors_index.yaml.md | 86 - ...ons_subcontractors_submit-bid-sent.yaml.md | 54 - ...uestions_subcontractors_submit-bid.yaml.md | 66 - .../29-questions_work-with-us_index.yaml.md | 104 - .../30-questions_your-building_index.yaml.md | 130 - .../contractor-full-2026-09-22/model.json | 1600 ----- .../contractor-full-2026-09-22/needs.yaml | 330 - .../questions/clients/_section.yaml | 1 - .../clients/change-request-sent.yaml | 10 - .../questions/clients/change-request.yaml | 29 - .../questions/clients/index.yaml | 11 - .../questions/crew/_section.yaml | 1 - .../questions/crew/index.yaml | 33 - .../questions/crew/order-materials-sent.yaml | 10 - .../questions/crew/order-materials.yaml | 25 - .../crew/report-site-issue-sent.yaml | 10 - .../questions/crew/report-site-issue.yaml | 30 - .../questions/decide/change-request.yaml | 15 - .../questions/index.yaml | 34 - .../questions/project_managers/_section.yaml | 1 - .../questions/project_managers/index.yaml | 238 - .../log-phone-enquiry-sent.yaml | 10 - .../project_managers/log-phone-enquiry.yaml | 28 - .../post-job-request-sent.yaml | 10 - .../project_managers/post-job-request.yaml | 34 - .../questions/received/build-enquiry.yaml | 10 - .../questions/received/job-application.yaml | 10 - .../received/neighbour-complaint.yaml | 10 - .../received/subcontractor-application.yaml | 10 - .../questions/received/survey-enquiry.yaml | 10 - .../questions/received/warranty-claim.yaml | 10 - .../questions/safety_officer/_section.yaml | 1 - .../questions/safety_officer/index.yaml | 31 - .../safety-round-finding-sent.yaml | 10 - .../safety_officer/safety-round-finding.yaml | 30 - .../questions/site_managers/_section.yaml | 1 - .../questions/site_managers/index.yaml | 162 - .../questions/subcontractors/_section.yaml | 1 - .../questions/subcontractors/index.yaml | 25 - .../subcontractors/submit-bid-sent.yaml | 10 - .../questions/subcontractors/submit-bid.yaml | 25 - .../questions/work-with-us/index.yaml | 70 - .../questions/your-building/index.yaml | 84 - .../runs/contractor-full-2026-09-22/rate.json | 427 -- .../runs/contractor-full-2026-09-22/rate.txt | 19 - .../contractor-full-2026-09-22/score-full.txt | 5 - .../contractor-full-2026-09-22/score-skim.txt | 8 - .../runs/contractor-full-2026-09-22/site.yaml | 2 - .../tasks-full.jsonl | 22 - .../tasks-skim.jsonl | 22 - .../runs/contractor-plan-2026-09-22/README.md | 41 - .../runs/contractor-plan-2026-09-22/plan.yaml | 144 - .../runs/contractor-plan-2026-09-22/reply.md | 101 - .../contractor-planned-2026-09-24/README.md | 46 - .../answers-full-seed0.jsonl | 8 - .../answers-full-seed1.jsonl | 8 - .../answers-full-seed2.jsonl | 8 - .../llm/01-prompt.md | 158 - .../llm/01-reply.md | 104 - .../contractor-planned-2026-09-24/model.json | 660 -- .../contractor-planned-2026-09-24/plan.yaml | 145 - .../r2/llm/01-prompt.md | 168 - .../r2/llm/01-reply.md | 112 - .../r2/llm/02-prompt.md | 288 - .../r2/llm/02-reply.md | 112 - .../r2/model.json | 675 -- .../r2/plan.yaml | 153 - .../r2/rated/rate.json | 192 - .../r2/site/aggregates.yaml | 127 - .../r2/site/llm/01-aggregates.yaml.md | 128 - .../site/llm/02-questions_crew_index.yaml.md | 94 - ...stions_crew_report-site-issue-sent.yaml.md | 48 - ...4-questions_crew_report-site-issue.yaml.md | 88 - ...s_decide_subcontractor-application.yaml.md | 56 - .../r2/site/llm/06-questions_index.yaml.md | 318 - ...7-questions_project_managers_index.yaml.md | 160 - ...uestions_received_building-problem.yaml.md | 48 - ...questions_received_job-application.yaml.md | 48 - ...estions_received_new-build-project.yaml.md | 48 - ...received_subcontractor-application.yaml.md | 46 - .../12-questions_safety_officer_index.yaml.md | 100 - .../r2/site/needs.yaml | 166 - .../r2/site/questions/crew/_section.yaml | 1 - .../r2/site/questions/crew/index.yaml | 44 - .../crew/report-site-issue-sent.yaml | 10 - .../questions/crew/report-site-issue.yaml | 43 - .../decide/subcontractor-application.yaml | 9 - .../r2/site/questions/index.yaml | 173 - .../questions/project_managers/_section.yaml | 1 - .../questions/project_managers/index.yaml | 141 - .../questions/received/building-problem.yaml | 10 - .../questions/received/job-application.yaml | 10 - .../questions/received/new-build-project.yaml | 10 - .../received/subcontractor-application.yaml | 10 - .../questions/safety_officer/_section.yaml | 1 - .../site/questions/safety_officer/index.yaml | 59 - .../r2/site/site.yaml | 5 - .../r2/site/words.json | 391 -- .../r3/llm/01-prompt.md | 168 - .../r3/llm/01-reply.md | 103 - .../r3/llm/02-prompt.md | 279 - .../r3/llm/02-reply.md | 103 - .../r3/llm/03-prompt.md | 280 - .../r3/llm/03-reply.md | 105 - .../r3/plan.yaml | 146 - .../r3/site/aggregates.yaml | 178 - .../r3/site/needs.yaml | 138 - .../r3/site/questions/crew/_section.yaml | 1 - .../r3/site/questions/crew/index.yaml | 44 - .../site/questions/crew/site-report-sent.yaml | 10 - .../r3/site/questions/crew/site-report.yaml | 35 - .../r3/site/questions/decide/enquiry.yaml | 9 - .../decide/subcontractor-application.yaml | 9 - .../r3/site/questions/index.yaml | 24 - .../r3/site/questions/join/index.yaml | 71 - .../questions/project_managers/_section.yaml | 1 - .../questions/project_managers/index.yaml | 126 - .../r3/site/questions/received/enquiry.yaml | 10 - .../questions/received/job-application.yaml | 10 - .../received/subcontractor-application.yaml | 10 - .../questions/safety_officer/_section.yaml | 1 - .../site/questions/safety_officer/index.yaml | 59 - .../r3/site/questions/work/index.yaml | 33 - .../r3/site/site.yaml | 5 - .../r3/site/words.json | 391 -- .../rated/rate.json | 189 - .../site/aggregates.yaml | 137 - .../site/llm/01-aggregates.yaml.md | 152 - .../site/llm/02-questions_crew_index.yaml.md | 94 - ...03-questions_crew_site-report-sent.yaml.md | 46 - .../llm/04-questions_crew_site-report.yaml.md | 88 - .../site/llm/05-questions_index.yaml.md | 314 - ...6-questions_project_managers_index.yaml.md | 168 - ...uestions_received_building-problem.yaml.md | 48 - ...questions_received_job-application.yaml.md | 48 - ...9-questions_received_known-project.yaml.md | 46 - ...received_subcontractor-application.yaml.md | 48 - .../11-questions_safety_officer_index.yaml.md | 98 - .../site/needs.yaml | 142 - .../site/questions/crew/_section.yaml | 1 - .../site/questions/crew/index.yaml | 44 - .../site/questions/crew/site-report-sent.yaml | 10 - .../site/questions/crew/site-report.yaml | 42 - .../site/questions/index.yaml | 170 - .../questions/project_managers/_section.yaml | 1 - .../questions/project_managers/index.yaml | 153 - .../questions/received/building-problem.yaml | 10 - .../questions/received/job-application.yaml | 10 - .../questions/received/known-project.yaml | 10 - .../received/subcontractor-application.yaml | 10 - .../questions/safety_officer/_section.yaml | 1 - .../site/questions/safety_officer/index.yaml | 56 - .../site/site.yaml | 5 - .../site/words.json | 393 -- .../contractor-planned-2026-09-24/spread.sh | 19 - .../tasks-full.jsonl | 8 - .../runs/fotballklubb-2026-09-22/README.md | 31 - .../fotballklubb-2026-09-22/aggregates.yaml | 87 - .../answers-full.jsonl | 16 - .../answers-skim.jsonl | 16 - .../runs/fotballklubb-2026-09-22/build.log | 20 - .../llm/01-questions_bidra_index.yaml.md | 90 - .../llm/02-questions_foresatte_index.yaml.md | 96 - .../llm/03-questions_index.yaml.md | 66 - .../llm/04-questions_kasserer_index.yaml.md | 62 - .../05-questions_received_avgiftssak.yaml.md | 46 - .../06-questions_received_frivillig.yaml.md | 46 - .../07-questions_received_innmelding.yaml.md | 46 - .../llm/08-questions_received_sponsor.yaml.md | 46 - .../llm/09-questions_styret_index.yaml.md | 124 - ...questions_trenere_baneproblem-sent.yaml.md | 46 - .../11-questions_trenere_baneproblem.yaml.md | 56 - .../llm/12-questions_trenere_index.yaml.md | 78 - .../runs/fotballklubb-2026-09-22/model.json | 664 -- .../runs/fotballklubb-2026-09-22/needs.yaml | 125 - .../questions/bidra/index.yaml | 52 - .../questions/foresatte/index.yaml | 68 - .../questions/index.yaml | 16 - .../questions/kasserer/_section.yaml | 1 - .../questions/kasserer/index.yaml | 23 - .../questions/received/avgiftssak.yaml | 10 - .../questions/received/frivillig.yaml | 10 - .../questions/received/innmelding.yaml | 10 - .../questions/received/sponsor.yaml | 10 - .../questions/styret/_section.yaml | 1 - .../questions/styret/index.yaml | 104 - .../questions/trenere/_section.yaml | 1 - .../questions/trenere/baneproblem-sent.yaml | 10 - .../questions/trenere/baneproblem.yaml | 22 - .../questions/trenere/index.yaml | 34 - .../runs/fotballklubb-2026-09-22/rate.json | 207 - .../runs/fotballklubb-2026-09-22/rate.txt | 10 - .../fotballklubb-2026-09-22/score-full.txt | 3 - .../fotballklubb-2026-09-22/score-skim.txt | 6 - .../runs/fotballklubb-2026-09-22/site.yaml | 2 - .../fotballklubb-2026-09-22/tasks-full.jsonl | 16 - .../fotballklubb-2026-09-22/tasks-skim.jsonl | 16 - .../runs/fotballklubb-2026-09-24/README.md | 36 - .../answers-full-seed0.jsonl | 16 - .../answers-full-seed1.jsonl | 16 - .../answers-full-seed2.jsonl | 16 - .../runs/fotballklubb-2026-09-24/model.json | 702 -- .../fotballklubb-2026-09-24/rated/rate.json | 259 - .../site/aggregates.yaml | 99 - .../fotballklubb-2026-09-24/site/needs.yaml | 149 - .../site/questions/bidra/index.yaml | 78 - .../site/questions/foresatte/index.yaml | 97 - .../site/questions/index.yaml | 33 - .../site/questions/kasserer/_section.yaml | 1 - .../site/questions/kasserer/index.yaml | 56 - .../site/questions/received/avgiftssak.yaml | 10 - .../site/questions/received/frivillig.yaml | 10 - .../site/questions/received/innmelding.yaml | 10 - .../site/questions/received/sponsor.yaml | 10 - .../site/questions/styret/_section.yaml | 1 - .../site/questions/styret/index.yaml | 137 - .../site/questions/trenere/_section.yaml | 1 - .../questions/trenere/baneproblem-sent.yaml | 10 - .../site/questions/trenere/baneproblem.yaml | 34 - .../site/questions/trenere/index.yaml | 67 - .../fotballklubb-2026-09-24/site/site.yaml | 5 - .../fotballklubb-2026-09-24/site/words.json | 377 -- .../runs/fotballklubb-2026-09-24/spread.sh | 19 - .../fotballklubb-2026-09-24/tasks-full.jsonl | 16 - .../fotballklubb-2026-09-24/words-short.json | 377 -- .../fotballklubb-claude-2026-09-22/README.md | 35 - .../aggregates.yaml | 87 - .../answers-full.jsonl | 16 - .../answers-skim.jsonl | 16 - .../fotballklubb-claude-2026-09-22/build.log | 20 - .../llm/01-questions_bidra_index.yaml.md | 92 - .../llm/02-questions_foresatte_index.yaml.md | 98 - .../llm/03-questions_index.yaml.md | 66 - .../llm/04-questions_kasserer_index.yaml.md | 62 - .../05-questions_received_avgiftssak.yaml.md | 46 - .../06-questions_received_frivillig.yaml.md | 46 - .../07-questions_received_innmelding.yaml.md | 48 - .../llm/08-questions_received_sponsor.yaml.md | 48 - .../llm/09-questions_styret_index.yaml.md | 126 - ...questions_trenere_baneproblem-sent.yaml.md | 46 - .../11-questions_trenere_baneproblem.yaml.md | 56 - .../llm/12-questions_trenere_index.yaml.md | 80 - .../fotballklubb-claude-2026-09-22/model.json | 664 -- .../fotballklubb-claude-2026-09-22/needs.yaml | 125 - .../questions/bidra/index.yaml | 52 - .../questions/foresatte/index.yaml | 68 - .../questions/index.yaml | 16 - .../questions/kasserer/_section.yaml | 1 - .../questions/kasserer/index.yaml | 23 - .../questions/received/avgiftssak.yaml | 10 - .../questions/received/frivillig.yaml | 10 - .../questions/received/innmelding.yaml | 10 - .../questions/received/sponsor.yaml | 10 - .../questions/styret/_section.yaml | 1 - .../questions/styret/index.yaml | 104 - .../questions/trenere/_section.yaml | 1 - .../questions/trenere/baneproblem-sent.yaml | 10 - .../questions/trenere/baneproblem.yaml | 22 - .../questions/trenere/index.yaml | 34 - .../fotballklubb-claude-2026-09-22/rate.json | 207 - .../fotballklubb-claude-2026-09-22/rate.txt | 10 - .../score-full.txt | 4 - .../score-skim.txt | 5 - .../fotballklubb-claude-2026-09-22/site.yaml | 2 - .../tasks-full.jsonl | 16 - .../tasks-skim.jsonl | 16 - vendor/trainer/runs/hire-2026-09-22/README.md | 22 - .../runs/hire-2026-09-22/aggregates.yaml | 69 - .../runs/hire-2026-09-22/answers-full.jsonl | 10 - .../runs/hire-2026-09-22/answers-skim.jsonl | 10 - vendor/trainer/runs/hire-2026-09-22/build.log | 18 - .../llm/01-questions_counter_index.yaml.md | 67 - .../llm/02-questions_firms_index.yaml.md | 69 - .../llm/03-questions_hiring_index.yaml.md | 95 - .../llm/04-questions_index.yaml.md | 65 - .../llm/05-questions_office_index.yaml.md | 83 - ...questions_received_account-request.yaml.md | 45 - .../07-questions_received_breakdown.yaml.md | 45 - ...08-questions_received_hire-request.yaml.md | 45 - ...estions_yard_damage-on-return-sent.yaml.md | 45 - ...10-questions_yard_damage-on-return.yaml.md | 57 - .../llm/11-questions_yard_index.yaml.md | 91 - .../trainer/runs/hire-2026-09-22/model.json | 527 -- .../trainer/runs/hire-2026-09-22/needs.yaml | 100 - .../questions/counter/_section.yaml | 1 - .../questions/counter/index.yaml | 32 - .../questions/firms/index.yaml | 31 - .../questions/hiring/index.yaml | 56 - .../runs/hire-2026-09-22/questions/index.yaml | 16 - .../questions/office/_section.yaml | 1 - .../questions/office/index.yaml | 52 - .../questions/received/account-request.yaml | 10 - .../questions/received/breakdown.yaml | 10 - .../questions/received/hire-request.yaml | 10 - .../questions/yard/_section.yaml | 1 - .../questions/yard/damage-on-return-sent.yaml | 10 - .../questions/yard/damage-on-return.yaml | 25 - .../hire-2026-09-22/questions/yard/index.yaml | 51 - vendor/trainer/runs/hire-2026-09-22/rate.json | 162 - vendor/trainer/runs/hire-2026-09-22/rate.txt | 8 - .../runs/hire-2026-09-22/score-full.txt | 1 - .../runs/hire-2026-09-22/score-skim.txt | 1 - vendor/trainer/runs/hire-2026-09-22/site.yaml | 2 - .../runs/hire-2026-09-22/tasks-full.jsonl | 10 - .../runs/hire-2026-09-22/tasks-skim.jsonl | 10 - .../trainer/runs/permits-2026-09-25/README.md | 240 - .../runs/permits-2026-09-25/aggregates.yaml | 653 -- .../answers-full-seed1.jsonl | 25 - .../answers-full-seed2.jsonl | 25 - .../answers-full-seed3.jsonl | 25 - .../runs/permits-2026-09-25/cases.jsonl | 15 - .../permits-2026-09-25/fixed/aggregates.yaml | 653 -- .../runs/permits-2026-09-25/fixed/needs.yaml | 430 -- .../fixed/questions/agencies/_section.yaml | 1 - .../agencies/hearing-answer-sent.yaml | 10 - .../questions/agencies/hearing-answer.yaml | 46 - .../fixed/questions/agencies/index.yaml | 78 - .../questions/appeals_board/_section.yaml | 1 - .../fixed/questions/appeals_board/index.yaml | 65 - .../questions/approved_firms/_section.yaml | 1 - .../fixed/questions/approved_firms/index.yaml | 61 - .../permit-application-sent.yaml | 15 - .../approved_firms/permit-application.yaml | 48 - .../questions/building-near-me/index.yaml | 88 - .../questions/case_officers/_section.yaml | 1 - .../fixed/questions/case_officers/index.yaml | 395 -- .../case_officers/request-hearing-sent.yaml | 10 - .../case_officers/request-hearing.yaml | 43 - .../fixed/questions/decide/appeal.yaml | 9 - .../questions/decide/exemption-request.yaml | 9 - .../fixed/questions/decide/firm-approval.yaml | 9 - .../fixed/questions/decide/objection.yaml | 9 - .../questions/decide/permit-application.yaml | 15 - .../decide/pre-application-meeting.yaml | 9 - .../decide/small-works-application.yaml | 15 - .../fixed/questions/front_desk/_section.yaml | 1 - .../fixed/questions/front_desk/index.yaml | 157 - .../front_desk/log-counter-enquiry-sent.yaml | 10 - .../front_desk/log-counter-enquiry.yaml | 31 - .../fixed/questions/index.yaml | 127 - .../fixed/questions/inspectors/_section.yaml | 1 - .../fixed/questions/inspectors/index.yaml | 118 - .../inspectors/inspection-finding-sent.yaml | 10 - .../inspectors/inspection-finding.yaml | 35 - .../fixed/questions/received/appeal.yaml | 15 - .../received/case-status-enquiry.yaml | 10 - .../received/completion-request.yaml | 15 - .../questions/received/exemption-request.yaml | 15 - .../questions/received/firm-approval.yaml | 10 - .../received/illegal-building-report.yaml | 10 - .../fixed/questions/received/objection.yaml | 15 - .../received/pre-application-meeting.yaml | 10 - .../received/small-works-application.yaml | 15 - .../questions/section_head/_section.yaml | 1 - .../fixed/questions/section_head/index.yaml | 356 - .../fixed/questions/status/appeals/index.yaml | 22 - .../questions/status/applications/index.yaml | 22 - .../questions/status/completions/index.yaml | 22 - .../questions/status/exemptions/index.yaml | 22 - .../questions/status/objections/index.yaml | 22 - .../fixed/questions/want-to-build/index.yaml | 156 - .../runs/permits-2026-09-25/fixed/site.yaml | 5 - .../runs/permits-2026-09-25/needs.yaml | 499 -- .../questions/agencies/_section.yaml | 1 - .../agencies/hearing-answer-sent.yaml | 10 - .../questions/agencies/hearing-answer.yaml | 46 - .../questions/agencies/index.yaml | 78 - .../questions/appeals_board/_section.yaml | 1 - .../questions/appeals_board/index.yaml | 59 - .../questions/approved_firms/_section.yaml | 1 - .../questions/approved_firms/index.yaml | 61 - .../permit-application-sent.yaml | 15 - .../approved_firms/permit-application.yaml | 48 - .../questions/building-near-me/index.yaml | 88 - .../questions/case_officers/_section.yaml | 1 - .../questions/case_officers/index.yaml | 401 -- .../case_officers/request-hearing-sent.yaml | 10 - .../case_officers/request-hearing.yaml | 43 - .../questions/decide/appeal.yaml | 13 - .../questions/decide/exemption-request.yaml | 14 - .../questions/decide/firm-approval.yaml | 12 - .../questions/decide/objection.yaml | 13 - .../questions/decide/permit-application.yaml | 24 - .../decide/pre-application-meeting.yaml | 13 - .../decide/small-works-application.yaml | 24 - .../questions/front_desk/_section.yaml | 1 - .../questions/front_desk/index.yaml | 157 - .../front_desk/log-counter-enquiry-sent.yaml | 10 - .../front_desk/log-counter-enquiry.yaml | 31 - .../permits-2026-09-25/questions/index.yaml | 127 - .../questions/inspectors/_section.yaml | 1 - .../questions/inspectors/index.yaml | 118 - .../inspectors/inspection-finding-sent.yaml | 10 - .../inspectors/inspection-finding.yaml | 35 - .../questions/received/appeal.yaml | 15 - .../received/case-status-enquiry.yaml | 10 - .../received/completion-request.yaml | 15 - .../questions/received/exemption-request.yaml | 15 - .../questions/received/firm-approval.yaml | 10 - .../received/illegal-building-report.yaml | 10 - .../questions/received/objection.yaml | 15 - .../received/pre-application-meeting.yaml | 10 - .../received/small-works-application.yaml | 15 - .../questions/section_head/_section.yaml | 1 - .../questions/section_head/index.yaml | 350 - .../questions/status/appeals/index.yaml | 22 - .../questions/status/applications/index.yaml | 22 - .../questions/status/completions/index.yaml | 22 - .../questions/status/exemptions/index.yaml | 22 - .../questions/status/objections/index.yaml | 22 - .../questions/want-to-build/index.yaml | 156 - .../trainer/runs/permits-2026-09-25/site.yaml | 5 - .../runs/permits-2026-09-25/tasks-full.jsonl | 25 - .../runs/permits-2026-09-25/words.json | 1681 ----- .../permits-doors-2026-09-25/aggregates.yaml | 653 -- .../answers-full-seed1.jsonl | 25 - .../answers-full-seed2.jsonl | 25 - .../answers-full-seed3.jsonl | 25 - .../runs/permits-doors-2026-09-25/needs.yaml | 499 -- .../questions/after-a-decision/index.yaml | 43 - .../questions/agencies/_section.yaml | 1 - .../agencies/hearing-answer-sent.yaml | 10 - .../questions/agencies/hearing-answer.yaml | 46 - .../questions/agencies/index.yaml | 78 - .../questions/appeals_board/_section.yaml | 1 - .../questions/appeals_board/index.yaml | 59 - .../questions/approved_firms/_section.yaml | 1 - .../questions/approved_firms/index.yaml | 61 - .../permit-application-sent.yaml | 15 - .../approved_firms/permit-application.yaml | 48 - .../questions/building-near-me/index.yaml | 88 - .../questions/case_officers/_section.yaml | 1 - .../questions/case_officers/index.yaml | 401 -- .../case_officers/request-hearing-sent.yaml | 10 - .../case_officers/request-hearing.yaml | 43 - .../questions/decide/appeal.yaml | 9 - .../questions/decide/exemption-request.yaml | 9 - .../questions/decide/firm-approval.yaml | 9 - .../questions/decide/objection.yaml | 9 - .../questions/decide/permit-application.yaml | 15 - .../decide/pre-application-meeting.yaml | 9 - .../decide/small-works-application.yaml | 15 - .../questions/front_desk/_section.yaml | 1 - .../questions/front_desk/index.yaml | 157 - .../front_desk/log-counter-enquiry-sent.yaml | 10 - .../front_desk/log-counter-enquiry.yaml | 31 - .../questions/index.yaml | 66 - .../questions/inspectors/_section.yaml | 1 - .../questions/inspectors/index.yaml | 118 - .../inspectors/inspection-finding-sent.yaml | 10 - .../inspectors/inspection-finding.yaml | 35 - .../questions/received/appeal.yaml | 15 - .../received/case-status-enquiry.yaml | 10 - .../received/completion-request.yaml | 15 - .../questions/received/exemption-request.yaml | 15 - .../questions/received/firm-approval.yaml | 10 - .../received/illegal-building-report.yaml | 10 - .../questions/received/objection.yaml | 15 - .../received/pre-application-meeting.yaml | 10 - .../received/small-works-application.yaml | 15 - .../questions/section_head/_section.yaml | 1 - .../questions/section_head/index.yaml | 350 - .../questions/status/appeals/index.yaml | 22 - .../questions/status/applications/index.yaml | 22 - .../questions/status/completions/index.yaml | 22 - .../questions/status/exemptions/index.yaml | 22 - .../questions/status/objections/index.yaml | 22 - .../questions/want-to-build/index.yaml | 156 - .../questions/work-as-a-firm/index.yaml | 46 - .../runs/permits-doors-2026-09-25/site.yaml | 5 - .../permits-doors-2026-09-25/tasks-full.jsonl | 25 - .../runs/permits-doors-2026-09-25/words.json | 1708 ----- .../runs/permits-plan-2026-09-30/README.md | 43 - .../permits-plan-2026-09-30/llm/01-prompt.md | 289 - .../permits-plan-2026-09-30/llm/01-reply.md | 423 -- .../permits-plan-2026-09-30/llm/02-prompt.md | 721 -- .../permits-plan-2026-09-30/llm/02-reply.md | 418 -- .../permits-plan-2026-09-30/llm/03-prompt.md | 716 -- .../permits-plan-2026-09-30/llm/03-reply.md | 477 -- .../runs/permits-plan-2026-09-30/plan.yaml | 549 -- .../site/aggregates.yaml | 611 -- .../permits-plan-2026-09-30/site/needs.yaml | 504 -- .../site/questions/agencies/_section.yaml | 1 - .../site/questions/agencies/index.yaml | 62 - .../questions/appeals_board/_section.yaml | 1 - .../site/questions/appeals_board/index.yaml | 65 - .../questions/approved_firms/_section.yaml | 1 - .../completion-certificate-sent.yaml | 5 - .../completion-certificate.yaml | 47 - .../approved_firms/firm-application-sent.yaml | 10 - .../approved_firms/firm-application.yaml | 73 - .../site/questions/approved_firms/index.yaml | 55 - .../temporary-permission-sent.yaml | 5 - .../approved_firms/temporary-permission.yaml | 46 - .../site/questions/build/index.yaml | 99 - .../questions/case_officers/_section.yaml | 1 - .../case_officers/hearing-request-sent.yaml | 5 - .../case_officers/hearing-request.yaml | 40 - .../site/questions/case_officers/index.yaml | 368 - .../site/questions/decide/application.yaml | 26 - .../questions/decide/firm-application.yaml | 26 - .../decide/pre-application-meeting.yaml | 12 - .../site/questions/firm/index.yaml | 67 - .../site/questions/front_desk/_section.yaml | 1 - .../site/questions/front_desk/index.yaml | 215 - .../front_desk/logged-objection-sent.yaml | 5 - .../front_desk/logged-objection.yaml | 43 - .../front_desk/logged-report-sent.yaml | 5 - .../questions/front_desk/logged-report.yaml | 41 - .../questions/head_of_section/_section.yaml | 1 - .../site/questions/head_of_section/index.yaml | 364 - .../site/questions/index.yaml | 104 - .../site/questions/inspectors/_section.yaml | 1 - .../site/questions/inspectors/index.yaml | 132 - .../questions/inspectors/inspection-sent.yaml | 5 - .../site/questions/inspectors/inspection.yaml | 43 - .../site/questions/received/appeal.yaml | 5 - .../site/questions/received/application.yaml | 10 - .../site/questions/received/exemption.yaml | 5 - .../questions/received/firm-approval.yaml | 10 - .../received/illegal-building-report.yaml | 5 - .../site/questions/received/objection.yaml | 5 - .../received/pre-application-meeting.yaml | 5 - .../questions/status/applications/[key].yaml | 126 - .../questions/status/applications/index.yaml | 32 - .../status/approved_firm_requests/index.yaml | 20 - .../permits-plan-2026-09-30/site/site.yaml | 16 - .../permits-plan-2026-09-30/site/words.json | 1697 ----- .../trainer/runs/physio-2026-09-22/README.md | 27 - .../runs/physio-2026-09-22/aggregates.yaml | 91 - .../runs/physio-2026-09-22/answers-full.jsonl | 10 - .../runs/physio-2026-09-22/answers-skim.jsonl | 10 - .../trainer/runs/physio-2026-09-22/build.log | 20 - .../llm/01-questions_index.yaml.md | 66 - .../llm/02-questions_patients_index.yaml.md | 94 - ...-questions_received_move-or-cancel.yaml.md | 46 - .../04-questions_received_new-patient.yaml.md | 46 - .../05-questions_received_referral.yaml.md | 46 - .../llm/06-questions_reception_index.yaml.md | 158 - ..._reception_insurance-approval-sent.yaml.md | 46 - ...tions_reception_insurance-approval.yaml.md | 60 - .../llm/09-questions_referrers_index.yaml.md | 70 - .../llm/10-questions_therapists_index.yaml.md | 74 - ...-questions_therapists_no-show-sent.yaml.md | 46 - .../12-questions_therapists_no-show.yaml.md | 58 - .../trainer/runs/physio-2026-09-22/model.json | 652 -- .../trainer/runs/physio-2026-09-22/needs.yaml | 125 - .../physio-2026-09-22/questions/index.yaml | 16 - .../questions/patients/index.yaml | 60 - .../questions/received/move-or-cancel.yaml | 10 - .../questions/received/new-patient.yaml | 10 - .../questions/received/referral.yaml | 10 - .../questions/reception/_section.yaml | 1 - .../questions/reception/index.yaml | 138 - .../reception/insurance-approval-sent.yaml | 10 - .../reception/insurance-approval.yaml | 29 - .../questions/referrers/index.yaml | 34 - .../questions/therapists/_section.yaml | 1 - .../questions/therapists/index.yaml | 28 - .../questions/therapists/no-show-sent.yaml | 10 - .../questions/therapists/no-show.yaml | 26 - .../trainer/runs/physio-2026-09-22/rate.json | 187 - .../trainer/runs/physio-2026-09-22/rate.txt | 9 - .../runs/physio-2026-09-22/score-full.txt | 3 - .../runs/physio-2026-09-22/score-skim.txt | 2 - .../trainer/runs/physio-2026-09-22/site.yaml | 2 - .../runs/physio-2026-09-22/tasks-full.jsonl | 10 - .../runs/physio-2026-09-22/tasks-skim.jsonl | 10 - .../rehab-entreprenor-no-2026-09-21/README.md | 30 - .../generator.log | 13 - .../needs.yaml | 82 - .../replies/01-reply.md | 150 - .../replies/02-reply.md | 148 - .../replies/03-reply.md | 331 - .../replies/04-reply.md | 84 - .../replies/05-reply.md | 462 -- .../replies/06-reply.md | 310 - .../replies/07-reply.md | 181 - .../replies/08-reply.md | 93 - .../replies/09-reply.md | 64 - .../replies/10-reply.md | 24 - .../verifier-last.log | 9 - vendor/trainer/runs/spread.sh | 19 - .../runs/tomtervel-cards-2026-09-23/README.md | 50 - .../aggregates.yaml | 162 - .../answers-full.jsonl | 40 - .../answers-skim.jsonl | 40 - .../runs/tomtervel-cards-2026-09-23/build.log | 41 - ...questions_arrangementskomite_index.yaml.md | 80 - .../llm/02-questions_bidra_index.yaml.md | 206 - .../03-questions_decide_dele-utstyr.yaml.md | 66 - .../04-questions_decide_kan-hjelpe.yaml.md | 66 - .../05-questions_decide_trenger-hjelp.yaml.md | 66 - .../llm/06-questions_index.yaml.md | 114 - .../llm/07-questions_kasserer_index.yaml.md | 110 - .../llm/08-questions_komiteer_index.yaml.md | 70 - .../09-questions_komiteer_utlegg-sent.yaml.md | 58 - .../llm/10-questions_komiteer_utlegg.yaml.md | 98 - ...11-questions_lekeplasskomite_index.yaml.md | 76 - .../llm/12-questions_medlem_index.yaml.md | 160 - .../llm/13-questions_melde-fra_index.yaml.md | 152 - .../llm/14-questions_naboer_index.yaml.md | 222 - .../llm/15-questions_nabohjelp_index.yaml.md | 96 - .../16-questions_received_anleggsfeil.yaml.md | 58 - .../17-questions_received_bli-medlem.yaml.md | 58 - .../18-questions_received_dele-utstyr.yaml.md | 58 - ...uestions_received_endre-medlemskap.yaml.md | 50 - .../20-questions_received_hjelpe-til.yaml.md | 56 - ...questions_received_horingsinnspill.yaml.md | 58 - .../22-questions_received_kan-hjelpe.yaml.md | 58 - .../llm/23-questions_received_komite.yaml.md | 58 - .../24-questions_received_trafikkfare.yaml.md | 58 - ...5-questions_received_trenger-hjelp.yaml.md | 58 - .../llm/26-questions_styret_index.yaml.md | 118 - .../27-questions_trafikkomite_index.yaml.md | 80 - .../tomtervel-cards-2026-09-23/model.json | 1467 ---- .../tomtervel-cards-2026-09-23/needs.yaml | 265 - .../arrangementskomite/_section.yaml | 1 - .../questions/arrangementskomite/index.yaml | 32 - .../questions/bidra/index.yaml | 111 - .../questions/decide/dele-utstyr.yaml | 9 - .../questions/decide/kan-hjelpe.yaml | 9 - .../questions/decide/trenger-hjelp.yaml | 9 - .../questions/index.yaml | 42 - .../questions/kasserer/_section.yaml | 1 - .../questions/kasserer/index.yaml | 69 - .../questions/komiteer/_section.yaml | 1 - .../questions/komiteer/index.yaml | 11 - .../questions/komiteer/utlegg-sent.yaml | 10 - .../questions/komiteer/utlegg.yaml | 38 - .../questions/lekeplasskomite/_section.yaml | 1 - .../questions/lekeplasskomite/index.yaml | 26 - .../questions/medlem/index.yaml | 73 - .../questions/melde-fra/index.yaml | 69 - .../questions/naboer/index.yaml | 124 - .../questions/nabohjelp/_section.yaml | 1 - .../questions/nabohjelp/index.yaml | 52 - .../questions/received/anleggsfeil.yaml | 10 - .../questions/received/bli-medlem.yaml | 10 - .../questions/received/dele-utstyr.yaml | 10 - .../questions/received/endre-medlemskap.yaml | 10 - .../questions/received/hjelpe-til.yaml | 10 - .../questions/received/horingsinnspill.yaml | 10 - .../questions/received/kan-hjelpe.yaml | 10 - .../questions/received/komite.yaml | 10 - .../questions/received/trafikkfare.yaml | 10 - .../questions/received/trenger-hjelp.yaml | 10 - .../questions/styret/_section.yaml | 1 - .../questions/styret/index.yaml | 80 - .../questions/trafikkomite/_section.yaml | 1 - .../questions/trafikkomite/index.yaml | 32 - .../runs/tomtervel-cards-2026-09-23/rate.json | 519 -- .../runs/tomtervel-cards-2026-09-23/rate.txt | 22 - .../tomtervel-cards-2026-09-23/score-full.txt | 9 - .../tomtervel-cards-2026-09-23/score-skim.txt | 12 - .../runs/tomtervel-cards-2026-09-23/site.yaml | 2 - .../tasks-full.jsonl | 40 - .../tasks-skim.jsonl | 40 - .../tomtervel-claude-2026-09-22/README.md | 55 - .../aggregates.yaml | 131 - .../answers-full.jsonl | 30 - .../answers-skim.jsonl | 30 - .../tomtervel-claude-2026-09-22/build.log | 33 - ...questions_arrangementskomite_index.yaml.md | 75 - .../llm/02-questions_bidra_index.yaml.md | 117 - .../03-questions_decide_dele-utstyr.yaml.md | 61 - .../llm/04-questions_index.yaml.md | 109 - .../llm/05-questions_kasserer_index.yaml.md | 105 - .../llm/06-questions_komiteer_index.yaml.md | 63 - .../07-questions_komiteer_utlegg-sent.yaml.md | 51 - .../llm/08-questions_komiteer_utlegg.yaml.md | 65 - ...09-questions_lekeplasskomite_index.yaml.md | 71 - .../llm/10-questions_medlem_index.yaml.md | 97 - .../llm/11-questions_melde-fra_index.yaml.md | 93 - .../12-questions_received_anleggsfeil.yaml.md | 53 - .../13-questions_received_bli-medlem.yaml.md | 51 - .../14-questions_received_dele-utstyr.yaml.md | 53 - ...uestions_received_endre-medlemskap.yaml.md | 53 - .../16-questions_received_hjelpe-til.yaml.md | 53 - ...questions_received_horingsinnspill.yaml.md | 45 - .../llm/18-questions_received_komite.yaml.md | 53 - .../19-questions_received_trafikkfare.yaml.md | 53 - .../llm/20-questions_styret_index.yaml.md | 113 - .../21-questions_trafikkomite_index.yaml.md | 73 - .../tomtervel-claude-2026-09-22/model.json | 1144 ---- .../tomtervel-claude-2026-09-22/needs.yaml | 216 - .../arrangementskomite/_section.yaml | 1 - .../questions/arrangementskomite/index.yaml | 32 - .../questions/bidra/index.yaml | 74 - .../questions/decide/dele-utstyr.yaml | 9 - .../questions/index.yaml | 45 - .../questions/kasserer/_section.yaml | 1 - .../questions/kasserer/index.yaml | 69 - .../questions/komiteer/_section.yaml | 1 - .../questions/komiteer/index.yaml | 11 - .../questions/komiteer/utlegg-sent.yaml | 10 - .../questions/komiteer/utlegg.yaml | 25 - .../questions/lekeplasskomite/_section.yaml | 1 - .../questions/lekeplasskomite/index.yaml | 26 - .../questions/medlem/index.yaml | 46 - .../questions/melde-fra/index.yaml | 45 - .../questions/received/anleggsfeil.yaml | 10 - .../questions/received/bli-medlem.yaml | 10 - .../questions/received/dele-utstyr.yaml | 10 - .../questions/received/endre-medlemskap.yaml | 10 - .../questions/received/hjelpe-til.yaml | 10 - .../questions/received/horingsinnspill.yaml | 10 - .../questions/received/komite.yaml | 10 - .../questions/received/trafikkfare.yaml | 10 - .../questions/styret/_section.yaml | 1 - .../questions/styret/index.yaml | 80 - .../questions/trafikkomite/_section.yaml | 1 - .../questions/trafikkomite/index.yaml | 32 - .../tomtervel-claude-2026-09-22/rate.json | 367 - .../runs/tomtervel-claude-2026-09-22/rate.txt | 17 - .../score-full.txt | 6 - .../score-skim.txt | 9 - .../tomtervel-claude-2026-09-22/site.yaml | 2 - .../tasks-full.jsonl | 30 - .../tasks-skim.jsonl | 30 - .../tomtervel-committees-2026-09-23/README.md | 50 - .../aggregates.yaml | 162 - .../answers-full.jsonl | 38 - .../answers-skim.jsonl | 38 - .../tomtervel-committees-2026-09-23/build.log | 45 - .../01-questions_arrangementer_index.yaml.md | 80 - .../llm/02-questions_bidra_index.yaml.md | 156 - .../03-questions_decide_dele-utstyr.yaml.md | 66 - .../04-questions_decide_kan-hjelpe.yaml.md | 66 - .../05-questions_decide_trenger-hjelp.yaml.md | 66 - .../06-questions_horingsinstans_index.yaml.md | 76 - .../llm/07-questions_index.yaml.md | 166 - .../llm/08-questions_kasserer_index.yaml.md | 110 - .../llm/09-questions_komiteer_index.yaml.md | 70 - .../10-questions_komiteer_utlegg-sent.yaml.md | 58 - .../llm/11-questions_komiteer_utlegg.yaml.md | 98 - .../12-questions_lekeplasser_index.yaml.md | 76 - .../llm/13-questions_medlem_index.yaml.md | 160 - .../llm/14-questions_melde-fra_index.yaml.md | 152 - .../llm/15-questions_naboer_index.yaml.md | 222 - .../llm/16-questions_nabohjelp_index.yaml.md | 96 - .../17-questions_received_anleggsfeil.yaml.md | 68 - .../18-questions_received_bli-medlem.yaml.md | 58 - .../19-questions_received_dele-utstyr.yaml.md | 68 - ...uestions_received_endre-medlemskap.yaml.md | 58 - .../21-questions_received_hjelpe-til.yaml.md | 58 - ...questions_received_horingsinnspill.yaml.md | 50 - .../23-questions_received_kan-hjelpe.yaml.md | 58 - .../llm/24-questions_received_komite.yaml.md | 58 - .../25-questions_received_trafikkfare.yaml.md | 68 - ...6-questions_received_trenger-hjelp.yaml.md | 58 - ...questions_status_anleggsfeil_index.yaml.md | 56 - .../28-questions_status_oppslag_index.yaml.md | 58 - ...ions_status_trafikkmeldinger_index.yaml.md | 56 - .../llm/30-questions_styret_index.yaml.md | 112 - .../llm/31-questions_trafikk_index.yaml.md | 80 - .../model.json | 1496 ---- .../needs.yaml | 265 - .../questions/arrangementer/_section.yaml | 1 - .../questions/arrangementer/index.yaml | 32 - .../questions/bidra/index.yaml | 82 - .../questions/decide/dele-utstyr.yaml | 9 - .../questions/decide/kan-hjelpe.yaml | 9 - .../questions/decide/trenger-hjelp.yaml | 9 - .../questions/horingsinstans/_section.yaml | 1 - .../questions/horingsinstans/index.yaml | 26 - .../questions/index.yaml | 73 - .../questions/kasserer/_section.yaml | 1 - .../questions/kasserer/index.yaml | 69 - .../questions/komiteer/_section.yaml | 1 - .../questions/komiteer/index.yaml | 11 - .../questions/komiteer/utlegg-sent.yaml | 10 - .../questions/komiteer/utlegg.yaml | 38 - .../questions/lekeplasser/_section.yaml | 1 - .../questions/lekeplasser/index.yaml | 26 - .../questions/medlem/index.yaml | 73 - .../questions/melde-fra/index.yaml | 69 - .../questions/naboer/index.yaml | 125 - .../questions/nabohjelp/_section.yaml | 1 - .../questions/nabohjelp/index.yaml | 52 - .../questions/received/anleggsfeil.yaml | 15 - .../questions/received/bli-medlem.yaml | 10 - .../questions/received/dele-utstyr.yaml | 15 - .../questions/received/endre-medlemskap.yaml | 10 - .../questions/received/hjelpe-til.yaml | 10 - .../questions/received/horingsinnspill.yaml | 10 - .../questions/received/kan-hjelpe.yaml | 10 - .../questions/received/komite.yaml | 10 - .../questions/received/trafikkfare.yaml | 15 - .../questions/received/trenger-hjelp.yaml | 10 - .../questions/status/anleggsfeil/index.yaml | 22 - .../questions/status/oppslag/index.yaml | 22 - .../status/trafikkmeldinger/index.yaml | 22 - .../questions/styret/_section.yaml | 1 - .../questions/styret/index.yaml | 74 - .../questions/trafikk/_section.yaml | 1 - .../questions/trafikk/index.yaml | 32 - .../tomtervel-committees-2026-09-23/rate.json | 497 -- .../tomtervel-committees-2026-09-23/rate.txt | 21 - .../score-full.txt | 8 - .../score-skim.txt | 9 - .../tomtervel-committees-2026-09-23/site.yaml | 2 - .../tasks-full.jsonl | 38 - .../tasks-skim.jsonl | 38 - .../tomtervel-downtree-2026-09-29/README.md | 16 - .../site/aggregates.yaml | 192 - .../site/needs.yaml | 312 - .../questions/arrangementer/_section.yaml | 1 - .../site/questions/arrangementer/index.yaml | 65 - .../site/questions/bidra/index.yaml | 82 - .../site/questions/decide/bli-medlem.yaml | 11 - .../site/questions/decide/dele-utstyr.yaml | 11 - .../site/questions/decide/kan-hjelpe.yaml | 11 - .../site/questions/decide/trenger-hjelp.yaml | 11 - .../questions/horingsinstans/_section.yaml | 1 - .../site/questions/horingsinstans/index.yaml | 59 - .../site/questions/index.yaml | 118 - .../site/questions/kasserer/_section.yaml | 1 - .../site/questions/kasserer/index.yaml | 102 - .../site/questions/komiteer/_section.yaml | 1 - .../site/questions/komiteer/index.yaml | 44 - .../site/questions/komiteer/utlegg-sent.yaml | 5 - .../site/questions/komiteer/utlegg.yaml | 38 - .../site/questions/lekeplasser/_section.yaml | 1 - .../site/questions/lekeplasser/index.yaml | 59 - .../site/questions/medlem/index.yaml | 72 - .../site/questions/melde-fra/index.yaml | 69 - .../site/questions/naboer/index.yaml | 125 - .../site/questions/nabohjelp/_section.yaml | 1 - .../site/questions/nabohjelp/index.yaml | 85 - .../site/questions/received/anleggsfeil.yaml | 10 - .../site/questions/received/bli-medlem.yaml | 5 - .../site/questions/received/dele-utstyr.yaml | 10 - .../questions/received/endre-medlemskap.yaml | 5 - .../site/questions/received/hjelpe-til.yaml | 5 - .../questions/received/horingsinnspill.yaml | 5 - .../site/questions/received/kan-hjelpe.yaml | 5 - .../site/questions/received/komite.yaml | 5 - .../site/questions/received/trafikkfare.yaml | 10 - .../questions/received/trenger-hjelp.yaml | 5 - .../questions/status/anleggsfeil/index.yaml | 19 - .../site/questions/status/oppslag/index.yaml | 19 - .../status/trafikkmeldinger/index.yaml | 19 - .../site/questions/styret/_section.yaml | 1 - .../site/questions/styret/index.yaml | 219 - .../site/questions/trafikk/_section.yaml | 1 - .../site/questions/trafikk/index.yaml | 65 - .../site/site.yaml | 16 - .../site/words.json | 1054 --- .../runs/tomtervel-flat-2026-09-23/README.md | 36 - .../answers-full.jsonl | 20 - .../answers-skim.jsonl | 20 - .../runs/tomtervel-flat-2026-09-23/iris.log | 31 - .../runs/tomtervel-flat-2026-09-23/model.json | 1595 ----- .../tomtervel-flat-2026-09-23/opener-no.json | 23 - .../opener-only.json | 43 - .../tomtervel-flat-2026-09-23/r1/score.log | 39 - .../r1/site/aggregates.yaml | 162 - .../r1/site/needs.yaml | 265 - .../questions/arrangementer/_section.yaml | 1 - .../site/questions/arrangementer/index.yaml | 65 - .../r1/site/questions/decide/bli-medlem.yaml | 9 - .../r1/site/questions/decide/dele-utstyr.yaml | 9 - .../r1/site/questions/decide/kan-hjelpe.yaml | 9 - .../site/questions/decide/trenger-hjelp.yaml | 9 - .../questions/horingsinstans/_section.yaml | 1 - .../site/questions/horingsinstans/index.yaml | 59 - .../r1/site/questions/index.yaml | 382 -- .../r1/site/questions/kasserer/_section.yaml | 1 - .../r1/site/questions/kasserer/index.yaml | 102 - .../r1/site/questions/komiteer/_section.yaml | 1 - .../r1/site/questions/komiteer/index.yaml | 44 - .../site/questions/komiteer/utlegg-sent.yaml | 10 - .../r1/site/questions/komiteer/utlegg.yaml | 38 - .../site/questions/lekeplasser/_section.yaml | 1 - .../r1/site/questions/lekeplasser/index.yaml | 59 - .../r1/site/questions/nabohjelp/_section.yaml | 1 - .../r1/site/questions/nabohjelp/index.yaml | 85 - .../site/questions/received/anleggsfeil.yaml | 15 - .../site/questions/received/bli-medlem.yaml | 10 - .../site/questions/received/dele-utstyr.yaml | 15 - .../questions/received/endre-medlemskap.yaml | 10 - .../site/questions/received/hjelpe-til.yaml | 10 - .../questions/received/horingsinnspill.yaml | 10 - .../site/questions/received/kan-hjelpe.yaml | 10 - .../r1/site/questions/received/komite.yaml | 10 - .../site/questions/received/trafikkfare.yaml | 15 - .../questions/received/trenger-hjelp.yaml | 10 - .../questions/status/anleggsfeil/index.yaml | 22 - .../site/questions/status/oppslag/index.yaml | 22 - .../status/trafikkmeldinger/index.yaml | 22 - .../r1/site/questions/styret/_section.yaml | 1 - .../r1/site/questions/styret/index.yaml | 219 - .../r1/site/questions/trafikk/_section.yaml | 1 - .../r1/site/questions/trafikk/index.yaml | 65 - .../r1/site/site.yaml | 2 - .../r1/site/words.json | 868 --- .../tomtervel-flat-2026-09-23/rated/rate.json | 299 - .../runs/tomtervel-flat-2026-09-23/score.log | 39 - .../runs/tomtervel-flat-2026-09-23/score.sh | 16 - .../site/aggregates.yaml | 220 - .../tomtervel-flat-2026-09-23/site/needs.yaml | 265 - .../questions/arrangementer/_section.yaml | 1 - .../site/questions/arrangementer/index.yaml | 65 - .../site/questions/decide/bli-medlem.yaml | 9 - .../site/questions/decide/dele-utstyr.yaml | 9 - .../site/questions/decide/kan-hjelpe.yaml | 9 - .../site/questions/decide/trenger-hjelp.yaml | 9 - .../questions/horingsinstans/_section.yaml | 1 - .../site/questions/horingsinstans/index.yaml | 59 - .../site/questions/index.yaml | 382 -- .../site/questions/kasserer/_section.yaml | 1 - .../site/questions/kasserer/index.yaml | 102 - .../site/questions/komiteer/_section.yaml | 1 - .../site/questions/komiteer/index.yaml | 44 - .../site/questions/komiteer/utlegg-sent.yaml | 10 - .../site/questions/komiteer/utlegg.yaml | 38 - .../site/questions/lekeplasser/_section.yaml | 1 - .../site/questions/lekeplasser/index.yaml | 59 - .../site/questions/nabohjelp/_section.yaml | 1 - .../site/questions/nabohjelp/index.yaml | 85 - .../site/questions/received/anleggsfeil.yaml | 15 - .../site/questions/received/bli-medlem.yaml | 10 - .../site/questions/received/dele-utstyr.yaml | 15 - .../questions/received/endre-medlemskap.yaml | 10 - .../site/questions/received/hjelpe-til.yaml | 10 - .../questions/received/horingsinnspill.yaml | 10 - .../site/questions/received/kan-hjelpe.yaml | 10 - .../site/questions/received/komite.yaml | 10 - .../site/questions/received/trafikkfare.yaml | 15 - .../questions/received/trenger-hjelp.yaml | 10 - .../questions/status/anleggsfeil/index.yaml | 22 - .../site/questions/status/oppslag/index.yaml | 22 - .../status/trafikkmeldinger/index.yaml | 22 - .../site/questions/styret/_section.yaml | 1 - .../site/questions/styret/index.yaml | 219 - .../site/questions/trafikk/_section.yaml | 1 - .../site/questions/trafikk/index.yaml | 65 - .../tomtervel-flat-2026-09-23/site/site.yaml | 5 - .../tomtervel-flat-2026-09-23/site/words.json | 900 --- .../tasks-full.jsonl | 20 - .../tasks-skim.jsonl | 20 - .../runs/tomtervel-flat-2026-09-23/words.json | 856 --- .../tomtervel-frontdoor-2026-09-28/README.md | 32 - .../tomtervel-frontdoor-2026-09-28/build.log | 19 - .../site/aggregates.yaml | 192 - .../site/llm/09-questions_index.yaml.md | 264 - .../site/needs.yaml | 312 - .../questions/arrangementer/_section.yaml | 1 - .../site/questions/arrangementer/index.yaml | 65 - .../site/questions/bidra/index.yaml | 82 - .../site/questions/decide/bli-medlem.yaml | 11 - .../site/questions/decide/dele-utstyr.yaml | 11 - .../site/questions/decide/kan-hjelpe.yaml | 11 - .../site/questions/decide/trenger-hjelp.yaml | 11 - .../questions/horingsinstans/_section.yaml | 1 - .../site/questions/horingsinstans/index.yaml | 59 - .../site/questions/index.yaml | 118 - .../site/questions/kasserer/_section.yaml | 1 - .../site/questions/kasserer/index.yaml | 102 - .../site/questions/komiteer/_section.yaml | 1 - .../site/questions/komiteer/index.yaml | 44 - .../site/questions/komiteer/utlegg-sent.yaml | 10 - .../site/questions/komiteer/utlegg.yaml | 38 - .../site/questions/lekeplasser/_section.yaml | 1 - .../site/questions/lekeplasser/index.yaml | 59 - .../site/questions/medlem/index.yaml | 72 - .../site/questions/melde-fra/index.yaml | 69 - .../site/questions/naboer/index.yaml | 125 - .../site/questions/nabohjelp/_section.yaml | 1 - .../site/questions/nabohjelp/index.yaml | 85 - .../site/questions/received/anleggsfeil.yaml | 15 - .../site/questions/received/bli-medlem.yaml | 10 - .../site/questions/received/dele-utstyr.yaml | 15 - .../questions/received/endre-medlemskap.yaml | 10 - .../site/questions/received/hjelpe-til.yaml | 10 - .../questions/received/horingsinnspill.yaml | 10 - .../site/questions/received/kan-hjelpe.yaml | 10 - .../site/questions/received/komite.yaml | 10 - .../site/questions/received/trafikkfare.yaml | 15 - .../questions/received/trenger-hjelp.yaml | 10 - .../questions/status/anleggsfeil/index.yaml | 24 - .../site/questions/status/oppslag/index.yaml | 24 - .../status/trafikkmeldinger/index.yaml | 24 - .../site/questions/styret/_section.yaml | 1 - .../site/questions/styret/index.yaml | 219 - .../site/questions/trafikk/_section.yaml | 1 - .../site/questions/trafikk/index.yaml | 65 - .../site/site.yaml | 16 - .../site/words.json | 1068 --- .../words-frontdoor.json | 106 - .../tomtervel-invites-2026-09-23/README.md | 11 - .../invite-words-no.json | 40 - .../tomtervel-invites-2026-09-23/words.json | 873 --- .../aggregates.yaml | 162 - .../answers-full.jsonl | 40 - .../answers-skim.jsonl | 40 - .../tomtervel-nabohjelp-2026-09-22/build.log | 41 - .../kanidm-client.sh | 53 - .../kasse-instance.sh | 34 - .../kasse-login.sh | 23 - ...questions_arrangementskomite_index.yaml.md | 78 - .../llm/02-questions_bidra_index.yaml.md | 118 - .../03-questions_decide_dele-utstyr.yaml.md | 64 - .../04-questions_decide_kan-hjelpe.yaml.md | 62 - .../05-questions_decide_trenger-hjelp.yaml.md | 64 - .../llm/06-questions_index.yaml.md | 94 - .../llm/07-questions_kasserer_index.yaml.md | 108 - .../llm/08-questions_komiteer_index.yaml.md | 68 - .../09-questions_komiteer_utlegg-sent.yaml.md | 48 - .../llm/10-questions_komiteer_utlegg.yaml.md | 68 - ...11-questions_lekeplasskomite_index.yaml.md | 74 - .../llm/12-questions_medlem_index.yaml.md | 100 - .../llm/13-questions_melde-fra_index.yaml.md | 96 - .../llm/14-questions_naboer_index.yaml.md | 126 - .../llm/15-questions_nabohjelp_index.yaml.md | 94 - .../16-questions_received_anleggsfeil.yaml.md | 56 - .../17-questions_received_bli-medlem.yaml.md | 56 - .../18-questions_received_dele-utstyr.yaml.md | 54 - ...uestions_received_endre-medlemskap.yaml.md | 56 - .../20-questions_received_hjelpe-til.yaml.md | 56 - ...questions_received_horingsinnspill.yaml.md | 56 - .../22-questions_received_kan-hjelpe.yaml.md | 56 - .../llm/23-questions_received_komite.yaml.md | 56 - .../24-questions_received_trafikkfare.yaml.md | 56 - ...5-questions_received_trenger-hjelp.yaml.md | 56 - .../llm/26-questions_styret_index.yaml.md | 116 - .../27-questions_trafikkomite_index.yaml.md | 78 - .../tomtervel-nabohjelp-2026-09-22/model.json | 1467 ---- .../tomtervel-nabohjelp-2026-09-22/needs.yaml | 265 - .../arrangementskomite/_section.yaml | 1 - .../questions/arrangementskomite/index.yaml | 32 - .../questions/bidra/index.yaml | 74 - .../questions/decide/dele-utstyr.yaml | 9 - .../questions/decide/kan-hjelpe.yaml | 9 - .../questions/decide/trenger-hjelp.yaml | 9 - .../questions/index.yaml | 26 - .../questions/kasserer/_section.yaml | 1 - .../questions/kasserer/index.yaml | 69 - .../questions/komiteer/_section.yaml | 1 - .../questions/komiteer/index.yaml | 11 - .../questions/komiteer/utlegg-sent.yaml | 10 - .../questions/komiteer/utlegg.yaml | 25 - .../questions/lekeplasskomite/_section.yaml | 1 - .../questions/lekeplasskomite/index.yaml | 26 - .../questions/medlem/index.yaml | 46 - .../questions/melde-fra/index.yaml | 45 - .../questions/naboer/index.yaml | 83 - .../questions/nabohjelp/_section.yaml | 1 - .../questions/nabohjelp/index.yaml | 52 - .../questions/received/anleggsfeil.yaml | 10 - .../questions/received/bli-medlem.yaml | 10 - .../questions/received/dele-utstyr.yaml | 10 - .../questions/received/endre-medlemskap.yaml | 10 - .../questions/received/hjelpe-til.yaml | 10 - .../questions/received/horingsinnspill.yaml | 10 - .../questions/received/kan-hjelpe.yaml | 10 - .../questions/received/komite.yaml | 10 - .../questions/received/trafikkfare.yaml | 10 - .../questions/received/trenger-hjelp.yaml | 10 - .../questions/styret/_section.yaml | 1 - .../questions/styret/index.yaml | 80 - .../questions/trafikkomite/_section.yaml | 1 - .../questions/trafikkomite/index.yaml | 32 - .../tomtervel-nabohjelp-2026-09-22/rate.json | 477 -- .../tomtervel-nabohjelp-2026-09-22/rate.txt | 22 - .../score-full.txt | 11 - .../score-skim.txt | 13 - .../tomtervel-nabohjelp-2026-09-22/site.yaml | 2 - .../tasks-full.jsonl | 40 - .../tasks-skim.jsonl | 40 - .../tomtervel-opener-2026-09-23/README.md | 82 - .../answers-full-seed1.jsonl | 38 - .../answers-full-seed2.jsonl | 38 - .../answers-full-seed3.jsonl | 38 - .../answers-full.jsonl | 38 - .../answers-r3-full-seed0.jsonl | 38 - .../answers-r3-full-seed1.jsonl | 38 - .../answers-r3-full-seed2.jsonl | 38 - .../answers-skim-seed1.jsonl | 38 - .../answers-skim-seed2.jsonl | 38 - .../answers-skim-seed3.jsonl | 38 - .../answers-skim.jsonl | 38 - .../cold-front.json | 28 - .../runs/tomtervel-opener-2026-09-23/iris.log | 31 - .../model-cold.json | 1576 ----- .../tomtervel-opener-2026-09-23/model-r3.json | 1529 ----- .../tomtervel-opener-2026-09-23/model.json | 1518 ----- .../opener-only.json | 43 - .../tomtervel-opener-2026-09-23/r1/score.log | 60 - .../r1/site/aggregates.yaml | 220 - .../r1/site/needs.yaml | 265 - .../questions/arrangementer/_section.yaml | 1 - .../site/questions/arrangementer/index.yaml | 65 - .../r1/site/questions/bidra/index.yaml | 82 - .../r1/site/questions/decide/bli-medlem.yaml | 9 - .../r1/site/questions/decide/dele-utstyr.yaml | 9 - .../r1/site/questions/decide/kan-hjelpe.yaml | 9 - .../site/questions/decide/trenger-hjelp.yaml | 9 - .../questions/horingsinstans/_section.yaml | 1 - .../site/questions/horingsinstans/index.yaml | 59 - .../r1/site/questions/index.yaml | 78 - .../r1/site/questions/kasserer/_section.yaml | 1 - .../r1/site/questions/kasserer/index.yaml | 102 - .../r1/site/questions/komiteer/_section.yaml | 1 - .../r1/site/questions/komiteer/index.yaml | 44 - .../site/questions/komiteer/utlegg-sent.yaml | 10 - .../r1/site/questions/komiteer/utlegg.yaml | 38 - .../site/questions/lekeplasser/_section.yaml | 1 - .../r1/site/questions/lekeplasser/index.yaml | 59 - .../r1/site/questions/medlem/index.yaml | 72 - .../r1/site/questions/melde-fra/index.yaml | 69 - .../r1/site/questions/naboer/index.yaml | 125 - .../r1/site/questions/nabohjelp/_section.yaml | 1 - .../r1/site/questions/nabohjelp/index.yaml | 85 - .../site/questions/received/anleggsfeil.yaml | 15 - .../site/questions/received/bli-medlem.yaml | 10 - .../site/questions/received/dele-utstyr.yaml | 15 - .../questions/received/endre-medlemskap.yaml | 10 - .../site/questions/received/hjelpe-til.yaml | 10 - .../questions/received/horingsinnspill.yaml | 10 - .../site/questions/received/kan-hjelpe.yaml | 10 - .../r1/site/questions/received/komite.yaml | 10 - .../site/questions/received/trafikkfare.yaml | 15 - .../questions/received/trenger-hjelp.yaml | 10 - .../questions/status/anleggsfeil/index.yaml | 22 - .../site/questions/status/oppslag/index.yaml | 22 - .../status/trafikkmeldinger/index.yaml | 22 - .../r1/site/questions/styret/_section.yaml | 1 - .../r1/site/questions/styret/index.yaml | 219 - .../r1/site/questions/trafikk/_section.yaml | 1 - .../r1/site/questions/trafikk/index.yaml | 65 - .../r1/site/site.yaml | 5 - .../r1/site/words.json | 953 --- .../rated/rate.json | 497 -- .../tomtervel-opener-2026-09-23/score.log | 49 - .../runs/tomtervel-opener-2026-09-23/score.sh | 16 - .../site-cold/aggregates.yaml | 192 - .../site-cold/needs.yaml | 312 - .../questions/arrangementer/_section.yaml | 1 - .../questions/arrangementer/index.yaml | 65 - .../site-cold/questions/bidra/index.yaml | 82 - .../questions/decide/bli-medlem.yaml | 9 - .../questions/decide/dele-utstyr.yaml | 9 - .../questions/decide/kan-hjelpe.yaml | 9 - .../questions/decide/trenger-hjelp.yaml | 9 - .../questions/horingsinstans/_section.yaml | 1 - .../questions/horingsinstans/index.yaml | 59 - .../site-cold/questions/index.yaml | 94 - .../questions/kasserer/_section.yaml | 1 - .../site-cold/questions/kasserer/index.yaml | 102 - .../questions/komiteer/_section.yaml | 1 - .../site-cold/questions/komiteer/index.yaml | 44 - .../questions/komiteer/utlegg-sent.yaml | 10 - .../site-cold/questions/komiteer/utlegg.yaml | 38 - .../questions/lekeplasser/_section.yaml | 1 - .../questions/lekeplasser/index.yaml | 59 - .../site-cold/questions/medlem/index.yaml | 72 - .../site-cold/questions/melde-fra/index.yaml | 69 - .../site-cold/questions/naboer/index.yaml | 125 - .../questions/nabohjelp/_section.yaml | 1 - .../site-cold/questions/nabohjelp/index.yaml | 85 - .../questions/received/anleggsfeil.yaml | 15 - .../questions/received/bli-medlem.yaml | 10 - .../questions/received/dele-utstyr.yaml | 15 - .../questions/received/endre-medlemskap.yaml | 10 - .../questions/received/hjelpe-til.yaml | 10 - .../questions/received/horingsinnspill.yaml | 10 - .../questions/received/kan-hjelpe.yaml | 10 - .../site-cold/questions/received/komite.yaml | 10 - .../questions/received/trafikkfare.yaml | 15 - .../questions/received/trenger-hjelp.yaml | 10 - .../questions/status/anleggsfeil/index.yaml | 22 - .../questions/status/oppslag/index.yaml | 22 - .../status/trafikkmeldinger/index.yaml | 22 - .../site-cold/questions/styret/_section.yaml | 1 - .../site-cold/questions/styret/index.yaml | 219 - .../site-cold/questions/trafikk/_section.yaml | 1 - .../site-cold/questions/trafikk/index.yaml | 65 - .../site-cold/site.yaml | 5 - .../site-cold/words.json | 953 --- .../site-r3/aggregates.yaml | 192 - .../site-r3/needs.yaml | 265 - .../questions/arrangementer/_section.yaml | 1 - .../questions/arrangementer/index.yaml | 65 - .../site-r3/questions/bidra/index.yaml | 82 - .../site-r3/questions/decide/bli-medlem.yaml | 9 - .../site-r3/questions/decide/dele-utstyr.yaml | 9 - .../site-r3/questions/decide/kan-hjelpe.yaml | 9 - .../questions/decide/trenger-hjelp.yaml | 9 - .../questions/horingsinstans/_section.yaml | 1 - .../questions/horingsinstans/index.yaml | 59 - .../site-r3/questions/index.yaml | 94 - .../site-r3/questions/kasserer/_section.yaml | 1 - .../site-r3/questions/kasserer/index.yaml | 102 - .../site-r3/questions/komiteer/_section.yaml | 1 - .../site-r3/questions/komiteer/index.yaml | 44 - .../questions/komiteer/utlegg-sent.yaml | 10 - .../site-r3/questions/komiteer/utlegg.yaml | 38 - .../questions/lekeplasser/_section.yaml | 1 - .../site-r3/questions/lekeplasser/index.yaml | 59 - .../site-r3/questions/medlem/index.yaml | 72 - .../site-r3/questions/melde-fra/index.yaml | 69 - .../site-r3/questions/naboer/index.yaml | 125 - .../site-r3/questions/nabohjelp/_section.yaml | 1 - .../site-r3/questions/nabohjelp/index.yaml | 85 - .../questions/received/anleggsfeil.yaml | 15 - .../questions/received/bli-medlem.yaml | 10 - .../questions/received/dele-utstyr.yaml | 15 - .../questions/received/endre-medlemskap.yaml | 10 - .../questions/received/hjelpe-til.yaml | 10 - .../questions/received/horingsinnspill.yaml | 10 - .../questions/received/kan-hjelpe.yaml | 10 - .../site-r3/questions/received/komite.yaml | 10 - .../questions/received/trafikkfare.yaml | 15 - .../questions/received/trenger-hjelp.yaml | 10 - .../questions/status/anleggsfeil/index.yaml | 22 - .../questions/status/oppslag/index.yaml | 22 - .../status/trafikkmeldinger/index.yaml | 22 - .../site-r3/questions/styret/_section.yaml | 1 - .../site-r3/questions/styret/index.yaml | 219 - .../site-r3/questions/trafikk/_section.yaml | 1 - .../site-r3/questions/trafikk/index.yaml | 65 - .../site-r3/site.yaml | 5 - .../site-r3/words.json | 953 --- .../site/aggregates.yaml | 192 - .../site/llm/01-aggregates.yaml.md | 108 - .../site/needs.yaml | 265 - .../questions/arrangementer/_section.yaml | 1 - .../site/questions/arrangementer/index.yaml | 65 - .../site/questions/bidra/index.yaml | 82 - .../site/questions/decide/bli-medlem.yaml | 9 - .../site/questions/decide/dele-utstyr.yaml | 9 - .../site/questions/decide/kan-hjelpe.yaml | 9 - .../site/questions/decide/trenger-hjelp.yaml | 9 - .../questions/horingsinstans/_section.yaml | 1 - .../site/questions/horingsinstans/index.yaml | 59 - .../site/questions/index.yaml | 94 - .../site/questions/kasserer/_section.yaml | 1 - .../site/questions/kasserer/index.yaml | 102 - .../site/questions/komiteer/_section.yaml | 1 - .../site/questions/komiteer/index.yaml | 44 - .../site/questions/komiteer/utlegg-sent.yaml | 10 - .../site/questions/komiteer/utlegg.yaml | 38 - .../site/questions/lekeplasser/_section.yaml | 1 - .../site/questions/lekeplasser/index.yaml | 59 - .../site/questions/medlem/index.yaml | 72 - .../site/questions/melde-fra/index.yaml | 69 - .../site/questions/naboer/index.yaml | 125 - .../site/questions/nabohjelp/_section.yaml | 1 - .../site/questions/nabohjelp/index.yaml | 85 - .../site/questions/received/anleggsfeil.yaml | 15 - .../site/questions/received/bli-medlem.yaml | 10 - .../site/questions/received/dele-utstyr.yaml | 15 - .../questions/received/endre-medlemskap.yaml | 10 - .../site/questions/received/hjelpe-til.yaml | 10 - .../questions/received/horingsinnspill.yaml | 10 - .../site/questions/received/kan-hjelpe.yaml | 10 - .../site/questions/received/komite.yaml | 10 - .../site/questions/received/trafikkfare.yaml | 15 - .../questions/received/trenger-hjelp.yaml | 10 - .../questions/status/anleggsfeil/index.yaml | 22 - .../site/questions/status/oppslag/index.yaml | 22 - .../status/trafikkmeldinger/index.yaml | 22 - .../site/questions/styret/_section.yaml | 1 - .../site/questions/styret/index.yaml | 219 - .../site/questions/trafikk/_section.yaml | 1 - .../site/questions/trafikk/index.yaml | 65 - .../site/site.yaml | 5 - .../site/words.json | 953 --- .../tasks-full.jsonl | 38 - .../tasks-r3-full.jsonl | 38 - .../tasks-skim.jsonl | 38 - .../words-cold.json | 953 --- .../tomtervel-opener-2026-09-23/words-r2.json | 953 --- .../tomtervel-opener-2026-09-23/words-r3.json | 953 --- .../README.md | 38 - .../site/aggregates.yaml | 219 - .../site/needs.yaml | 328 - .../questions/arrangementer/_section.yaml | 1 - .../site/questions/arrangementer/index.yaml | 71 - .../site/questions/bidra/index.yaml | 82 - .../site/questions/decide/bli-medlem.yaml | 11 - .../site/questions/decide/dele-utstyr.yaml | 11 - .../site/questions/decide/kan-hjelpe.yaml | 11 - .../site/questions/decide/trenger-hjelp.yaml | 11 - .../questions/horingsinstans/_section.yaml | 1 - .../site/questions/horingsinstans/index.yaml | 65 - .../site/questions/index.yaml | 122 - .../site/questions/kasserer/_section.yaml | 1 - .../site/questions/kasserer/index.yaml | 108 - .../site/questions/komiteer/_section.yaml | 1 - .../site/questions/komiteer/index.yaml | 50 - .../site/questions/komiteer/utlegg-sent.yaml | 5 - .../site/questions/komiteer/utlegg.yaml | 38 - .../site/questions/lekeplasser/_section.yaml | 1 - .../site/questions/lekeplasser/index.yaml | 65 - .../site/questions/medlem/index.yaml | 72 - .../site/questions/melde-fra/index.yaml | 69 - .../site/questions/naboer/index.yaml | 125 - .../site/questions/nabohjelp/_section.yaml | 1 - .../site/questions/nabohjelp/index.yaml | 91 - .../site/questions/received/anleggsfeil.yaml | 10 - .../site/questions/received/bli-medlem.yaml | 5 - .../site/questions/received/dele-utstyr.yaml | 10 - .../questions/received/endre-medlemskap.yaml | 5 - .../site/questions/received/hjelpe-til.yaml | 5 - .../questions/received/horingsinnspill.yaml | 5 - .../site/questions/received/kan-hjelpe.yaml | 5 - .../site/questions/received/komite.yaml | 5 - .../site/questions/received/melde-seg.yaml | 5 - .../site/questions/received/trafikkfare.yaml | 10 - .../questions/received/trenger-hjelp.yaml | 5 - .../site/questions/redaktor/_section.yaml | 1 - .../site/questions/redaktor/index.yaml | 79 - .../questions/status/anleggsfeil/index.yaml | 19 - .../site/questions/status/oppslag/[key].yaml | 38 - .../site/questions/status/oppslag/index.yaml | 23 - .../status/trafikkmeldinger/index.yaml | 19 - .../site/questions/styret/_section.yaml | 1 - .../site/questions/styret/index.yaml | 250 - .../site/questions/trafikk/_section.yaml | 1 - .../site/questions/trafikk/index.yaml | 71 - .../site/site.yaml | 16 - .../site/words.json | 1172 ---- .../words-board.json | 470 -- .../README.md | 37 - .../llm/01-prompt.md | 136 - .../llm/01-reply.md | 196 - .../tomtervel-plan-claude-2026-09-22/plan.log | 12 - .../plan.yaml | 196 - .../runs/uhhm-2026-09-21/answers-full.jsonl | 8 - .../runs/uhhm-2026-09-21/answers-skim.jsonl | 8 - .../ollama/ans-full-granite4.1.jsonl | 8 - .../ollama/ans-full-qwen3.jsonl | 8 - .../ollama/ans-skim-granite4.1.jsonl | 8 - .../ollama/ans-skim-qwen3.jsonl | 8 - .../trainer/runs/uhhm-2026-09-21/tasks.jsonl | 8 - vendor/trainer/runs/uhhm-2026-09-23/README.md | 133 - .../uhhm-2026-09-23/answers-full-seed1.jsonl | 15 - .../uhhm-2026-09-23/answers-full-seed2.jsonl | 15 - .../uhhm-2026-09-23/answers-full-seed3.jsonl | 15 - .../runs/uhhm-2026-09-23/answers-full.jsonl | 15 - .../uhhm-2026-09-23/answers-skim-seed1.jsonl | 15 - .../uhhm-2026-09-23/answers-skim-seed2.jsonl | 15 - .../uhhm-2026-09-23/answers-skim-seed3.jsonl | 15 - .../runs/uhhm-2026-09-23/answers-skim.jsonl | 15 - vendor/trainer/runs/uhhm-2026-09-23/iris.log | 23 - .../trainer/runs/uhhm-2026-09-23/model.json | 956 --- .../runs/uhhm-2026-09-23/overrides-r3.json | 23 - .../runs/uhhm-2026-09-23/overrides-r4.json | 21 - .../runs/uhhm-2026-09-23/overrides-r5.json | 10 - .../runs/uhhm-2026-09-23/overrides.json | 54 - .../uhhm-2026-09-23/r1/answers-full.jsonl | 27 - .../uhhm-2026-09-23/r1/answers-skim.jsonl | 27 - .../runs/uhhm-2026-09-23/r1/rated/rate.json | 274 - .../trainer/runs/uhhm-2026-09-23/r1/score.log | 39 - .../uhhm-2026-09-23/r1/site/aggregates.yaml | 113 - .../site/llm/01-questions_build_index.yaml.md | 174 - .../llm/02-questions_custodians_index.yaml.md | 108 - .../llm/03-questions_decide_subscribe.yaml.md | 60 - .../r1/site/llm/04-questions_index.yaml.md | 136 - .../site/llm/05-questions_join_index.yaml.md | 208 - .../llm/06-questions_owners_index.yaml.md | 236 - .../07-questions_owners_prospect-sent.yaml.md | 52 - .../llm/08-questions_owners_prospect.yaml.md | 92 - .../09-questions_received_collaborate.yaml.md | 52 - .../10-questions_received_commission.yaml.md | 52 - .../llm/11-questions_received_custody.yaml.md | 52 - .../llm/12-questions_received_propose.yaml.md | 52 - .../13-questions_received_subscribe.yaml.md | 52 - .../llm/14-questions_received_trial.yaml.md | 52 - .../runs/uhhm-2026-09-23/r1/site/needs.yaml | 173 - .../r1/site/questions/build/index.yaml | 94 - .../site/questions/custodians/_section.yaml | 1 - .../r1/site/questions/custodians/index.yaml | 65 - .../r1/site/questions/decide/subscribe.yaml | 9 - .../r1/site/questions/index.yaml | 63 - .../r1/site/questions/join/index.yaml | 110 - .../r1/site/questions/owners/_section.yaml | 1 - .../r1/site/questions/owners/index.yaml | 212 - .../site/questions/owners/prospect-sent.yaml | 10 - .../r1/site/questions/owners/prospect.yaml | 39 - .../site/questions/received/collaborate.yaml | 10 - .../site/questions/received/commission.yaml | 10 - .../r1/site/questions/received/custody.yaml | 10 - .../r1/site/questions/received/propose.yaml | 10 - .../r1/site/questions/received/subscribe.yaml | 10 - .../r1/site/questions/received/trial.yaml | 10 - .../runs/uhhm-2026-09-23/r1/site/site.yaml | 2 - .../runs/uhhm-2026-09-23/r1/site/words.json | 426 -- .../runs/uhhm-2026-09-23/r1/tasks-full.jsonl | 27 - .../runs/uhhm-2026-09-23/r1/tasks-skim.jsonl | 27 - .../uhhm-2026-09-23/r2/answers-full.jsonl | 27 - .../uhhm-2026-09-23/r2/answers-skim.jsonl | 27 - .../runs/uhhm-2026-09-23/r2/rated/rate.json | 274 - .../trainer/runs/uhhm-2026-09-23/r2/score.log | 35 - .../uhhm-2026-09-23/r2/site/aggregates.yaml | 113 - .../site/llm/01-questions_build_index.yaml.md | 174 - .../llm/02-questions_custodians_index.yaml.md | 108 - .../llm/03-questions_decide_subscribe.yaml.md | 60 - .../r2/site/llm/04-questions_index.yaml.md | 136 - .../site/llm/05-questions_join_index.yaml.md | 208 - .../llm/06-questions_owners_index.yaml.md | 236 - .../07-questions_owners_prospect-sent.yaml.md | 52 - .../llm/08-questions_owners_prospect.yaml.md | 92 - .../09-questions_received_collaborate.yaml.md | 52 - .../10-questions_received_commission.yaml.md | 52 - .../llm/11-questions_received_custody.yaml.md | 52 - .../llm/12-questions_received_propose.yaml.md | 52 - .../13-questions_received_subscribe.yaml.md | 52 - .../llm/14-questions_received_trial.yaml.md | 52 - .../runs/uhhm-2026-09-23/r2/site/needs.yaml | 173 - .../r2/site/questions/build/index.yaml | 94 - .../site/questions/custodians/_section.yaml | 1 - .../r2/site/questions/custodians/index.yaml | 65 - .../r2/site/questions/decide/subscribe.yaml | 9 - .../r2/site/questions/index.yaml | 63 - .../r2/site/questions/join/index.yaml | 110 - .../r2/site/questions/owners/_section.yaml | 1 - .../r2/site/questions/owners/index.yaml | 212 - .../site/questions/owners/prospect-sent.yaml | 10 - .../r2/site/questions/owners/prospect.yaml | 39 - .../site/questions/received/collaborate.yaml | 10 - .../site/questions/received/commission.yaml | 10 - .../r2/site/questions/received/custody.yaml | 10 - .../r2/site/questions/received/propose.yaml | 10 - .../r2/site/questions/received/subscribe.yaml | 10 - .../r2/site/questions/received/trial.yaml | 10 - .../runs/uhhm-2026-09-23/r2/site/site.yaml | 2 - .../runs/uhhm-2026-09-23/r2/site/words.json | 426 -- .../uhhm-2026-09-23/r3/answers-full.jsonl | 27 - .../uhhm-2026-09-23/r3/answers-skim.jsonl | 27 - .../runs/uhhm-2026-09-23/r3/rated/rate.json | 274 - .../trainer/runs/uhhm-2026-09-23/r3/score.log | 34 - .../uhhm-2026-09-23/r3/site/aggregates.yaml | 113 - .../site/llm/01-questions_build_index.yaml.md | 174 - .../llm/02-questions_custodians_index.yaml.md | 108 - .../llm/03-questions_decide_subscribe.yaml.md | 60 - .../r3/site/llm/04-questions_index.yaml.md | 136 - .../site/llm/05-questions_join_index.yaml.md | 208 - .../llm/06-questions_owners_index.yaml.md | 236 - .../07-questions_owners_prospect-sent.yaml.md | 52 - .../llm/08-questions_owners_prospect.yaml.md | 92 - .../09-questions_received_collaborate.yaml.md | 52 - .../10-questions_received_commission.yaml.md | 52 - .../llm/11-questions_received_custody.yaml.md | 52 - .../llm/12-questions_received_propose.yaml.md | 52 - .../13-questions_received_subscribe.yaml.md | 52 - .../llm/14-questions_received_trial.yaml.md | 52 - .../runs/uhhm-2026-09-23/r3/site/needs.yaml | 173 - .../r3/site/questions/build/index.yaml | 94 - .../site/questions/custodians/_section.yaml | 1 - .../r3/site/questions/custodians/index.yaml | 65 - .../r3/site/questions/decide/subscribe.yaml | 9 - .../r3/site/questions/index.yaml | 63 - .../r3/site/questions/join/index.yaml | 110 - .../r3/site/questions/owners/_section.yaml | 1 - .../r3/site/questions/owners/index.yaml | 212 - .../site/questions/owners/prospect-sent.yaml | 10 - .../r3/site/questions/owners/prospect.yaml | 39 - .../site/questions/received/collaborate.yaml | 10 - .../site/questions/received/commission.yaml | 10 - .../r3/site/questions/received/custody.yaml | 10 - .../r3/site/questions/received/propose.yaml | 10 - .../r3/site/questions/received/subscribe.yaml | 10 - .../r3/site/questions/received/trial.yaml | 10 - .../runs/uhhm-2026-09-23/r3/site/site.yaml | 2 - .../runs/uhhm-2026-09-23/r3/site/words.json | 426 -- .../uhhm-2026-09-23/r4/answers-full.jsonl | 15 - .../uhhm-2026-09-23/r4/answers-skim.jsonl | 15 - .../runs/uhhm-2026-09-23/r4/rated/rate.json | 164 - .../trainer/runs/uhhm-2026-09-23/r4/score.log | 21 - .../uhhm-2026-09-23/r4/site/aggregates.yaml | 113 - .../site/llm/01-questions_build_index.yaml.md | 174 - .../llm/02-questions_custodians_index.yaml.md | 108 - .../llm/03-questions_decide_subscribe.yaml.md | 60 - .../r4/site/llm/04-questions_index.yaml.md | 136 - .../site/llm/05-questions_join_index.yaml.md | 208 - .../llm/06-questions_owners_index.yaml.md | 236 - .../07-questions_owners_prospect-sent.yaml.md | 52 - .../llm/08-questions_owners_prospect.yaml.md | 92 - .../09-questions_received_collaborate.yaml.md | 52 - .../10-questions_received_commission.yaml.md | 52 - .../llm/11-questions_received_custody.yaml.md | 52 - .../llm/12-questions_received_propose.yaml.md | 52 - .../13-questions_received_subscribe.yaml.md | 52 - .../llm/14-questions_received_trial.yaml.md | 52 - .../runs/uhhm-2026-09-23/r4/site/needs.yaml | 173 - .../site/questions/custodians/_section.yaml | 1 - .../r4/site/questions/custodians/index.yaml | 65 - .../r4/site/questions/decide/subscribe.yaml | 9 - .../r4/site/questions/index.yaml | 270 - .../r4/site/questions/owners/_section.yaml | 1 - .../r4/site/questions/owners/index.yaml | 212 - .../site/questions/owners/prospect-sent.yaml | 10 - .../r4/site/questions/owners/prospect.yaml | 39 - .../site/questions/received/collaborate.yaml | 10 - .../site/questions/received/commission.yaml | 10 - .../r4/site/questions/received/custody.yaml | 10 - .../r4/site/questions/received/propose.yaml | 10 - .../r4/site/questions/received/subscribe.yaml | 10 - .../r4/site/questions/received/trial.yaml | 10 - .../runs/uhhm-2026-09-23/r4/site/site.yaml | 2 - .../runs/uhhm-2026-09-23/r4/site/words.json | 431 -- .../rated-mails-before/rate.json | 204 - .../runs/uhhm-2026-09-23/rated/rate.json | 164 - vendor/trainer/runs/uhhm-2026-09-23/score.log | 22 - vendor/trainer/runs/uhhm-2026-09-23/score.sh | 16 - .../runs/uhhm-2026-09-23/site/aggregates.yaml | 155 - .../runs/uhhm-2026-09-23/site/model.json | 947 --- .../runs/uhhm-2026-09-23/site/needs.yaml | 204 - .../site/questions/custodians/_section.yaml | 1 - .../site/questions/custodians/index.yaml | 65 - .../site/questions/decide/commission.yaml | 9 - .../site/questions/decide/custody.yaml | 9 - .../site/questions/decide/subscribe.yaml | 9 - .../uhhm-2026-09-23/site/questions/index.yaml | 270 - .../site/questions/owners/_section.yaml | 1 - .../site/questions/owners/index.yaml | 209 - .../site/questions/owners/prospect-sent.yaml | 10 - .../site/questions/owners/prospect.yaml | 39 - .../site/questions/received/collaborate.yaml | 10 - .../site/questions/received/commission.yaml | 10 - .../site/questions/received/custody.yaml | 10 - .../site/questions/received/propose.yaml | 10 - .../site/questions/received/subscribe.yaml | 10 - .../site/questions/received/trial.yaml | 10 - .../runs/uhhm-2026-09-23/site/site.yaml | 5 - .../runs/uhhm-2026-09-23/site/words.json | 500 -- .../runs/uhhm-2026-09-23/tasks-full.jsonl | 15 - .../runs/uhhm-2026-09-23/tasks-skim.jsonl | 15 - .../runs/uhhm-2026-09-23/words-r2.json | 426 -- .../runs/uhhm-2026-09-23/words-r3.json | 426 -- .../runs/uhhm-2026-09-23/words-r4.json | 430 -- .../runs/uhhm-2026-09-23/words-r5.json | 430 -- .../runs/uhhm-2026-09-23/words-r7.json | 501 -- .../runs/uhhm-2026-09-23/words-r8.json | 500 -- vendor/trainer/runs/uhhm-2026-09-28/README.md | 101 - .../aggregates-before-naming.yaml | 155 - .../runs/uhhm-2026-09-28/build-invite.log | 13 - .../runs/uhhm-2026-09-28/build-mails.log | 13 - vendor/trainer/runs/uhhm-2026-09-28/build.log | 12 - .../trainer/runs/uhhm-2026-09-28/model.json | 952 --- .../runs/uhhm-2026-09-28/overrides.json | 12 - .../runs/uhhm-2026-09-28/rate-round1.txt | 28 - vendor/trainer/runs/uhhm-2026-09-28/rate.txt | 28 - .../runs/uhhm-2026-09-28/rated/rate.json | 304 - .../runs/uhhm-2026-09-28/site/aggregates.yaml | 184 - .../site/llm/01-aggregates.yaml.md | 130 - ...status_development_proposals_index.yaml.md | 45 - .../uhhm-2026-09-28/site/llm/17-site.yaml.md | 41 - .../runs/uhhm-2026-09-28/site/needs.yaml | 204 - .../site/questions/custodians/_section.yaml | 1 - .../site/questions/custodians/index.yaml | 65 - .../site/questions/decide/commission.yaml | 11 - .../site/questions/decide/custody.yaml | 11 - .../site/questions/decide/subscribe.yaml | 11 - .../uhhm-2026-09-28/site/questions/index.yaml | 273 - .../site/questions/owners/_section.yaml | 1 - .../site/questions/owners/index.yaml | 209 - .../site/questions/owners/prospect-sent.yaml | 10 - .../site/questions/owners/prospect.yaml | 39 - .../site/questions/received/collaborate.yaml | 10 - .../site/questions/received/commission.yaml | 10 - .../site/questions/received/custody.yaml | 10 - .../site/questions/received/propose.yaml | 15 - .../site/questions/received/subscribe.yaml | 10 - .../site/questions/received/trial.yaml | 10 - .../status/development_proposals/index.yaml | 25 - .../runs/uhhm-2026-09-28/site/site.yaml | 30 - .../runs/uhhm-2026-09-28/site/words.json | 570 -- .../runs/uhhm-2026-09-28/words-status.json | 12 - 1733 files changed, 183 insertions(+), 150652 deletions(-) rename vendor/lint/CHANGELOG.md => docs/lint-changelog.md (100%) create mode 100644 docs/lint.md rename vendor/trainer/README.md => docs/training.md (95%) rename {vendor/trainer/engines => engines}/anthropic.sh (100%) rename {vendor/trainer/engines => engines}/claude.sh (100%) rename {vendor/trainer/engines => engines}/mailbox.sh (100%) rename {vendor/trainer/engines => engines}/ollama.sh (100%) rename {vendor/trainer/intakes => intakes}/building-permits-personas.yaml (100%) rename {vendor/trainer/intakes => intakes}/building-permits.yaml (100%) rename {vendor/trainer/intakes => intakes}/contractor.yaml (100%) rename {vendor/trainer/intakes => intakes}/fotballklubb.yaml (100%) rename {vendor/trainer/intakes => intakes}/hire.yaml (100%) rename {vendor/trainer/intakes => intakes}/physio.yaml (100%) rename {vendor/trainer/intakes => intakes}/rehab-entreprenor-no.yaml (100%) rename {vendor/trainer/intakes => intakes}/tomtervel.yaml (100%) rename {vendor/trainer/plans => plans}/building-permits.yaml (100%) rename {vendor/trainer/plans => plans}/contractor-full.yaml (100%) rename {vendor/trainer/plans => plans}/contractor.yaml (100%) rename {vendor/trainer/plans => plans}/fotballklubb.yaml (100%) rename {vendor/trainer/plans => plans}/hire.yaml (100%) rename {vendor/trainer/plans => plans}/physio.yaml (100%) rename {vendor/trainer/plans => plans}/tomtervel.yaml (100%) rename {vendor/trainer/plans => plans}/uhhm.yaml (100%) rename {vendor/trainer/portal-portal => portal-portal}/aggregates.yaml (100%) rename {vendor/trainer/portal-portal => portal-portal}/needs.yaml (100%) rename {vendor/trainer/portal-portal => portal-portal}/questions/desk/_section.yaml (100%) rename {vendor/trainer/portal-portal => portal-portal}/questions/desk/index.yaml (100%) rename {vendor/trainer/portal-portal => portal-portal}/questions/how.yaml (100%) rename {vendor/trainer/portal-portal => portal-portal}/questions/index.yaml (100%) rename {vendor/trainer/portal-portal => portal-portal}/questions/received.yaml (100%) rename {vendor/trainer/portal-portal => portal-portal}/site.yaml (100%) rename {vendor/trainer/sectors => sectors}/construction/needs.yaml (100%) rename {vendor/trainer/sectors => sectors}/software-studio/needs.yaml (100%) rename {vendor/trainer/skill => skill}/SKILL.md (100%) rename {vendor/lint/src => src/lint}/check.rs (92%) rename {vendor/lint/src => src/lint}/local.rs (87%) rename vendor/lint/src/main.rs => src/lint/mod.rs (90%) rename {vendor/lint/src => src/lint}/needs.rs (99%) rename {vendor/lint/src => src/lint}/replay.rs (95%) rename {vendor/trainer/src => src/trainer}/build.rs (99%) rename {vendor/trainer/src => src/trainer}/card.rs (100%) rename vendor/trainer/src/main.rs => src/trainer/mod.rs (98%) rename {vendor/trainer/src => src/trainer}/plan.rs (99%) rename {vendor/trainer/src => src/trainer}/rate.rs (99%) rename {vendor/trainer/generator => src/trainer}/reference.md (100%) rename {vendor/trainer/src => src/trainer}/report.rs (100%) rename {vendor/trainer/src => src/trainer}/score.rs (96%) rename {vendor/trainer/src => src/trainer}/simulate.rs (99%) delete mode 100644 vendor/lint/.gitea/workflows/publish.yml delete mode 100644 vendor/lint/.gitea/workflows/test.yml delete mode 100644 vendor/lint/.gitignore delete mode 100644 vendor/lint/Cargo.lock delete mode 100644 vendor/lint/Cargo.toml delete mode 100644 vendor/lint/README.md delete mode 100644 vendor/trainer/.gitea/workflows/test.yml delete mode 100644 vendor/trainer/.gitignore delete mode 100644 vendor/trainer/Cargo.lock delete mode 100644 vendor/trainer/Cargo.toml delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/generated/aggregates.yaml delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/generated/answers-skim.jsonl delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/generated/answers.jsonl delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/generated/needs.yaml delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/generated/questions/applicants/thanks.yaml delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/generated/questions/desk/_section.yaml delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/generated/questions/desk/index.yaml delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/generated/questions/desk/phone-enquiry-logged.yaml delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/generated/questions/desk/phone-enquiry.yaml delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/generated/questions/enquiries/thanks.yaml delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/generated/questions/index.yaml delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/generated/questions/safety/_section.yaml delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/generated/questions/safety/index.yaml delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/generated/questions/site-issues/thanks.yaml delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/generated/questions/subcontractors/thanks.yaml delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/generated/run.log delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/generated/site.yaml delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/generated/tasks-skim.jsonl delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/generated/tasks.jsonl delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/generator.log delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/heldout-qwen3-8b/ho-ans-full.jsonl delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/heldout-qwen3-8b/ho-ans-skim.jsonl delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/heldout-qwen3-8b/ho-full.jsonl delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/heldout-qwen3-8b/ho-skim.jsonl delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/rating/model-official-voice-control.json delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/rating/model-says-who-reads-it.json delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/rating/rate-generated.json delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/rating/rate-says-who-reads-it.json delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/simulation/README.md delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/simulation/a-open-quoted/cases.jsonl delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/simulation/a-open-quoted/model.json delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/simulation/a-open-quoted/score.json delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/simulation/b-with-surveyed/cases.jsonl delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/simulation/b-with-surveyed/model.json delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/simulation/b-with-surveyed/score.json delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/simulation/first-design-qwen3-8b/score-after-prompt-change.json delete mode 100644 vendor/trainer/runs/contractor-2026-09-21/simulation/first-design-qwen3-8b/score-before-prompt-change.json delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/a-full.jsonl delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/a-skim.jsonl delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/aggregates.yaml delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/needs.yaml delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/questions/crew/_section.yaml delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/questions/crew/index.yaml delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/questions/crew/report-site-issue-sent.yaml delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/questions/crew/report-site-issue.yaml delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/questions/index.yaml delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/questions/project_managers/_section.yaml delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/questions/project_managers/index.yaml delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/questions/project_managers/log-phone-enquiry-sent.yaml delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/questions/project_managers/log-phone-enquiry.yaml delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/questions/received/build-enquiry.yaml delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/questions/received/job-application.yaml delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/questions/received/subcontractor-application.yaml delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/questions/received/survey-enquiry.yaml delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/questions/safety_officer/_section.yaml delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/questions/safety_officer/index.yaml delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/rate.json delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/rescore-2026-09-22/README.md delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/rescore-2026-09-22/answers-full.jsonl delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/rescore-2026-09-22/answers-skim.jsonl delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/rescore-2026-09-22/rate.json delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/run.log delete mode 100644 vendor/trainer/runs/contractor-build-2026-09-21/site.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-21/README.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-21/routes.jsonl delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/README.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/aggregates.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/answers-full.jsonl delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/answers-skim.jsonl delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/build.log delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/01-questions_clients_change-request-sent.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/02-questions_clients_change-request.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/03-questions_clients_index.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/04-questions_crew_index.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/05-questions_crew_order-materials-sent.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/06-questions_crew_order-materials.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/07-questions_crew_report-site-issue-sent.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/08-questions_crew_report-site-issue.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/09-questions_decide_change-request.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/10-questions_index.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/11-questions_project_managers_index.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/12-questions_project_managers_log-phone-enquiry-sent.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/13-questions_project_managers_log-phone-enquiry.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/14-questions_project_managers_post-job-request-sent.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/15-questions_project_managers_post-job-request.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/16-questions_received_build-enquiry.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/17-questions_received_job-application.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/18-questions_received_neighbour-complaint.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/19-questions_received_subcontractor-application.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/20-questions_received_survey-enquiry.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/21-questions_received_warranty-claim.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/22-questions_safety_officer_index.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/23-questions_safety_officer_safety-round-finding-sent.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/24-questions_safety_officer_safety-round-finding.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/25-questions_site_managers_index.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/26-questions_subcontractors_index.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/27-questions_subcontractors_submit-bid-sent.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/28-questions_subcontractors_submit-bid.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/29-questions_work-with-us_index.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/llm/30-questions_your-building_index.yaml.md delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/model.json delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/needs.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/clients/_section.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/clients/change-request-sent.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/clients/change-request.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/clients/index.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/_section.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/index.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/order-materials-sent.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/order-materials.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/report-site-issue-sent.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/report-site-issue.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/decide/change-request.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/index.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/_section.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/index.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/log-phone-enquiry-sent.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/log-phone-enquiry.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/post-job-request-sent.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/post-job-request.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/received/build-enquiry.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/received/job-application.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/received/neighbour-complaint.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/received/subcontractor-application.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/received/survey-enquiry.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/received/warranty-claim.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/safety_officer/_section.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/safety_officer/index.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/safety_officer/safety-round-finding-sent.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/safety_officer/safety-round-finding.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/site_managers/_section.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/site_managers/index.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/subcontractors/_section.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/subcontractors/index.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/subcontractors/submit-bid-sent.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/subcontractors/submit-bid.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/work-with-us/index.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/questions/your-building/index.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/rate.json delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/rate.txt delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/score-full.txt delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/score-skim.txt delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/site.yaml delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/tasks-full.jsonl delete mode 100644 vendor/trainer/runs/contractor-full-2026-09-22/tasks-skim.jsonl delete mode 100644 vendor/trainer/runs/contractor-plan-2026-09-22/README.md delete mode 100644 vendor/trainer/runs/contractor-plan-2026-09-22/plan.yaml delete mode 100644 vendor/trainer/runs/contractor-plan-2026-09-22/reply.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/README.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/answers-full-seed0.jsonl delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/answers-full-seed1.jsonl delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/answers-full-seed2.jsonl delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/llm/01-prompt.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/llm/01-reply.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/model.json delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/plan.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/llm/01-prompt.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/llm/01-reply.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/llm/02-prompt.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/llm/02-reply.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/model.json delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/plan.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/rated/rate.json delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/aggregates.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/01-aggregates.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/02-questions_crew_index.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/03-questions_crew_report-site-issue-sent.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/04-questions_crew_report-site-issue.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/05-questions_decide_subcontractor-application.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/06-questions_index.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/07-questions_project_managers_index.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/08-questions_received_building-problem.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/09-questions_received_job-application.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/10-questions_received_new-build-project.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/11-questions_received_subcontractor-application.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/12-questions_safety_officer_index.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/needs.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/crew/_section.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/crew/index.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/crew/report-site-issue-sent.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/crew/report-site-issue.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/decide/subcontractor-application.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/index.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/project_managers/_section.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/project_managers/index.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/received/building-problem.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/received/job-application.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/received/new-build-project.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/received/subcontractor-application.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/safety_officer/_section.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/safety_officer/index.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/site.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/words.json delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/01-prompt.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/01-reply.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/02-prompt.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/02-reply.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/03-prompt.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/03-reply.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/plan.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/aggregates.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/needs.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/crew/_section.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/crew/index.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/crew/site-report-sent.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/crew/site-report.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/decide/enquiry.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/decide/subcontractor-application.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/index.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/join/index.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/project_managers/_section.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/project_managers/index.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/received/enquiry.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/received/job-application.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/received/subcontractor-application.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/safety_officer/_section.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/safety_officer/index.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/work/index.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/site.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/words.json delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/rated/rate.json delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/aggregates.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/01-aggregates.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/02-questions_crew_index.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/03-questions_crew_site-report-sent.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/04-questions_crew_site-report.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/05-questions_index.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/06-questions_project_managers_index.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/07-questions_received_building-problem.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/08-questions_received_job-application.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/09-questions_received_known-project.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/10-questions_received_subcontractor-application.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/11-questions_safety_officer_index.yaml.md delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/needs.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/crew/_section.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/crew/index.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/crew/site-report-sent.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/crew/site-report.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/index.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/project_managers/_section.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/project_managers/index.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/received/building-problem.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/received/job-application.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/received/known-project.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/received/subcontractor-application.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/safety_officer/_section.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/safety_officer/index.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/site.yaml delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/site/words.json delete mode 100755 vendor/trainer/runs/contractor-planned-2026-09-24/spread.sh delete mode 100644 vendor/trainer/runs/contractor-planned-2026-09-24/tasks-full.jsonl delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/README.md delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/aggregates.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/answers-full.jsonl delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/answers-skim.jsonl delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/build.log delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/llm/01-questions_bidra_index.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/llm/02-questions_foresatte_index.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/llm/03-questions_index.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/llm/04-questions_kasserer_index.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/llm/05-questions_received_avgiftssak.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/llm/06-questions_received_frivillig.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/llm/07-questions_received_innmelding.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/llm/08-questions_received_sponsor.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/llm/09-questions_styret_index.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/llm/10-questions_trenere_baneproblem-sent.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/llm/11-questions_trenere_baneproblem.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/llm/12-questions_trenere_index.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/model.json delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/needs.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/questions/bidra/index.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/questions/foresatte/index.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/questions/index.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/questions/kasserer/_section.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/questions/kasserer/index.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/questions/received/avgiftssak.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/questions/received/frivillig.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/questions/received/innmelding.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/questions/received/sponsor.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/questions/styret/_section.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/questions/styret/index.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/questions/trenere/_section.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/questions/trenere/baneproblem-sent.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/questions/trenere/baneproblem.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/questions/trenere/index.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/rate.json delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/rate.txt delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/score-full.txt delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/score-skim.txt delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/site.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/tasks-full.jsonl delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-22/tasks-skim.jsonl delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/README.md delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/answers-full-seed0.jsonl delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/answers-full-seed1.jsonl delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/answers-full-seed2.jsonl delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/model.json delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/rated/rate.json delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/site/aggregates.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/site/needs.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/bidra/index.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/foresatte/index.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/index.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/kasserer/_section.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/kasserer/index.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/received/avgiftssak.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/received/frivillig.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/received/innmelding.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/received/sponsor.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/styret/_section.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/styret/index.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/trenere/_section.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/trenere/baneproblem-sent.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/trenere/baneproblem.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/trenere/index.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/site/site.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/site/words.json delete mode 100755 vendor/trainer/runs/fotballklubb-2026-09-24/spread.sh delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/tasks-full.jsonl delete mode 100644 vendor/trainer/runs/fotballklubb-2026-09-24/words-short.json delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/README.md delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/aggregates.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/answers-full.jsonl delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/answers-skim.jsonl delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/build.log delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/01-questions_bidra_index.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/02-questions_foresatte_index.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/03-questions_index.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/04-questions_kasserer_index.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/05-questions_received_avgiftssak.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/06-questions_received_frivillig.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/07-questions_received_innmelding.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/08-questions_received_sponsor.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/09-questions_styret_index.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/10-questions_trenere_baneproblem-sent.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/11-questions_trenere_baneproblem.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/12-questions_trenere_index.yaml.md delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/model.json delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/needs.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/bidra/index.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/foresatte/index.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/index.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/kasserer/_section.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/kasserer/index.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/received/avgiftssak.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/received/frivillig.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/received/innmelding.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/received/sponsor.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/styret/_section.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/styret/index.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/trenere/_section.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/trenere/baneproblem-sent.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/trenere/baneproblem.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/trenere/index.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/rate.json delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/rate.txt delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/score-full.txt delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/score-skim.txt delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/site.yaml delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/tasks-full.jsonl delete mode 100644 vendor/trainer/runs/fotballklubb-claude-2026-09-22/tasks-skim.jsonl delete mode 100644 vendor/trainer/runs/hire-2026-09-22/README.md delete mode 100644 vendor/trainer/runs/hire-2026-09-22/aggregates.yaml delete mode 100644 vendor/trainer/runs/hire-2026-09-22/answers-full.jsonl delete mode 100644 vendor/trainer/runs/hire-2026-09-22/answers-skim.jsonl delete mode 100644 vendor/trainer/runs/hire-2026-09-22/build.log delete mode 100644 vendor/trainer/runs/hire-2026-09-22/llm/01-questions_counter_index.yaml.md delete mode 100644 vendor/trainer/runs/hire-2026-09-22/llm/02-questions_firms_index.yaml.md delete mode 100644 vendor/trainer/runs/hire-2026-09-22/llm/03-questions_hiring_index.yaml.md delete mode 100644 vendor/trainer/runs/hire-2026-09-22/llm/04-questions_index.yaml.md delete mode 100644 vendor/trainer/runs/hire-2026-09-22/llm/05-questions_office_index.yaml.md delete mode 100644 vendor/trainer/runs/hire-2026-09-22/llm/06-questions_received_account-request.yaml.md delete mode 100644 vendor/trainer/runs/hire-2026-09-22/llm/07-questions_received_breakdown.yaml.md delete mode 100644 vendor/trainer/runs/hire-2026-09-22/llm/08-questions_received_hire-request.yaml.md delete mode 100644 vendor/trainer/runs/hire-2026-09-22/llm/09-questions_yard_damage-on-return-sent.yaml.md delete mode 100644 vendor/trainer/runs/hire-2026-09-22/llm/10-questions_yard_damage-on-return.yaml.md delete mode 100644 vendor/trainer/runs/hire-2026-09-22/llm/11-questions_yard_index.yaml.md delete mode 100644 vendor/trainer/runs/hire-2026-09-22/model.json delete mode 100644 vendor/trainer/runs/hire-2026-09-22/needs.yaml delete mode 100644 vendor/trainer/runs/hire-2026-09-22/questions/counter/_section.yaml delete mode 100644 vendor/trainer/runs/hire-2026-09-22/questions/counter/index.yaml delete mode 100644 vendor/trainer/runs/hire-2026-09-22/questions/firms/index.yaml delete mode 100644 vendor/trainer/runs/hire-2026-09-22/questions/hiring/index.yaml delete mode 100644 vendor/trainer/runs/hire-2026-09-22/questions/index.yaml delete mode 100644 vendor/trainer/runs/hire-2026-09-22/questions/office/_section.yaml delete mode 100644 vendor/trainer/runs/hire-2026-09-22/questions/office/index.yaml delete mode 100644 vendor/trainer/runs/hire-2026-09-22/questions/received/account-request.yaml delete mode 100644 vendor/trainer/runs/hire-2026-09-22/questions/received/breakdown.yaml delete mode 100644 vendor/trainer/runs/hire-2026-09-22/questions/received/hire-request.yaml delete mode 100644 vendor/trainer/runs/hire-2026-09-22/questions/yard/_section.yaml delete mode 100644 vendor/trainer/runs/hire-2026-09-22/questions/yard/damage-on-return-sent.yaml delete mode 100644 vendor/trainer/runs/hire-2026-09-22/questions/yard/damage-on-return.yaml delete mode 100644 vendor/trainer/runs/hire-2026-09-22/questions/yard/index.yaml delete mode 100644 vendor/trainer/runs/hire-2026-09-22/rate.json delete mode 100644 vendor/trainer/runs/hire-2026-09-22/rate.txt delete mode 100644 vendor/trainer/runs/hire-2026-09-22/score-full.txt delete mode 100644 vendor/trainer/runs/hire-2026-09-22/score-skim.txt delete mode 100644 vendor/trainer/runs/hire-2026-09-22/site.yaml delete mode 100644 vendor/trainer/runs/hire-2026-09-22/tasks-full.jsonl delete mode 100644 vendor/trainer/runs/hire-2026-09-22/tasks-skim.jsonl delete mode 100644 vendor/trainer/runs/permits-2026-09-25/README.md delete mode 100644 vendor/trainer/runs/permits-2026-09-25/aggregates.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/answers-full-seed1.jsonl delete mode 100644 vendor/trainer/runs/permits-2026-09-25/answers-full-seed2.jsonl delete mode 100644 vendor/trainer/runs/permits-2026-09-25/answers-full-seed3.jsonl delete mode 100644 vendor/trainer/runs/permits-2026-09-25/cases.jsonl delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/aggregates.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/needs.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/agencies/_section.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/agencies/hearing-answer-sent.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/agencies/hearing-answer.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/agencies/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/appeals_board/_section.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/appeals_board/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/approved_firms/_section.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/approved_firms/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/approved_firms/permit-application-sent.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/approved_firms/permit-application.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/building-near-me/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/case_officers/_section.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/case_officers/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/case_officers/request-hearing-sent.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/case_officers/request-hearing.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/appeal.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/exemption-request.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/firm-approval.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/objection.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/permit-application.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/pre-application-meeting.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/small-works-application.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/front_desk/_section.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/front_desk/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/front_desk/log-counter-enquiry-sent.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/front_desk/log-counter-enquiry.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/inspectors/_section.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/inspectors/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/inspectors/inspection-finding-sent.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/inspectors/inspection-finding.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/appeal.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/case-status-enquiry.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/completion-request.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/exemption-request.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/firm-approval.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/illegal-building-report.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/objection.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/pre-application-meeting.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/small-works-application.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/section_head/_section.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/section_head/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/status/appeals/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/status/applications/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/status/completions/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/status/exemptions/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/status/objections/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/questions/want-to-build/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/fixed/site.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/needs.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/agencies/_section.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/agencies/hearing-answer-sent.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/agencies/hearing-answer.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/agencies/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/appeals_board/_section.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/appeals_board/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/approved_firms/_section.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/approved_firms/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/approved_firms/permit-application-sent.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/approved_firms/permit-application.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/building-near-me/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/case_officers/_section.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/case_officers/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/case_officers/request-hearing-sent.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/case_officers/request-hearing.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/decide/appeal.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/decide/exemption-request.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/decide/firm-approval.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/decide/objection.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/decide/permit-application.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/decide/pre-application-meeting.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/decide/small-works-application.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/front_desk/_section.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/front_desk/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/front_desk/log-counter-enquiry-sent.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/front_desk/log-counter-enquiry.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/inspectors/_section.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/inspectors/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/inspectors/inspection-finding-sent.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/inspectors/inspection-finding.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/received/appeal.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/received/case-status-enquiry.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/received/completion-request.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/received/exemption-request.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/received/firm-approval.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/received/illegal-building-report.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/received/objection.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/received/pre-application-meeting.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/received/small-works-application.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/section_head/_section.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/section_head/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/status/appeals/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/status/applications/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/status/completions/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/status/exemptions/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/status/objections/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/questions/want-to-build/index.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/site.yaml delete mode 100644 vendor/trainer/runs/permits-2026-09-25/tasks-full.jsonl delete mode 100644 vendor/trainer/runs/permits-2026-09-25/words.json delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/aggregates.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/answers-full-seed1.jsonl delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/answers-full-seed2.jsonl delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/answers-full-seed3.jsonl delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/needs.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/after-a-decision/index.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/agencies/_section.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/agencies/hearing-answer-sent.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/agencies/hearing-answer.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/agencies/index.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/appeals_board/_section.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/appeals_board/index.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/approved_firms/_section.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/approved_firms/index.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/approved_firms/permit-application-sent.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/approved_firms/permit-application.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/building-near-me/index.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/case_officers/_section.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/case_officers/index.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/case_officers/request-hearing-sent.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/case_officers/request-hearing.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/appeal.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/exemption-request.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/firm-approval.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/objection.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/permit-application.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/pre-application-meeting.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/small-works-application.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/front_desk/_section.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/front_desk/index.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/front_desk/log-counter-enquiry-sent.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/front_desk/log-counter-enquiry.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/index.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/inspectors/_section.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/inspectors/index.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/inspectors/inspection-finding-sent.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/inspectors/inspection-finding.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/received/appeal.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/received/case-status-enquiry.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/received/completion-request.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/received/exemption-request.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/received/firm-approval.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/received/illegal-building-report.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/received/objection.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/received/pre-application-meeting.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/received/small-works-application.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/section_head/_section.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/section_head/index.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/status/appeals/index.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/status/applications/index.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/status/completions/index.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/status/exemptions/index.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/status/objections/index.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/want-to-build/index.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/questions/work-as-a-firm/index.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/site.yaml delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/tasks-full.jsonl delete mode 100644 vendor/trainer/runs/permits-doors-2026-09-25/words.json delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/README.md delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/llm/01-prompt.md delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/llm/01-reply.md delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/llm/02-prompt.md delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/llm/02-reply.md delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/llm/03-prompt.md delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/llm/03-reply.md delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/plan.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/aggregates.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/needs.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/agencies/_section.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/agencies/index.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/appeals_board/_section.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/appeals_board/index.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/_section.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/completion-certificate-sent.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/completion-certificate.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/firm-application-sent.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/firm-application.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/index.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/temporary-permission-sent.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/temporary-permission.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/build/index.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/case_officers/_section.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/case_officers/hearing-request-sent.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/case_officers/hearing-request.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/case_officers/index.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/decide/application.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/decide/firm-application.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/decide/pre-application-meeting.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/firm/index.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/_section.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/index.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/logged-objection-sent.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/logged-objection.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/logged-report-sent.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/logged-report.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/head_of_section/_section.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/head_of_section/index.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/index.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/inspectors/_section.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/inspectors/index.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/inspectors/inspection-sent.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/inspectors/inspection.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/appeal.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/application.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/exemption.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/firm-approval.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/illegal-building-report.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/objection.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/pre-application-meeting.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/status/applications/[key].yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/status/applications/index.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/questions/status/approved_firm_requests/index.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/site.yaml delete mode 100644 vendor/trainer/runs/permits-plan-2026-09-30/site/words.json delete mode 100644 vendor/trainer/runs/physio-2026-09-22/README.md delete mode 100644 vendor/trainer/runs/physio-2026-09-22/aggregates.yaml delete mode 100644 vendor/trainer/runs/physio-2026-09-22/answers-full.jsonl delete mode 100644 vendor/trainer/runs/physio-2026-09-22/answers-skim.jsonl delete mode 100644 vendor/trainer/runs/physio-2026-09-22/build.log delete mode 100644 vendor/trainer/runs/physio-2026-09-22/llm/01-questions_index.yaml.md delete mode 100644 vendor/trainer/runs/physio-2026-09-22/llm/02-questions_patients_index.yaml.md delete mode 100644 vendor/trainer/runs/physio-2026-09-22/llm/03-questions_received_move-or-cancel.yaml.md delete mode 100644 vendor/trainer/runs/physio-2026-09-22/llm/04-questions_received_new-patient.yaml.md delete mode 100644 vendor/trainer/runs/physio-2026-09-22/llm/05-questions_received_referral.yaml.md delete mode 100644 vendor/trainer/runs/physio-2026-09-22/llm/06-questions_reception_index.yaml.md delete mode 100644 vendor/trainer/runs/physio-2026-09-22/llm/07-questions_reception_insurance-approval-sent.yaml.md delete mode 100644 vendor/trainer/runs/physio-2026-09-22/llm/08-questions_reception_insurance-approval.yaml.md delete mode 100644 vendor/trainer/runs/physio-2026-09-22/llm/09-questions_referrers_index.yaml.md delete mode 100644 vendor/trainer/runs/physio-2026-09-22/llm/10-questions_therapists_index.yaml.md delete mode 100644 vendor/trainer/runs/physio-2026-09-22/llm/11-questions_therapists_no-show-sent.yaml.md delete mode 100644 vendor/trainer/runs/physio-2026-09-22/llm/12-questions_therapists_no-show.yaml.md delete mode 100644 vendor/trainer/runs/physio-2026-09-22/model.json delete mode 100644 vendor/trainer/runs/physio-2026-09-22/needs.yaml delete mode 100644 vendor/trainer/runs/physio-2026-09-22/questions/index.yaml delete mode 100644 vendor/trainer/runs/physio-2026-09-22/questions/patients/index.yaml delete mode 100644 vendor/trainer/runs/physio-2026-09-22/questions/received/move-or-cancel.yaml delete mode 100644 vendor/trainer/runs/physio-2026-09-22/questions/received/new-patient.yaml delete mode 100644 vendor/trainer/runs/physio-2026-09-22/questions/received/referral.yaml delete mode 100644 vendor/trainer/runs/physio-2026-09-22/questions/reception/_section.yaml delete mode 100644 vendor/trainer/runs/physio-2026-09-22/questions/reception/index.yaml delete mode 100644 vendor/trainer/runs/physio-2026-09-22/questions/reception/insurance-approval-sent.yaml delete mode 100644 vendor/trainer/runs/physio-2026-09-22/questions/reception/insurance-approval.yaml delete mode 100644 vendor/trainer/runs/physio-2026-09-22/questions/referrers/index.yaml delete mode 100644 vendor/trainer/runs/physio-2026-09-22/questions/therapists/_section.yaml delete mode 100644 vendor/trainer/runs/physio-2026-09-22/questions/therapists/index.yaml delete mode 100644 vendor/trainer/runs/physio-2026-09-22/questions/therapists/no-show-sent.yaml delete mode 100644 vendor/trainer/runs/physio-2026-09-22/questions/therapists/no-show.yaml delete mode 100644 vendor/trainer/runs/physio-2026-09-22/rate.json delete mode 100644 vendor/trainer/runs/physio-2026-09-22/rate.txt delete mode 100644 vendor/trainer/runs/physio-2026-09-22/score-full.txt delete mode 100644 vendor/trainer/runs/physio-2026-09-22/score-skim.txt delete mode 100644 vendor/trainer/runs/physio-2026-09-22/site.yaml delete mode 100644 vendor/trainer/runs/physio-2026-09-22/tasks-full.jsonl delete mode 100644 vendor/trainer/runs/physio-2026-09-22/tasks-skim.jsonl delete mode 100644 vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/README.md delete mode 100644 vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/generator.log delete mode 100644 vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/needs.yaml delete mode 100644 vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/01-reply.md delete mode 100644 vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/02-reply.md delete mode 100644 vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/03-reply.md delete mode 100644 vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/04-reply.md delete mode 100644 vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/05-reply.md delete mode 100644 vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/06-reply.md delete mode 100644 vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/07-reply.md delete mode 100644 vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/08-reply.md delete mode 100644 vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/09-reply.md delete mode 100644 vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/10-reply.md delete mode 100644 vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/verifier-last.log delete mode 100755 vendor/trainer/runs/spread.sh delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/README.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/aggregates.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/answers-full.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/answers-skim.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/build.log delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/01-questions_arrangementskomite_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/02-questions_bidra_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/03-questions_decide_dele-utstyr.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/04-questions_decide_kan-hjelpe.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/05-questions_decide_trenger-hjelp.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/06-questions_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/07-questions_kasserer_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/08-questions_komiteer_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/09-questions_komiteer_utlegg-sent.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/10-questions_komiteer_utlegg.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/11-questions_lekeplasskomite_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/12-questions_medlem_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/13-questions_melde-fra_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/14-questions_naboer_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/15-questions_nabohjelp_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/16-questions_received_anleggsfeil.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/17-questions_received_bli-medlem.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/18-questions_received_dele-utstyr.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/19-questions_received_endre-medlemskap.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/20-questions_received_hjelpe-til.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/21-questions_received_horingsinnspill.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/22-questions_received_kan-hjelpe.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/23-questions_received_komite.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/24-questions_received_trafikkfare.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/25-questions_received_trenger-hjelp.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/26-questions_styret_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/27-questions_trafikkomite_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/model.json delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/needs.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/arrangementskomite/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/arrangementskomite/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/bidra/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/decide/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/decide/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/decide/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/kasserer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/kasserer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/komiteer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/komiteer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/komiteer/utlegg-sent.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/komiteer/utlegg.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/lekeplasskomite/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/lekeplasskomite/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/medlem/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/melde-fra/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/naboer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/nabohjelp/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/nabohjelp/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/anleggsfeil.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/bli-medlem.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/endre-medlemskap.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/hjelpe-til.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/horingsinnspill.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/komite.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/trafikkfare.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/styret/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/styret/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/trafikkomite/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/trafikkomite/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/rate.json delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/rate.txt delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/score-full.txt delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/score-skim.txt delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/site.yaml delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/tasks-full.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-cards-2026-09-23/tasks-skim.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/README.md delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/aggregates.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/answers-full.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/answers-skim.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/build.log delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/01-questions_arrangementskomite_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/02-questions_bidra_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/03-questions_decide_dele-utstyr.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/04-questions_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/05-questions_kasserer_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/06-questions_komiteer_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/07-questions_komiteer_utlegg-sent.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/08-questions_komiteer_utlegg.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/09-questions_lekeplasskomite_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/10-questions_medlem_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/11-questions_melde-fra_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/12-questions_received_anleggsfeil.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/13-questions_received_bli-medlem.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/14-questions_received_dele-utstyr.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/15-questions_received_endre-medlemskap.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/16-questions_received_hjelpe-til.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/17-questions_received_horingsinnspill.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/18-questions_received_komite.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/19-questions_received_trafikkfare.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/20-questions_styret_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/21-questions_trafikkomite_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/model.json delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/needs.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/arrangementskomite/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/arrangementskomite/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/bidra/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/decide/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/kasserer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/kasserer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/komiteer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/komiteer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/komiteer/utlegg-sent.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/komiteer/utlegg.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/lekeplasskomite/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/lekeplasskomite/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/medlem/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/melde-fra/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/anleggsfeil.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/bli-medlem.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/endre-medlemskap.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/hjelpe-til.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/horingsinnspill.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/komite.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/trafikkfare.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/styret/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/styret/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/trafikkomite/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/trafikkomite/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/rate.json delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/rate.txt delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/score-full.txt delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/score-skim.txt delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/site.yaml delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/tasks-full.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-claude-2026-09-22/tasks-skim.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/README.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/aggregates.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/answers-full.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/answers-skim.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/build.log delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/01-questions_arrangementer_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/02-questions_bidra_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/03-questions_decide_dele-utstyr.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/04-questions_decide_kan-hjelpe.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/05-questions_decide_trenger-hjelp.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/06-questions_horingsinstans_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/07-questions_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/08-questions_kasserer_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/09-questions_komiteer_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/10-questions_komiteer_utlegg-sent.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/11-questions_komiteer_utlegg.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/12-questions_lekeplasser_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/13-questions_medlem_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/14-questions_melde-fra_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/15-questions_naboer_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/16-questions_nabohjelp_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/17-questions_received_anleggsfeil.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/18-questions_received_bli-medlem.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/19-questions_received_dele-utstyr.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/20-questions_received_endre-medlemskap.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/21-questions_received_hjelpe-til.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/22-questions_received_horingsinnspill.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/23-questions_received_kan-hjelpe.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/24-questions_received_komite.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/25-questions_received_trafikkfare.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/26-questions_received_trenger-hjelp.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/27-questions_status_anleggsfeil_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/28-questions_status_oppslag_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/29-questions_status_trafikkmeldinger_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/30-questions_styret_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/31-questions_trafikk_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/model.json delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/needs.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/arrangementer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/arrangementer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/bidra/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/decide/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/decide/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/decide/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/horingsinstans/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/horingsinstans/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/kasserer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/kasserer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/komiteer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/komiteer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/komiteer/utlegg-sent.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/komiteer/utlegg.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/lekeplasser/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/lekeplasser/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/medlem/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/melde-fra/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/naboer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/nabohjelp/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/nabohjelp/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/anleggsfeil.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/bli-medlem.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/endre-medlemskap.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/hjelpe-til.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/horingsinnspill.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/komite.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/trafikkfare.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/status/anleggsfeil/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/status/oppslag/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/status/trafikkmeldinger/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/styret/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/styret/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/trafikk/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/trafikk/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/rate.json delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/rate.txt delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/score-full.txt delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/score-skim.txt delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/site.yaml delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/tasks-full.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-committees-2026-09-23/tasks-skim.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/README.md delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/aggregates.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/needs.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/arrangementer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/arrangementer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/bidra/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/decide/bli-medlem.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/decide/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/decide/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/decide/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/horingsinstans/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/horingsinstans/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/kasserer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/kasserer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/komiteer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/komiteer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/komiteer/utlegg-sent.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/komiteer/utlegg.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/lekeplasser/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/lekeplasser/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/medlem/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/melde-fra/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/naboer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/nabohjelp/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/nabohjelp/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/anleggsfeil.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/bli-medlem.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/endre-medlemskap.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/hjelpe-til.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/horingsinnspill.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/komite.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/trafikkfare.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/status/anleggsfeil/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/status/oppslag/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/status/trafikkmeldinger/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/styret/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/styret/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/trafikk/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/trafikk/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/site.yaml delete mode 100644 vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/words.json delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/README.md delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/answers-full.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/answers-skim.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/iris.log delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/model.json delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/opener-no.json delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/opener-only.json delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/score.log delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/aggregates.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/needs.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/arrangementer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/arrangementer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/decide/bli-medlem.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/decide/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/decide/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/decide/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/horingsinstans/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/horingsinstans/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/kasserer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/kasserer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/komiteer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/komiteer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/komiteer/utlegg-sent.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/komiteer/utlegg.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/lekeplasser/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/lekeplasser/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/nabohjelp/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/nabohjelp/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/anleggsfeil.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/bli-medlem.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/endre-medlemskap.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/hjelpe-til.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/horingsinnspill.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/komite.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/trafikkfare.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/status/anleggsfeil/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/status/oppslag/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/status/trafikkmeldinger/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/styret/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/styret/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/trafikk/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/trafikk/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/site.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/words.json delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/rated/rate.json delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/score.log delete mode 100755 vendor/trainer/runs/tomtervel-flat-2026-09-23/score.sh delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/aggregates.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/needs.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/arrangementer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/arrangementer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/decide/bli-medlem.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/decide/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/decide/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/decide/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/horingsinstans/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/horingsinstans/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/kasserer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/kasserer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/komiteer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/komiteer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/komiteer/utlegg-sent.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/komiteer/utlegg.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/lekeplasser/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/lekeplasser/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/nabohjelp/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/nabohjelp/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/anleggsfeil.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/bli-medlem.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/endre-medlemskap.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/hjelpe-til.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/horingsinnspill.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/komite.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/trafikkfare.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/status/anleggsfeil/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/status/oppslag/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/status/trafikkmeldinger/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/styret/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/styret/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/trafikk/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/trafikk/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/site.yaml delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/site/words.json delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/tasks-full.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/tasks-skim.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-flat-2026-09-23/words.json delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/README.md delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/build.log delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/aggregates.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/llm/09-questions_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/needs.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/arrangementer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/arrangementer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/bidra/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/decide/bli-medlem.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/decide/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/decide/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/decide/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/horingsinstans/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/horingsinstans/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/kasserer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/kasserer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/komiteer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/komiteer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/komiteer/utlegg-sent.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/komiteer/utlegg.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/lekeplasser/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/lekeplasser/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/medlem/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/melde-fra/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/naboer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/nabohjelp/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/nabohjelp/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/anleggsfeil.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/bli-medlem.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/endre-medlemskap.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/hjelpe-til.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/horingsinnspill.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/komite.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/trafikkfare.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/status/anleggsfeil/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/status/oppslag/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/status/trafikkmeldinger/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/styret/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/styret/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/trafikk/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/trafikk/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/site.yaml delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/words.json delete mode 100644 vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/words-frontdoor.json delete mode 100644 vendor/trainer/runs/tomtervel-invites-2026-09-23/README.md delete mode 100644 vendor/trainer/runs/tomtervel-invites-2026-09-23/invite-words-no.json delete mode 100644 vendor/trainer/runs/tomtervel-invites-2026-09-23/words.json delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/aggregates.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/answers-full.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/answers-skim.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/build.log delete mode 100755 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/kanidm-client.sh delete mode 100755 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/kasse-instance.sh delete mode 100755 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/kasse-login.sh delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/01-questions_arrangementskomite_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/02-questions_bidra_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/03-questions_decide_dele-utstyr.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/04-questions_decide_kan-hjelpe.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/05-questions_decide_trenger-hjelp.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/06-questions_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/07-questions_kasserer_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/08-questions_komiteer_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/09-questions_komiteer_utlegg-sent.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/10-questions_komiteer_utlegg.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/11-questions_lekeplasskomite_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/12-questions_medlem_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/13-questions_melde-fra_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/14-questions_naboer_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/15-questions_nabohjelp_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/16-questions_received_anleggsfeil.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/17-questions_received_bli-medlem.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/18-questions_received_dele-utstyr.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/19-questions_received_endre-medlemskap.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/20-questions_received_hjelpe-til.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/21-questions_received_horingsinnspill.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/22-questions_received_kan-hjelpe.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/23-questions_received_komite.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/24-questions_received_trafikkfare.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/25-questions_received_trenger-hjelp.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/26-questions_styret_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/27-questions_trafikkomite_index.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/model.json delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/needs.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/arrangementskomite/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/arrangementskomite/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/bidra/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/decide/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/decide/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/decide/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/kasserer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/kasserer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/komiteer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/komiteer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/komiteer/utlegg-sent.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/komiteer/utlegg.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/lekeplasskomite/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/lekeplasskomite/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/medlem/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/melde-fra/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/naboer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/nabohjelp/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/nabohjelp/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/anleggsfeil.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/bli-medlem.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/endre-medlemskap.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/hjelpe-til.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/horingsinnspill.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/komite.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/trafikkfare.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/styret/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/styret/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/trafikkomite/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/trafikkomite/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/rate.json delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/rate.txt delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/score-full.txt delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/score-skim.txt delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/site.yaml delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/tasks-full.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/tasks-skim.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/README.md delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-full-seed1.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-full-seed2.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-full-seed3.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-full.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-r3-full-seed0.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-r3-full-seed1.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-r3-full-seed2.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-skim-seed1.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-skim-seed2.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-skim-seed3.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-skim.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/cold-front.json delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/iris.log delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/model-cold.json delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/model-r3.json delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/model.json delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/opener-only.json delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/score.log delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/aggregates.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/needs.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/arrangementer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/arrangementer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/bidra/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/decide/bli-medlem.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/decide/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/decide/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/decide/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/horingsinstans/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/horingsinstans/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/kasserer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/kasserer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/komiteer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/komiteer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/komiteer/utlegg-sent.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/komiteer/utlegg.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/lekeplasser/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/lekeplasser/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/medlem/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/melde-fra/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/naboer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/nabohjelp/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/nabohjelp/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/anleggsfeil.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/bli-medlem.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/endre-medlemskap.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/hjelpe-til.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/horingsinnspill.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/komite.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/trafikkfare.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/status/anleggsfeil/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/status/oppslag/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/status/trafikkmeldinger/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/styret/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/styret/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/trafikk/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/trafikk/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/site.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/words.json delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/rated/rate.json delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/score.log delete mode 100755 vendor/trainer/runs/tomtervel-opener-2026-09-23/score.sh delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/aggregates.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/needs.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/arrangementer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/arrangementer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/bidra/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/decide/bli-medlem.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/decide/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/decide/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/decide/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/horingsinstans/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/horingsinstans/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/kasserer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/kasserer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/komiteer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/komiteer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/komiteer/utlegg-sent.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/komiteer/utlegg.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/lekeplasser/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/lekeplasser/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/medlem/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/melde-fra/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/naboer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/nabohjelp/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/nabohjelp/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/anleggsfeil.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/bli-medlem.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/endre-medlemskap.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/hjelpe-til.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/horingsinnspill.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/komite.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/trafikkfare.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/status/anleggsfeil/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/status/oppslag/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/status/trafikkmeldinger/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/styret/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/styret/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/trafikk/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/trafikk/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/site.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/words.json delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/aggregates.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/needs.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/arrangementer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/arrangementer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/bidra/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/decide/bli-medlem.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/decide/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/decide/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/decide/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/horingsinstans/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/horingsinstans/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/kasserer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/kasserer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/komiteer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/komiteer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/komiteer/utlegg-sent.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/komiteer/utlegg.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/lekeplasser/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/lekeplasser/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/medlem/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/melde-fra/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/naboer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/nabohjelp/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/nabohjelp/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/anleggsfeil.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/bli-medlem.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/endre-medlemskap.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/hjelpe-til.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/horingsinnspill.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/komite.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/trafikkfare.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/status/anleggsfeil/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/status/oppslag/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/status/trafikkmeldinger/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/styret/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/styret/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/trafikk/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/trafikk/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/site.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/words.json delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/aggregates.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/llm/01-aggregates.yaml.md delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/needs.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/arrangementer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/arrangementer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/bidra/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/decide/bli-medlem.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/decide/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/decide/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/decide/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/horingsinstans/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/horingsinstans/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/kasserer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/kasserer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/komiteer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/komiteer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/komiteer/utlegg-sent.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/komiteer/utlegg.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/lekeplasser/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/lekeplasser/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/medlem/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/melde-fra/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/naboer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/nabohjelp/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/nabohjelp/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/anleggsfeil.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/bli-medlem.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/endre-medlemskap.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/hjelpe-til.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/horingsinnspill.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/komite.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/trafikkfare.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/status/anleggsfeil/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/status/oppslag/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/status/trafikkmeldinger/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/styret/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/styret/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/trafikk/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/trafikk/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/site.yaml delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/site/words.json delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/tasks-full.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/tasks-r3-full.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/tasks-skim.jsonl delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/words-cold.json delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/words-r2.json delete mode 100644 vendor/trainer/runs/tomtervel-opener-2026-09-23/words-r3.json delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/README.md delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/aggregates.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/needs.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/arrangementer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/arrangementer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/bidra/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/decide/bli-medlem.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/decide/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/decide/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/decide/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/horingsinstans/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/horingsinstans/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/kasserer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/kasserer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/komiteer/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/komiteer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/komiteer/utlegg-sent.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/komiteer/utlegg.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/lekeplasser/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/lekeplasser/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/medlem/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/melde-fra/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/naboer/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/nabohjelp/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/nabohjelp/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/anleggsfeil.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/bli-medlem.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/dele-utstyr.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/endre-medlemskap.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/hjelpe-til.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/horingsinnspill.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/kan-hjelpe.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/komite.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/melde-seg.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/trafikkfare.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/trenger-hjelp.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/redaktor/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/redaktor/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/status/anleggsfeil/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/status/oppslag/[key].yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/status/oppslag/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/status/trafikkmeldinger/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/styret/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/styret/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/trafikk/_section.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/trafikk/index.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/site.yaml delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/words.json delete mode 100644 vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/words-board.json delete mode 100644 vendor/trainer/runs/tomtervel-plan-claude-2026-09-22/README.md delete mode 100644 vendor/trainer/runs/tomtervel-plan-claude-2026-09-22/llm/01-prompt.md delete mode 100644 vendor/trainer/runs/tomtervel-plan-claude-2026-09-22/llm/01-reply.md delete mode 100644 vendor/trainer/runs/tomtervel-plan-claude-2026-09-22/plan.log delete mode 100644 vendor/trainer/runs/tomtervel-plan-claude-2026-09-22/plan.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-21/answers-full.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-21/answers-skim.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-21/ollama/ans-full-granite4.1.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-21/ollama/ans-full-qwen3.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-21/ollama/ans-skim-granite4.1.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-21/ollama/ans-skim-qwen3.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-21/tasks.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/README.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/answers-full-seed1.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/answers-full-seed2.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/answers-full-seed3.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/answers-full.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/answers-skim-seed1.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/answers-skim-seed2.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/answers-skim-seed3.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/answers-skim.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/iris.log delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/model.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/overrides-r3.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/overrides-r4.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/overrides-r5.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/overrides.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/answers-full.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/answers-skim.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/rated/rate.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/score.log delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/aggregates.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/01-questions_build_index.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/02-questions_custodians_index.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/03-questions_decide_subscribe.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/04-questions_index.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/05-questions_join_index.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/06-questions_owners_index.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/07-questions_owners_prospect-sent.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/08-questions_owners_prospect.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/09-questions_received_collaborate.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/10-questions_received_commission.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/11-questions_received_custody.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/12-questions_received_propose.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/13-questions_received_subscribe.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/14-questions_received_trial.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/needs.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/build/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/custodians/_section.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/custodians/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/decide/subscribe.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/join/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/owners/_section.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/owners/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/owners/prospect-sent.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/owners/prospect.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/collaborate.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/commission.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/custody.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/propose.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/subscribe.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/trial.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/site.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/site/words.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/tasks-full.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r1/tasks-skim.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/answers-full.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/answers-skim.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/rated/rate.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/score.log delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/aggregates.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/01-questions_build_index.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/02-questions_custodians_index.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/03-questions_decide_subscribe.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/04-questions_index.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/05-questions_join_index.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/06-questions_owners_index.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/07-questions_owners_prospect-sent.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/08-questions_owners_prospect.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/09-questions_received_collaborate.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/10-questions_received_commission.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/11-questions_received_custody.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/12-questions_received_propose.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/13-questions_received_subscribe.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/14-questions_received_trial.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/needs.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/build/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/custodians/_section.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/custodians/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/decide/subscribe.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/join/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/owners/_section.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/owners/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/owners/prospect-sent.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/owners/prospect.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/collaborate.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/commission.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/custody.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/propose.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/subscribe.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/trial.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/site.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r2/site/words.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/answers-full.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/answers-skim.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/rated/rate.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/score.log delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/aggregates.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/01-questions_build_index.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/02-questions_custodians_index.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/03-questions_decide_subscribe.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/04-questions_index.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/05-questions_join_index.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/06-questions_owners_index.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/07-questions_owners_prospect-sent.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/08-questions_owners_prospect.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/09-questions_received_collaborate.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/10-questions_received_commission.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/11-questions_received_custody.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/12-questions_received_propose.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/13-questions_received_subscribe.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/14-questions_received_trial.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/needs.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/build/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/custodians/_section.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/custodians/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/decide/subscribe.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/join/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/owners/_section.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/owners/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/owners/prospect-sent.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/owners/prospect.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/collaborate.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/commission.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/custody.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/propose.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/subscribe.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/trial.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/site.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r3/site/words.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/answers-full.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/answers-skim.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/rated/rate.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/score.log delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/aggregates.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/01-questions_build_index.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/02-questions_custodians_index.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/03-questions_decide_subscribe.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/04-questions_index.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/05-questions_join_index.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/06-questions_owners_index.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/07-questions_owners_prospect-sent.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/08-questions_owners_prospect.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/09-questions_received_collaborate.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/10-questions_received_commission.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/11-questions_received_custody.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/12-questions_received_propose.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/13-questions_received_subscribe.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/14-questions_received_trial.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/needs.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/custodians/_section.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/custodians/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/decide/subscribe.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/owners/_section.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/owners/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/owners/prospect-sent.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/owners/prospect.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/collaborate.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/commission.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/custody.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/propose.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/subscribe.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/trial.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/site.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/r4/site/words.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/rated-mails-before/rate.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/rated/rate.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/score.log delete mode 100755 vendor/trainer/runs/uhhm-2026-09-23/score.sh delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/site/aggregates.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/site/model.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/site/needs.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/site/questions/custodians/_section.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/site/questions/custodians/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/site/questions/decide/commission.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/site/questions/decide/custody.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/site/questions/decide/subscribe.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/site/questions/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/site/questions/owners/_section.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/site/questions/owners/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/site/questions/owners/prospect-sent.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/site/questions/owners/prospect.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/collaborate.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/commission.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/custody.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/propose.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/subscribe.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/trial.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/site/site.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/site/words.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/tasks-full.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/tasks-skim.jsonl delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/words-r2.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/words-r3.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/words-r4.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/words-r5.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/words-r7.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-23/words-r8.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/README.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/aggregates-before-naming.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/build-invite.log delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/build-mails.log delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/build.log delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/model.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/overrides.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/rate-round1.txt delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/rate.txt delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/rated/rate.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/aggregates.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/llm/01-aggregates.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/llm/16-questions_status_development_proposals_index.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/llm/17-site.yaml.md delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/needs.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/questions/custodians/_section.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/questions/custodians/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/questions/decide/commission.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/questions/decide/custody.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/questions/decide/subscribe.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/questions/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/questions/owners/_section.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/questions/owners/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/questions/owners/prospect-sent.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/questions/owners/prospect.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/collaborate.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/commission.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/custody.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/propose.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/subscribe.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/trial.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/questions/status/development_proposals/index.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/site.yaml delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/site/words.json delete mode 100644 vendor/trainer/runs/uhhm-2026-09-28/words-status.json diff --git a/.gitea/workflows/publish.yml b/.gitea/workflows/publish.yml index 39fd447..0dca9cc 100644 --- a/.gitea/workflows/publish.yml +++ b/.gitea/workflows/publish.yml @@ -56,75 +56,12 @@ jobs: - name: Build run: SITE_NAME=${{ vars.PORTAL_SITE_NAME }} cargo leptos build --release - # The lint (uhhm/iris) is versioned as portal: this step re-pins - # iris to the tag being released, builds and tests it against it, - # and pushes the matching iris tag, which iris's own CI publishes. - # A portal change to something the lint reads fails the release - # right here. Needs IRIS_PUSH_USER (a variable) and IRIS_PUSH_TOKEN - # (a secret) that may push to uhhm/iris; the workflow's own token - # is scoped to this repo. A re-run of a tag whose iris tag already - # exists just builds that. - - name: Release iris to match - env: - # The shared cargo home is read-only for the runner, and a git - # dependency has to be cloned into one (same as uhhm/iris's CI). - CARGO_HOME: /var/local/cargo-target/iris-cargo-home - RUSTC_WRAPPER: /usr/bin/sccache - IRIS_PUSH_USER: ${{ vars.IRIS_PUSH_USER }} - IRIS_PUSH_TOKEN: ${{ secrets.IRIS_PUSH_TOKEN }} - run: | - set -euo pipefail - tag="${{ github.ref_name }}" - ver="${tag#v}" - host="${{ github.server_url }}" - remote="https://${IRIS_PUSH_USER}:${IRIS_PUSH_TOKEN}@${host#https://}/uhhm/iris.git" - # Re-pin, version, changelog: idempotent, so a retry on a fresh - # clone redoes exactly the same edits. - match() { - sed -i -E "s|^(portal = \{ git = \"[^\"]+\", tag = \")[^\"]+(\")|\1$tag\2|" Cargo.toml - sed -i -E "0,/^version = \"[^\"]+\"/s//version = \"$ver\"/" Cargo.toml - cargo update -q -p portal - awk -v h="## $ver ($(date -u +%F)) - portal $tag" -v l="- Matches portal $tag (released by portal's publish job)." \ - 'done==0 && /^## /{print h; print ""; print l; print ""; done=1} {print}' CHANGELOG.md > CHANGELOG.new - mv CHANGELOG.new CHANGELOG.md - git config user.name "portal release" - git config user.email "portal@uhhm.no" - git commit -qam "Match portal $tag" - git tag "$tag" - } - # Someone may push to iris main while this job builds; a push - # then fails as non-fast-forward, and the answer is to start - # over on a fresh clone, once. - for attempt in 1 2; do - cd "$GITHUB_WORKSPACE" - rm -rf iris-src - git clone -q "$host/uhhm/iris.git" iris-src - cd iris-src - if git rev-parse -q --verify "refs/tags/$tag" >/dev/null; then - echo "iris $tag already exists, building it" - git checkout -q "$tag" - cargo build --release - cargo test - break - fi - match - cargo build --release - cargo test - if git push -q "$remote" main "$tag"; then - echo "pushed iris $tag" - break - fi - echo "push rejected on attempt $attempt (iris main moved), retrying on a fresh clone" - [ "$attempt" = 2 ] && exit 1 - done - - name: Package run: | set -euo pipefail tag="${{ github.ref_name }}" stage=$(mktemp -d) cp "$CARGO_TARGET_DIR/release/portal" "$stage/portal" - cp "$CARGO_TARGET_DIR/release/iris" "$stage/iris" # hash-files = true: leptos resolves hash.txt next to the running # binary, so it ships beside portal in the release dir. cp "$CARGO_TARGET_DIR/release/hash.txt" "$stage/hash.txt" @@ -132,7 +69,10 @@ jobs: # not affected by CARGO_TARGET_DIR - only the plain `cargo build` # outputs (release/, front/) move with that override. cp -r target/site "$stage/site" - tar -C "$stage" -czf "portal-$tag.tar.gz" portal iris hash.txt site + tar -C "$stage" -czf "portal-$tag.tar.gz" portal hash.txt site + # The bare binary as well: a content repo's CI runs `portal lint` + # and needs nothing else from the release. + cp "$stage/portal" portal-bin rm -rf "$stage" # The run's own ephemeral token has write access to this repo - @@ -159,4 +99,7 @@ jobs: curl -sf -X POST -H "$auth" \ -F "attachment=@portal-$tag.tar.gz" \ "$api/releases/$id/assets?name=portal-$tag.tar.gz" > /dev/null + curl -sf -X POST -H "$auth" \ + -F "attachment=@portal-bin" \ + "$api/releases/$id/assets?name=portal" > /dev/null echo "published $tag" diff --git a/CHANGELOG.md b/CHANGELOG.md index d086420..80cb539 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,10 @@ One line per change, grouped by the release that shipped it. Newest first. A release is a Cargo.toml bump plus a `v` tag; the content repos pin the tag they run (see the end of this file). +## Unreleased + +- One binary. The lint (uhhm/iris) and the trainer (uhhm/portal-trainer) are commands of `portal`: `portal serve` (the default), `portal lint`, and `portal plan`, `build`, `answer`, `rate`, `prefer`, `score`, `simulate`, `compare`, `report`, `generate`. Same source, same version, so the site, the lint and the trainer never disagree about what content means; both histories are merged in. The release attaches the bare `portal` binary beside the tarball, so a content repo's CI downloads it and runs `portal lint`. No more iris releases; the pins that exist keep working. The trainer's `plans/`, `intakes/`, `engines/`, `sectors/` and its reference prompt live here now; its `runs/` stay in uhhm/portal-trainer. Docs gained "Training a site" and "The lint". + ## 0.5.11 (2026-09-30) - Storylines (`src/content/variants.rs`, `docs/storylines.md`): any text a person reads may be a list, one entry per storyline, every list the same length; a visitor is given one storyline for the whole site (the `portal_storyline` cookie, a year) and reads it on every page and in every mail about their case. What the machine reads - a field's `name`, `options`, states, groups, paths - never varies. The lint refuses a list of another length. Records and answer events carry `storyline`, and `GET /report` gives counts per bucket, per storyline, per state, and nothing else. diff --git a/Cargo.toml b/Cargo.toml index 73c8add..ec4e77b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -11,7 +11,9 @@ leptos = { version = "0.8" } leptos_meta = { version = "0.8" } leptos_router = { version = "0.8" } serde = { version = "1", features = ["derive"] } -serde_json = "1" +# preserve_order: a rendered page is read by the people who own it, so +# the keys come out as written (name, then description), not sorted. +serde_json = { version = "1", features = ["preserve_order"] } # Inline markdown for content descriptions (links, emphasis, code) - # runs on both server and client renders, so not feature-gated. pulldown-cmark = { version = "0.13", default-features = false, features = ["html"] } diff --git a/docs/README.md b/docs/README.md index e477bbd..33cbb48 100644 --- a/docs/README.md +++ b/docs/README.md @@ -14,12 +14,15 @@ engine does with it. | [Storylines](storylines.md) | The same site told several ways: lists of texts, one storyline per visitor, counted per storyline. | | [Memberships](memberships.md) | Groups kept by portal itself: a membership as a case, a person as a phone number first, and the provider only saying who. | | [Operations](operations.md) | Releasing, deploying, adding a site, environment variables. | +| [Training a site](training.md) | `portal plan` and `portal build`: a business in plain words becomes a content repo, held to the lint. | +| [The lint](lint.md) | `portal lint`: what a content repo's CI runs before anything reaches a site. | | [Filesystem routes](design/filesystem-routes.md) | Why the `questions/` tree is the router. | -Two repos in the same family carry their own docs: +One repo in the same family carries its own docs: -- [uhhm/iris](https://project.uhhm.no/uhhm/iris) — the lint. Versioned - as portal and released by portal's publish job; it is the thing a - content repo's CI runs before anything reaches a site. - [uhhm/gdo](https://project.uhhm.no/uhhm/gdo) — the mailer. Delivers what content asked to be sent, and carries replies back. + +The lint (once uhhm/iris) and the trainer (once uhhm/portal-trainer) +are commands of the `portal` binary since 0.6; their chapters are +above, and the trainer's runs stay in the old repo. diff --git a/docs/SUMMARY.md b/docs/SUMMARY.md index 2231d5f..294f957 100644 --- a/docs/SUMMARY.md +++ b/docs/SUMMARY.md @@ -12,6 +12,11 @@ - [Memberships](memberships.md) - [Operations](operations.md) +# The trainer and the lint + +- [Training a site](training.md) +- [The lint](lint.md) + # How it is made - [Architecture](architecture.md) @@ -20,3 +25,4 @@ --- [Changelog](changelog.md) +[The lint's changelog, to 0.5.11](lint-changelog.md) diff --git a/vendor/lint/CHANGELOG.md b/docs/lint-changelog.md similarity index 100% rename from vendor/lint/CHANGELOG.md rename to docs/lint-changelog.md diff --git a/docs/lint.md b/docs/lint.md new file mode 100644 index 0000000..563a342 --- /dev/null +++ b/docs/lint.md @@ -0,0 +1,54 @@ +# The lint + +The iris over a site. A content push is an incoming wormhole; nothing +comes through until it checks out. + +``` +portal lint --path questions # a local checkout +portal lint --repo https://project.uhhm.no/uhhm/questions +portal lint replay --path questions --nats nats://127.0.0.1:14222 +``` + +It was its own binary, iris, until portal 0.6: the same code, released +as portal's twin. Now it is the `portal` binary's `lint` command, so a +content repo's CI downloads the release and runs it: + +```yaml + - run: | + curl -sfL "https://project.uhhm.no/uhhm/portal/releases/download/$PORTAL_RELEASE/portal" -o portal + chmod +x portal && ./portal lint --path questions +``` + +`check` loads a content repo exactly the way the running site does, +validates it (every action lands on a page, every transition is one +the state machine allows, every recorded bucket is read back +somewhere), and then holds it to the business needs the repo declares +in `needs.yaml`, when it has one: + +- a path of submissions gets each kind of visitor's answer into the + bucket it names, within a submission and required-field budget; +- the handling group holds a desk over that bucket, and every + finished state is reachable through the buttons it (and any + `also_moved_by` group) offers; no record strands on the way; +- every stage the business named is a state of the machine. + +A need marked `planned` warns instead of failing. Exit status is the +verdict, so a content repo's CI is one line. + +Beyond the verdict, `check` exports what a trainer needs to grade the +wording: `--needs-tasks` writes the personas as typed choice tasks +(`--skim` for headings only), `--needs-score` grades an engine's +answers, and `--needs-sim` writes a resolved model of the whole site. +`portal lint replay` runs simulated cases through the site's real aggregate +engine on a throwaway JetStream and reports every bucket by state; +`--report-only` takes the same scorecard from a live site's buckets. +See [Training a site](training.md) for what sits around those. + +## Matching the site + +The lint is the site: `portal lint` and `portal serve` are one binary +built from one source, so a content shape the site reads is a shape +the lint knows, at the same version. A content repo pins +`PORTAL_RELEASE` to what its site runs and lints with that release's +`portal`. The `IRIS_RELEASE` pins from before portal 0.6 keep working +against the iris releases that exist; nothing new is published there. diff --git a/vendor/trainer/README.md b/docs/training.md similarity index 95% rename from vendor/trainer/README.md rename to docs/training.md index 8e884e0..3c61c34 100644 --- a/vendor/trainer/README.md +++ b/docs/training.md @@ -1,18 +1,23 @@ -# portal-trainer +# Training a site A business describes itself in plain words: what it does, who comes to it, what it keeps track of and through which stages, and who handles -what. `portal-trainer` turns that into a working -[portal](https://project.uhhm.no/uhhm/portal) content repo: a question -series for every role, the state machines behind them, and a desk per -handling role. No software is written for the business; the only thing -produced is content, and every line of it is held to a verifier. +what. The trainer, `portal plan` and `portal build`, turns that into a +working content repo: a question series for every role, the state +machines behind them, and a desk per handling role. No software is +written for the business; the only thing produced is content, and +every line of it is held to the lint (`portal lint`), which is the +same code as the site, at the same version. + +The trainer was its own repo, uhhm/portal-trainer, until portal 0.6; +its runs (`runs/`, the lab notebook of every site trained so far) +stay there. ## Build: structure from the plan, words from the model ``` -portal-trainer build --plan plans/contractor.yaml --out out/nordvik \ - --lint iris --llm "MODEL=sonnet engines/claude.sh" +portal build --plan plans/contractor.yaml --out out/nordvik \ + --lint "portal lint" --llm "MODEL=sonnet engines/claude.sh" ``` A `plan.yaml` is a needs spec that also says what each form collects @@ -200,7 +205,7 @@ the business's own words and held-out personas. ## Plan: the intake, read by a model, checked by a person ``` -portal-trainer plan --intake intakes/contractor.yaml --out out/nordvik \ +portal plan --intake intakes/contractor.yaml --out out/nordvik \ --personas sectors/construction/needs.yaml \ --llm "MODEL=nemotron-3.5-lightning:30b-a3b engines/ollama.sh" ``` @@ -250,9 +255,9 @@ Model output is only ever written to `aggregates.yaml`, `site.yaml` and `questions/**.yaml` inside the output directory. ``` -portal-trainer generate --intake intakes/contractor.yaml --out out/nordvik \ - --lint iris --llm engines/ollama.sh -portal-trainer answer --tasks tasks.jsonl --llm engines/ollama.sh > answers.jsonl +portal generate --intake intakes/contractor.yaml --out out/nordvik \ + --lint "portal lint" --llm engines/ollama.sh +portal answer --tasks tasks.jsonl --llm engines/ollama.sh > answers.jsonl ``` `answer` puts one task per call to the visitor model, with the options @@ -317,7 +322,7 @@ and the scorers read all of it. ## Scoring a built site ``` -portal-trainer score --site out/nordvik --out out/scored \ +portal score --site out/nordvik --out out/scored \ --iris /var/local/cargo-target/release/iris \ --llm "MODEL=qwen3:8b engines/ollama.sh" ``` @@ -333,7 +338,7 @@ one visitor model against tasks iris wrote, and: ``` iris check --path out/nordvik/questions --needs-sim model.json -portal-trainer rate --model model.json --out out/rated --repo out/nordvik \ +portal rate --model model.json --out out/rated --repo out/nordvik \ --llm "MODEL=qwen3:8b engines/ollama.sh" ``` diff --git a/vendor/trainer/engines/anthropic.sh b/engines/anthropic.sh similarity index 100% rename from vendor/trainer/engines/anthropic.sh rename to engines/anthropic.sh diff --git a/vendor/trainer/engines/claude.sh b/engines/claude.sh similarity index 100% rename from vendor/trainer/engines/claude.sh rename to engines/claude.sh diff --git a/vendor/trainer/engines/mailbox.sh b/engines/mailbox.sh similarity index 100% rename from vendor/trainer/engines/mailbox.sh rename to engines/mailbox.sh diff --git a/vendor/trainer/engines/ollama.sh b/engines/ollama.sh similarity index 100% rename from vendor/trainer/engines/ollama.sh rename to engines/ollama.sh diff --git a/vendor/trainer/intakes/building-permits-personas.yaml b/intakes/building-permits-personas.yaml similarity index 100% rename from vendor/trainer/intakes/building-permits-personas.yaml rename to intakes/building-permits-personas.yaml diff --git a/vendor/trainer/intakes/building-permits.yaml b/intakes/building-permits.yaml similarity index 100% rename from vendor/trainer/intakes/building-permits.yaml rename to intakes/building-permits.yaml diff --git a/vendor/trainer/intakes/contractor.yaml b/intakes/contractor.yaml similarity index 100% rename from vendor/trainer/intakes/contractor.yaml rename to intakes/contractor.yaml diff --git a/vendor/trainer/intakes/fotballklubb.yaml b/intakes/fotballklubb.yaml similarity index 100% rename from vendor/trainer/intakes/fotballklubb.yaml rename to intakes/fotballklubb.yaml diff --git a/vendor/trainer/intakes/hire.yaml b/intakes/hire.yaml similarity index 100% rename from vendor/trainer/intakes/hire.yaml rename to intakes/hire.yaml diff --git a/vendor/trainer/intakes/physio.yaml b/intakes/physio.yaml similarity index 100% rename from vendor/trainer/intakes/physio.yaml rename to intakes/physio.yaml diff --git a/vendor/trainer/intakes/rehab-entreprenor-no.yaml b/intakes/rehab-entreprenor-no.yaml similarity index 100% rename from vendor/trainer/intakes/rehab-entreprenor-no.yaml rename to intakes/rehab-entreprenor-no.yaml diff --git a/vendor/trainer/intakes/tomtervel.yaml b/intakes/tomtervel.yaml similarity index 100% rename from vendor/trainer/intakes/tomtervel.yaml rename to intakes/tomtervel.yaml diff --git a/vendor/trainer/plans/building-permits.yaml b/plans/building-permits.yaml similarity index 100% rename from vendor/trainer/plans/building-permits.yaml rename to plans/building-permits.yaml diff --git a/vendor/trainer/plans/contractor-full.yaml b/plans/contractor-full.yaml similarity index 100% rename from vendor/trainer/plans/contractor-full.yaml rename to plans/contractor-full.yaml diff --git a/vendor/trainer/plans/contractor.yaml b/plans/contractor.yaml similarity index 100% rename from vendor/trainer/plans/contractor.yaml rename to plans/contractor.yaml diff --git a/vendor/trainer/plans/fotballklubb.yaml b/plans/fotballklubb.yaml similarity index 100% rename from vendor/trainer/plans/fotballklubb.yaml rename to plans/fotballklubb.yaml diff --git a/vendor/trainer/plans/hire.yaml b/plans/hire.yaml similarity index 100% rename from vendor/trainer/plans/hire.yaml rename to plans/hire.yaml diff --git a/vendor/trainer/plans/physio.yaml b/plans/physio.yaml similarity index 100% rename from vendor/trainer/plans/physio.yaml rename to plans/physio.yaml diff --git a/vendor/trainer/plans/tomtervel.yaml b/plans/tomtervel.yaml similarity index 100% rename from vendor/trainer/plans/tomtervel.yaml rename to plans/tomtervel.yaml diff --git a/vendor/trainer/plans/uhhm.yaml b/plans/uhhm.yaml similarity index 100% rename from vendor/trainer/plans/uhhm.yaml rename to plans/uhhm.yaml diff --git a/vendor/trainer/portal-portal/aggregates.yaml b/portal-portal/aggregates.yaml similarity index 100% rename from vendor/trainer/portal-portal/aggregates.yaml rename to portal-portal/aggregates.yaml diff --git a/vendor/trainer/portal-portal/needs.yaml b/portal-portal/needs.yaml similarity index 100% rename from vendor/trainer/portal-portal/needs.yaml rename to portal-portal/needs.yaml diff --git a/vendor/trainer/portal-portal/questions/desk/_section.yaml b/portal-portal/questions/desk/_section.yaml similarity index 100% rename from vendor/trainer/portal-portal/questions/desk/_section.yaml rename to portal-portal/questions/desk/_section.yaml diff --git a/vendor/trainer/portal-portal/questions/desk/index.yaml b/portal-portal/questions/desk/index.yaml similarity index 100% rename from vendor/trainer/portal-portal/questions/desk/index.yaml rename to portal-portal/questions/desk/index.yaml diff --git a/vendor/trainer/portal-portal/questions/how.yaml b/portal-portal/questions/how.yaml similarity index 100% rename from vendor/trainer/portal-portal/questions/how.yaml rename to portal-portal/questions/how.yaml diff --git a/vendor/trainer/portal-portal/questions/index.yaml b/portal-portal/questions/index.yaml similarity index 100% rename from vendor/trainer/portal-portal/questions/index.yaml rename to portal-portal/questions/index.yaml diff --git a/vendor/trainer/portal-portal/questions/received.yaml b/portal-portal/questions/received.yaml similarity index 100% rename from vendor/trainer/portal-portal/questions/received.yaml rename to portal-portal/questions/received.yaml diff --git a/vendor/trainer/portal-portal/site.yaml b/portal-portal/site.yaml similarity index 100% rename from vendor/trainer/portal-portal/site.yaml rename to portal-portal/site.yaml diff --git a/vendor/trainer/sectors/construction/needs.yaml b/sectors/construction/needs.yaml similarity index 100% rename from vendor/trainer/sectors/construction/needs.yaml rename to sectors/construction/needs.yaml diff --git a/vendor/trainer/sectors/software-studio/needs.yaml b/sectors/software-studio/needs.yaml similarity index 100% rename from vendor/trainer/sectors/software-studio/needs.yaml rename to sectors/software-studio/needs.yaml diff --git a/vendor/trainer/skill/SKILL.md b/skill/SKILL.md similarity index 100% rename from vendor/trainer/skill/SKILL.md rename to skill/SKILL.md diff --git a/src/lib.rs b/src/lib.rs index 5635369..eefabfa 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -37,6 +37,13 @@ pub mod seed; pub mod memberships; #[cfg(feature = "ssr")] pub mod report; +/// The lint: `portal lint`, what a content repo's CI runs (once uhhm/iris). +#[cfg(feature = "ssr")] +pub mod lint; +/// The trainer: `portal plan`, `portal build`, `portal report` and the +/// rest (once uhhm/portal-trainer). +#[cfg(feature = "ssr")] +pub mod trainer; pub mod maps; diff --git a/vendor/lint/src/check.rs b/src/lint/check.rs similarity index 92% rename from vendor/lint/src/check.rs rename to src/lint/check.rs index c3e8ab7..655a9cb 100644 --- a/vendor/lint/src/check.rs +++ b/src/lint/check.rs @@ -8,9 +8,9 @@ //! than compiled there - keeps that repo's CI coupling to "run a //! static binary," not "build a Rust workspace." -use crate::local::{load_aggregates_from_dir, load_from_dir, load_needs_from_dir, load_site_from_dir}; -use crate::needs; -use portal::{aggregates, content}; +use crate::lint::local::{load_aggregates_from_dir, load_from_dir, load_needs_from_dir, load_site_from_dir}; +use crate::lint::needs; +use crate::{aggregates, content}; pub async fn run(argv: Vec) -> anyhow::Result<()> { let mut args = argv.into_iter(); @@ -54,13 +54,15 @@ pub async fn run(argv: Vec) -> anyhow::Result<()> { load_needs_from_dir(&dir)?, ) } else if let Some(repo_url) = repo { - let questions = content::load_questions_from_gitea(&repo_url, &branch, &subdir).await?; - let aggregates_map = content::load_aggregates_from_gitea(&repo_url, &branch).await?; + // The first storyline of each, as the checks read it; the + // loaders have held every list of texts to the site's arity. + let questions = content::load_questions_from_gitea(&repo_url, &branch, &subdir).await?.at(0).clone(); + let aggregates_map = content::load_aggregates_from_gitea(&repo_url, &branch).await?.at(0).clone(); // load_site_from_gitea already validates; a missing file is // the default config, same as at portal boot. - let site = content::load_site_from_gitea(&repo_url, &branch).await?; + let site = content::load_site_from_gitea(&repo_url, &branch).await?.at(0).clone(); // Optional: a fetch failure means the repo declares no needs. - let needs_raw = portal::http::get_text(&format!("{}/needs.yaml?ref={branch}", content::gitea_raw_base(&repo_url)?), portal::http::GITEA_CAP).await.ok(); + let needs_raw = crate::http::get_text(&format!("{}/needs.yaml?ref={branch}", content::gitea_raw_base(&repo_url)?), crate::http::GITEA_CAP).await.ok(); (questions, aggregates_map, site, needs_raw) } else { eprintln!( @@ -96,7 +98,7 @@ pub async fn run(argv: Vec) -> anyhow::Result<()> { // The access policy the site will compile from this content. // It must type-check against portal's schema: a rule the // schema cannot express would grant nothing at runtime. - let policy = portal::access::Policy::from_content(&questions, &aggregates_map); + let policy = crate::access::Policy::from_content(&questions, &aggregates_map); if let Err(e) = policy.validate() { eprintln!("FAIL: access policy does not validate: {e}"); std::process::exit(1); @@ -129,7 +131,7 @@ pub async fn run(argv: Vec) -> anyhow::Result<()> { } } -/// The business-needs pass (see `crate::needs`): structure always, +/// The business-needs pass (see `crate::lint::needs`): structure always, /// then the wording tasks written out and/or an engine's answers /// scored, when asked. A repo without `needs.yaml` skips all of it. fn check_needs( diff --git a/vendor/lint/src/local.rs b/src/lint/local.rs similarity index 87% rename from vendor/lint/src/local.rs rename to src/lint/local.rs index 7519c1d..f8f0647 100644 --- a/vendor/lint/src/local.rs +++ b/src/lint/local.rs @@ -4,7 +4,7 @@ //! needs_replay). `dir` is always the pages directory (`questions/`); //! `site.yaml`, `aggregates.yaml` and `needs.yaml` sit one level up. -use portal::{aggregates, content}; +use crate::{aggregates, content}; /// The offline counterpart to `content::load_site_from_gitea` - /// `site.yaml` lives at the repo root like `aggregates.yaml`, and is @@ -19,7 +19,10 @@ pub fn load_site_from_dir(dir: &str) -> anyhow::Result { } let raw = std::fs::read_to_string(&site_path) .map_err(|e| anyhow::anyhow!("reading {}: {e}", site_path.display()))?; - serde_yaml::from_str(&raw).map_err(|e| anyhow::anyhow!("parsing {}: {e}", site_path.display())) + // The first storyline, held to the arity (content::variants). + let files = vec![("site.yaml".to_string(), raw)]; + content::arity(&files)?; + serde_yaml::from_str(&content::storyline(&files, 0)[0].1).map_err(|e| anyhow::anyhow!("parsing {}: {e}", site_path.display())) } /// The offline counterpart to `content::load_aggregates_from_gitea` - @@ -42,7 +45,10 @@ pub fn load_aggregates_from_dir( } let raw = std::fs::read_to_string(&aggregates_path) .map_err(|e| anyhow::anyhow!("reading {}: {e}", aggregates_path.display()))?; - aggregates::parse_aggregates_yaml(&raw) + // The first storyline, held to the arity (content::variants). + let files = vec![("aggregates.yaml".to_string(), raw)]; + content::arity(&files)?; + aggregates::parse_aggregates_yaml(&content::storyline(&files, 0)[0].1) } /// The offline counterpart to `content::load_questions_from_gitea` - diff --git a/vendor/lint/src/main.rs b/src/lint/mod.rs similarity index 90% rename from vendor/lint/src/main.rs rename to src/lint/mod.rs index 2650810..03a835f 100644 --- a/vendor/lint/src/main.rs +++ b/src/lint/mod.rs @@ -23,9 +23,8 @@ mod local; mod needs; mod replay; -#[tokio::main] -async fn main() -> anyhow::Result<()> { - let mut argv: Vec = std::env::args().skip(1).collect(); +/// The lint, as `portal lint ...`: `argv` is everything after `portal`. +pub async fn run(mut argv: Vec) -> anyhow::Result<()> { // `iris --path questions` reads as `iris check --path questions`, // so the content repos' one-line CI keeps working as it was. match argv.first().map(String::as_str) { @@ -38,7 +37,7 @@ async fn main() -> anyhow::Result<()> { replay::run(argv).await } Some("--version") | Some("-V") => { - println!("iris {v} (portal v{v})", v = env!("CARGO_PKG_VERSION")); + println!("portal lint v{}", env!("CARGO_PKG_VERSION")); Ok(()) } Some(flag) if flag.starts_with("--") => check::run(argv).await, diff --git a/vendor/lint/src/needs.rs b/src/lint/needs.rs similarity index 99% rename from vendor/lint/src/needs.rs rename to src/lint/needs.rs index d3354d8..893bf4c 100644 --- a/vendor/lint/src/needs.rs +++ b/src/lint/needs.rs @@ -26,8 +26,8 @@ use std::collections::{BTreeMap, HashMap, HashSet, VecDeque}; use serde::{Deserialize, Serialize}; -use portal::aggregates::AggregateSchema; -use portal::content::{action_target_id, Alternative, Question}; +use crate::aggregates::AggregateSchema; +use crate::content::{action_target_id, Alternative, Question}; #[derive(Debug, Default, Deserialize)] #[serde(deny_unknown_fields)] @@ -817,8 +817,8 @@ pub fn score(tasks: &[Task], answers: &[Answer], hesitant_below: f64) -> Score { #[cfg(test)] mod tests { use super::*; - use portal::aggregates::parse_aggregates_yaml; - use portal::content::build_questions; + use crate::aggregates::parse_aggregates_yaml; + use crate::content::build_questions; fn site(desk_moves: &str) -> (Questions, HashMap) { let files = vec![ diff --git a/vendor/lint/src/replay.rs b/src/lint/replay.rs similarity index 95% rename from vendor/lint/src/replay.rs rename to src/lint/replay.rs index 17470c7..dc6f09d 100644 --- a/vendor/lint/src/replay.rs +++ b/src/lint/replay.rs @@ -15,10 +15,10 @@ use std::collections::{BTreeMap, HashMap}; use futures::StreamExt; -use portal::events::store::{ensure_stream, load_events}; -use crate::local::{load_aggregates_from_dir, load_from_dir, load_needs_from_dir}; -use crate::needs; -use portal::{aggregates, answers, content}; +use crate::events::store::{ensure_stream, load_events}; +use crate::lint::local::{load_aggregates_from_dir, load_from_dir, load_needs_from_dir}; +use crate::lint::needs; +use crate::{aggregates, answers, content}; pub async fn run(argv: Vec) -> anyhow::Result<()> { let value = |flag: &str| argv.iter().position(|a| a == flag).and_then(|i| argv.get(i + 1)).cloned(); @@ -53,7 +53,7 @@ pub async fn run(argv: Vec) -> anyhow::Result<()> { let (page, alternative) = step.map(|s| (s.page, s.alternative)).unwrap_or_default(); let id = format!("sim-{}-{}-{n}", case["persona"].as_str().unwrap_or("x"), case["run"]); let now = chrono::Utc::now().timestamp_millis(); - answers::store_answer(&js, &schemas, &need.lands_in, id.clone(), &page, &alternative, &case["record"], now).await?; + answers::store_answer(&js, &schemas, &need.lands_in, id.clone(), &page, &alternative, &case["record"], now, 0).await?; created += 1; for target in &states[1..] { match aggregates::transition(&js, schema, &id, target, serde_json::json!({"by": "simulation"}), now).await { diff --git a/src/main.rs b/src/main.rs index 7e94b3e..5aaf366 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,6 +1,31 @@ +/// One binary, three jobs: `portal` (or `portal serve`) runs a site; +/// `portal lint` checks a content repo the way the site reads it; +/// `portal plan`, `build`, `report` and the rest train one. The lint +/// and the trainer are the same code as the server, at the same +/// version, so they never disagree about what content means. #[cfg(feature = "ssr")] #[tokio::main] async fn main() -> anyhow::Result<()> { + let argv: Vec = std::env::args().skip(1).collect(); + match argv.first().map(String::as_str) { + Some("lint") => return portal::lint::run(argv[1..].to_vec()).await, + Some("plan" | "build" | "answer" | "rate" | "prefer" | "score" | "simulate" | "compare" | "report" | "generate") => { + // The trainer runs models through shell commands and waits + // on them; off the runtime's threads, as a CLI should. + return tokio::task::spawn_blocking(move || portal::trainer::run(argv)).await?; + } + Some("--version" | "-V") => { + println!("portal v{}", env!("CARGO_PKG_VERSION")); + return Ok(()); + } + Some("serve") | None => {} + Some(other) => anyhow::bail!("portal: unknown command {other:?}; one of serve, lint, plan, build, answer, rate, prefer, score, simulate, compare, report, generate"), + } + serve().await +} + +#[cfg(feature = "ssr")] +async fn serve() -> anyhow::Result<()> { use axum::{body::Body, extract::State, http::Request, response::IntoResponse, routing::{any, get, post}, Router}; use leptos::prelude::*; use leptos_axum::{generate_route_list, LeptosRoutes}; diff --git a/vendor/trainer/src/build.rs b/src/trainer/build.rs similarity index 99% rename from vendor/trainer/src/build.rs rename to src/trainer/build.rs index 78d3221..7d63bc1 100644 --- a/vendor/trainer/src/build.rs +++ b/src/trainer/build.rs @@ -23,7 +23,7 @@ use anyhow::{anyhow, bail, Context}; use serde::Deserialize; use serde_json::{json, Map, Value}; -use crate::simulate::first_object; +use crate::trainer::simulate::first_object; #[derive(Debug, Deserialize)] #[serde(deny_unknown_fields)] @@ -2367,7 +2367,7 @@ pub fn run(argv: &[String]) -> anyhow::Result<()> { let mut told: Vec = Vec::new(); for (t, tone) in tones.iter().enumerate() { let prompt = words_prompt(&plan, path, fallback, *tone); - let reply = crate::llm_with(&cmd, &prompt, &[("FORMAT", "json"), ("TEMPERATURE", "0.4")]).unwrap_or_default(); + let reply = crate::trainer::llm_with(&cmd, &prompt, &[("FORMAT", "json"), ("TEMPERATURE", "0.4")]).unwrap_or_default(); let suffix = if tones.len() > 1 { format!("-tone{}", t + 1) } else { String::new() }; std::fs::write(out.join(format!("llm/{:02}-{}{suffix}.md", n + 1, path.replace('/', "_"))), format!("{prompt}\n\n=== REPLY ===\n{reply}"))?; match first_object(&reply) { diff --git a/vendor/trainer/src/card.rs b/src/trainer/card.rs similarity index 100% rename from vendor/trainer/src/card.rs rename to src/trainer/card.rs diff --git a/vendor/trainer/src/main.rs b/src/trainer/mod.rs similarity index 98% rename from vendor/trainer/src/main.rs rename to src/trainer/mod.rs index 13655e1..0182eb4 100644 --- a/vendor/trainer/src/main.rs +++ b/src/trainer/mod.rs @@ -22,15 +22,15 @@ use std::process::{Command, Stdio}; use anyhow::{anyhow, bail, Context}; -mod build; +pub mod build; mod card; -mod plan; +pub mod plan; mod rate; mod report; mod score; mod simulate; -const REFERENCE: &str = include_str!("../generator/reference.md"); +pub const REFERENCE: &str = include_str!("reference.md"); struct Opts { intake: PathBuf, @@ -44,11 +44,11 @@ struct Opts { visitor: Option, } -fn main() -> anyhow::Result<()> { - // `answer --tasks [--llm ]`: the blind answerer alone, - // for grading an existing site with any backend. Answers go to - // stdout, ready for `question_lint --needs-score`. - let argv: Vec = std::env::args().skip(1).collect(); +/// The trainer, as `portal ...`: `argv` is everything after +/// `portal`. `answer --tasks [--llm ]` is the blind +/// answerer alone, for grading an existing site with any backend; +/// answers go to stdout, ready for `portal lint --needs-score`. +pub fn run(argv: Vec) -> anyhow::Result<()> { match argv.first().map(String::as_str) { Some("simulate") => return simulate::run(&argv), Some("compare") => return simulate::compare(&argv), diff --git a/vendor/trainer/src/plan.rs b/src/trainer/plan.rs similarity index 99% rename from vendor/trainer/src/plan.rs rename to src/trainer/plan.rs index 28728ef..ec90e14 100644 --- a/vendor/trainer/src/plan.rs +++ b/src/trainer/plan.rs @@ -16,8 +16,8 @@ use anyhow::{anyhow, bail, Context}; -use crate::build::Plan; -use crate::simulate::first_object; +use crate::trainer::build::Plan; +use crate::trainer::simulate::first_object; const REFERENCE: &str = r#"# plan.yaml @@ -262,7 +262,7 @@ pub fn run(argv: &[String]) -> anyhow::Result<()> { let prompt = format!( "{REFERENCE}\n\n# Task\n\nA business filled in this intake. Write its plan.yaml: every need the intake implies, for the public and for each role inside the business, with the stages read off how the business says things progress, the form each need collects, and how much each person will tolerate.\n\n## Intake\n\n{intake}\n{feedback}\nReply with the YAML only, no prose, no code fences." ); - let reply = crate::llm_with(&cmd, &prompt, &[("TEMPERATURE", "0.2")])?; + let reply = crate::trainer::llm_with(&cmd, &prompt, &[("TEMPERATURE", "0.2")])?; std::fs::write(out.join(format!("llm/{round:02}-prompt.md")), &prompt)?; std::fs::write(out.join(format!("llm/{round:02}-reply.md")), &reply)?; let yaml = extract_yaml(&reply); @@ -391,7 +391,7 @@ fn map_personas(cmd: &str, plan: &Plan, personas: &mut serde_yaml::Value) -> any needs.join("\n"), people.join("\n") ); - let reply = crate::llm_with(cmd, &prompt, &[("FORMAT", "json"), ("TEMPERATURE", "0.0")])?; + let reply = crate::trainer::llm_with(cmd, &prompt, &[("FORMAT", "json"), ("TEMPERATURE", "0.0")])?; let Some(mapping) = first_object(&reply) else { return Ok(0) }; let mut mapped = 0; for persona in list.iter_mut() { diff --git a/vendor/trainer/src/rate.rs b/src/trainer/rate.rs similarity index 99% rename from vendor/trainer/src/rate.rs rename to src/trainer/rate.rs index 2cb61c3..9828a53 100644 --- a/vendor/trainer/src/rate.rs +++ b/src/trainer/rate.rs @@ -30,8 +30,8 @@ use std::path::Path; use anyhow::{anyhow, Context}; use serde_json::{json, Value}; -use crate::card; -use crate::simulate::ask; +use crate::trainer::card; +use crate::trainer::simulate::ask; fn flag(argv: &[String], name: &str) -> Option { argv.iter().position(|a| a == name).and_then(|i| argv.get(i + 1)).cloned() diff --git a/vendor/trainer/generator/reference.md b/src/trainer/reference.md similarity index 100% rename from vendor/trainer/generator/reference.md rename to src/trainer/reference.md diff --git a/vendor/trainer/src/report.rs b/src/trainer/report.rs similarity index 100% rename from vendor/trainer/src/report.rs rename to src/trainer/report.rs diff --git a/vendor/trainer/src/score.rs b/src/trainer/score.rs similarity index 96% rename from vendor/trainer/src/score.rs rename to src/trainer/score.rs index 3a7d690..ce396ca 100644 --- a/vendor/trainer/src/score.rs +++ b/src/trainer/score.rs @@ -34,7 +34,7 @@ pub fn run(argv: &[String]) -> anyhow::Result<()> { let mut summary = serde_json::Map::new(); for (mode, tasks, skim) in [("full", &tasks_full, false), ("skim", &tasks_skim, true)] { eprintln!("score: the visitor answers {mode}"); - let answers = crate::answer_blind(&cmd, &std::fs::read_to_string(tasks)?, Some(&site), 0)?; + let answers = crate::trainer::answer_blind(&cmd, &std::fs::read_to_string(tasks)?, Some(&site), 0)?; let answers_path = out.join(format!("answers-{mode}.jsonl")); std::fs::write(&answers_path, &answers)?; let (tasks_arg, answers_arg) = (s(tasks), s(&answers_path)); @@ -65,7 +65,7 @@ pub fn run(argv: &[String]) -> anyhow::Result<()> { println!("== rate"); let rated = out.join("rated"); let rate_argv: Vec = ["rate", "--model", &s(&model), "--out", &s(&rated), "--repo", &s(&site), "--llm", &cmd].iter().map(|x| x.to_string()).collect(); - crate::rate::rate(&rate_argv)?; + crate::trainer::rate::rate(&rate_argv)?; summary.insert("site".into(), serde_json::json!(s(&site))); summary.insert("visitor".into(), serde_json::json!(cmd)); diff --git a/vendor/trainer/src/simulate.rs b/src/trainer/simulate.rs similarity index 99% rename from vendor/trainer/src/simulate.rs rename to src/trainer/simulate.rs index 89cabbf..6d06558 100644 --- a/vendor/trainer/src/simulate.rs +++ b/src/trainer/simulate.rs @@ -31,7 +31,7 @@ use anyhow::{anyhow, Context}; use serde::{Deserialize, Serialize}; use serde_json::{json, Value}; -use crate::llm_with; +use crate::trainer::llm_with; const TRAITS: &[&str] = &[ "is precise and businesslike", diff --git a/vendor/lint/.gitea/workflows/publish.yml b/vendor/lint/.gitea/workflows/publish.yml deleted file mode 100644 index 8351db9..0000000 --- a/vendor/lint/.gitea/workflows/publish.yml +++ /dev/null @@ -1,46 +0,0 @@ -name: Publish release - -# A `v*` tag builds the binary and attaches it to the Gitea release as -# `iris`, with the tag's CHANGELOG.md section as the notes. Content -# repos pin IRIS_RELEASE to one of these tags in their lint workflow. - -on: - push: - tags: ["v*"] - -jobs: - publish: - runs-on: bare - env: - # Writable, unlike the shared /var/local/cargo - see test.yml. - CARGO_HOME: /var/local/cargo-target/iris-cargo-home - RUSTC_WRAPPER: /usr/bin/sccache - RUSTUP_HOME: /var/local/rustup - PATH: /var/local/cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/bin - SCCACHE_DIR: /var/local/sccache - SCCACHE_SERVER_PORT: "4228" - CARGO_TARGET_DIR: /var/local/cargo-target - steps: - - uses: actions/checkout@v4 - - - name: Build - run: cargo build --release - - - name: Publish release - run: | - set -euo pipefail - tag="${{ github.ref_name }}" - api="${{ github.server_url }}/api/v1/repos/${{ github.repository }}" - auth="Authorization: token ${{ secrets.GITHUB_TOKEN }}" - notes=$(awk -v v="${tag#v}" '/^## /{p = ($2 == v)} p' CHANGELOG.md | tail -n +2) - body=$(jq -n --arg tag "$tag" --arg notes "$notes" '{tag_name: $tag, name: $tag, body: $notes}') - id=$(curl -sf -X POST -H "$auth" -H 'Content-Type: application/json' \ - -d "$body" "$api/releases" | jq .id) \ - || id=$(curl -sf -H "$auth" "$api/releases/tags/$tag" | jq .id) - for aid in $(curl -sf -H "$auth" "$api/releases/$id/assets" | jq '.[].id'); do - curl -sf -X DELETE -H "$auth" "$api/releases/$id/assets/$aid" - done - curl -sf -X POST -H "$auth" \ - -F "attachment=@/var/local/cargo-target/release/iris" \ - "$api/releases/$id/assets?name=iris" > /dev/null - echo "published $tag" diff --git a/vendor/lint/.gitea/workflows/test.yml b/vendor/lint/.gitea/workflows/test.yml deleted file mode 100644 index 93bbd7b..0000000 --- a/vendor/lint/.gitea/workflows/test.yml +++ /dev/null @@ -1,37 +0,0 @@ -name: Test - -on: - push: - branches: [main] - pull_request: - -jobs: - test: - runs-on: bare - env: - # Same shared toolchain and cache as uhhm/portal's workflows. - # Not the shared /var/local/cargo: the runner may only read it, and - # the portal git dependency has to be cloned into CARGO_HOME. This - # one lives under the writable target dir; the rustc wrapper the - # shared config would have set is given here instead. - CARGO_HOME: /var/local/cargo-target/iris-cargo-home - RUSTC_WRAPPER: /usr/bin/sccache - RUSTUP_HOME: /var/local/rustup - PATH: /var/local/cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/bin - SCCACHE_DIR: /var/local/sccache - SCCACHE_SERVER_PORT: "4228" - CARGO_TARGET_DIR: /var/local/cargo-target - steps: - - uses: actions/checkout@v4 - - - name: Test - run: cargo test - - # The one thing a lint must never do is reject the content it - # is meant to serve: every live content repo has to pass. - - name: Check the live content repos - run: | - cargo build --release - for repo in uhhm/questions redoal/questions; do - /var/local/cargo-target/release/iris check --repo "${{ github.server_url }}/$repo" - done diff --git a/vendor/lint/.gitignore b/vendor/lint/.gitignore deleted file mode 100644 index 2f7896d..0000000 --- a/vendor/lint/.gitignore +++ /dev/null @@ -1 +0,0 @@ -target/ diff --git a/vendor/lint/Cargo.lock b/vendor/lint/Cargo.lock deleted file mode 100644 index 05d00c5..0000000 --- a/vendor/lint/Cargo.lock +++ /dev/null @@ -1,5991 +0,0 @@ -# This file is automatically @generated by Cargo. -# It is not intended for manual editing. -version = 4 - -[[package]] -name = "aho-corasick" -version = "1.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c982642fa9e8606056828ee9a8505737230110bb1099153c79efe865c59d12ba" -dependencies = [ - "memchr", -] - -[[package]] -name = "allocator-api2" -version = "0.2.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" - -[[package]] -name = "android_system_properties" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae221649c9976a6f6c56ae1facf410f3ddb33cc661c4b7b61020a912d4237fbc" -dependencies = [ - "libc", -] - -[[package]] -name = "any_spawner" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1384d3fe1eecb464229fcf6eebb72306591c56bf27b373561489458a7c73027d" -dependencies = [ - "futures", - "thiserror 2.0.20", - "tokio", - "wasm-bindgen-futures", -] - -[[package]] -name = "anyhow" -version = "1.0.104" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "330a5ed07fa54e4702c9d6c4174f74427fc0ef6e214bbd677ae50a5099946470" - -[[package]] -name = "ar_archive_writer" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73cd58deff2140a0a8eae87e417bd01db68a33e148aa93d1e8cd837e55e312b6" -dependencies = [ - "object", -] - -[[package]] -name = "arc-swap" -version = "1.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c049c0be4daef0b145cb3555416b3b8ef5b7888a38aea1a3a155801fe7b0810b" -dependencies = [ - "rustversion", -] - -[[package]] -name = "arrayvec" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" - -[[package]] -name = "ascii-canvas" -version = "4.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef1e3e699d84ab1b0911a1010c5c106aa34ae89aeac103be5ce0c3859db1e891" -dependencies = [ - "term", -] - -[[package]] -name = "async-lock" -version = "3.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "290f7f2596bd5b78a9fec8088ccd89180d7f9f55b94b0576823bbbdc72ee8311" -dependencies = [ - "event-listener", - "event-listener-strategy", - "pin-project-lite", -] - -[[package]] -name = "async-nats" -version = "0.38.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76433c4de73442daedb3a59e991d94e85c14ebfc33db53dfcd347a21cd6ef4f8" -dependencies = [ - "base64 0.22.1", - "bytes", - "futures", - "memchr", - "nkeys", - "nuid", - "once_cell", - "pin-project", - "portable-atomic", - "rand 0.8.8", - "regex", - "ring", - "rustls-native-certs 0.7.3", - "rustls-pemfile", - "rustls-webpki 0.102.8", - "serde", - "serde_json", - "serde_nanos", - "serde_repr", - "thiserror 1.0.69", - "time", - "tokio", - "tokio-rustls 0.26.5", - "tokio-util", - "tokio-websockets", - "tracing", - "tryhard", - "url", -] - -[[package]] -name = "async-once-cell" -version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4288f83726785267c6f2ef073a3d83dc3f9b81464e9f99898240cced85fce35a" - -[[package]] -name = "async-trait" -version = "0.1.92" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82f6aeea286b8eb4dd3431a1be1b59d290ace00f5bfd8e2a159bc2a05e2c1667" -dependencies = [ - "proc-macro2", - "quote", - "syn 3.0.6", -] - -[[package]] -name = "atomic-waker" -version = "1.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" - -[[package]] -name = "attribute-derive" -version = "0.10.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05832cdddc8f2650cc2cc187cc2e952b8c133a48eb055f35211f61ee81502d77" -dependencies = [ - "attribute-derive-macro", - "derive-where", - "manyhow", - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] -name = "attribute-derive-macro" -version = "0.10.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a7cdbbd4bd005c5d3e2e9c885e6fa575db4f4a3572335b974d8db853b6beb61" -dependencies = [ - "collection_literals", - "interpolator", - "manyhow", - "proc-macro-utils", - "proc-macro2", - "quote", - "quote-use", - "syn 2.0.119", -] - -[[package]] -name = "autocfg" -version = "1.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2032f911046de80f0a198e0901378627c33f59ea0ac00e363d481118bd70a53" - -[[package]] -name = "aws-credential-types" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e93964ffdaf57857f544be3666a5f57570bb699e934700f11b49708f61bb556e" -dependencies = [ - "aws-smithy-async", - "aws-smithy-runtime-api", - "aws-smithy-types", - "zeroize", -] - -[[package]] -name = "aws-lc-rs" -version = "1.18.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b281d307588d634de920874890732659e2e7672f72b5e10e81badc1a8a83621e" -dependencies = [ - "aws-lc-sys", - "zeroize", -] - -[[package]] -name = "aws-lc-sys" -version = "0.45.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9bff6c3b54fad79a2e60b8102caf565819711497c1f5f092f49508e2f5c31b27" -dependencies = [ - "cc", - "cmake", - "dunce", - "fs_extra", - "pkg-config", -] - -[[package]] -name = "aws-runtime" -version = "1.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25b43ad47adc2517efe3d706559d94b97e50e80e0321b3cadbc9f77cee88adcd" -dependencies = [ - "aws-credential-types", - "aws-sigv4", - "aws-smithy-async", - "aws-smithy-eventstream", - "aws-smithy-http", - "aws-smithy-runtime", - "aws-smithy-runtime-api", - "aws-smithy-types", - "aws-types", - "bytes", - "bytes-utils", - "fastrand", - "http 0.2.12", - "http 1.5.0", - "http-body 0.4.6", - "http-body 1.1.0", - "percent-encoding", - "pin-project-lite", - "tracing", - "uuid", -] - -[[package]] -name = "aws-sdk-s3" -version = "1.148.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a61c1db3987ab6c8740fb87f248864687d50549401115244a84f02c3047b2d5" -dependencies = [ - "arc-swap", - "aws-credential-types", - "aws-runtime", - "aws-sigv4", - "aws-smithy-async", - "aws-smithy-checksums", - "aws-smithy-eventstream", - "aws-smithy-http", - "aws-smithy-json", - "aws-smithy-observability", - "aws-smithy-runtime", - "aws-smithy-runtime-api", - "aws-smithy-schema", - "aws-smithy-types", - "aws-smithy-xml", - "aws-types", - "bytes", - "fastrand", - "hex", - "hmac 0.13.0", - "http 0.2.12", - "http 1.5.0", - "http-body 1.1.0", - "lru", - "percent-encoding", - "regex-lite", - "sha2 0.11.0", - "tracing", - "url", -] - -[[package]] -name = "aws-sigv4" -version = "1.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31d955e76ff96acd555bf06fa0fa6d5bf9335fa84ae7c64481b20ae61d231f70" -dependencies = [ - "aws-credential-types", - "aws-smithy-eventstream", - "aws-smithy-http", - "aws-smithy-runtime-api", - "aws-smithy-types", - "bytes", - "crypto-bigint", - "form_urlencoded", - "hex", - "hmac 0.13.0", - "http 0.2.12", - "http 1.5.0", - "p256", - "percent-encoding", - "sha2 0.11.0", - "subtle", - "time", - "tracing", - "zeroize", -] - -[[package]] -name = "aws-smithy-async" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f02e407fb3b54891734224b9ffac8a71fdd35f542500fa1af95754a6b2beb316" -dependencies = [ - "futures-util", - "pin-project-lite", - "tokio", -] - -[[package]] -name = "aws-smithy-checksums" -version = "0.65.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b67ecd999972b58e67cab052f5129906c08c25883bd0788ceefc55ef97d61307" -dependencies = [ - "aws-smithy-http", - "aws-smithy-types", - "bytes", - "crc-fast", - "hex", - "http 1.5.0", - "http-body 1.1.0", - "http-body-util", - "md-5", - "pin-project-lite", - "sha1 0.11.0", - "sha2 0.11.0", - "tracing", -] - -[[package]] -name = "aws-smithy-eventstream" -version = "0.61.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80c2051c2f1016fb8e6548dd07b8bc2ac9c3fe583721444b92f515e856d31609" -dependencies = [ - "aws-smithy-types", - "bytes", - "crc32fast", -] - -[[package]] -name = "aws-smithy-http" -version = "0.64.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37843d9add67c3aff5856f409c6dc315d3cdff60f9c0cb5b670dab1e9920306d" -dependencies = [ - "aws-smithy-eventstream", - "aws-smithy-runtime-api", - "aws-smithy-types", - "bytes", - "bytes-utils", - "futures-core", - "futures-util", - "http 1.5.0", - "http-body 1.1.0", - "http-body-util", - "percent-encoding", - "pin-project-lite", - "pin-utils", - "tracing", -] - -[[package]] -name = "aws-smithy-http-client" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7bd25384a4e437aa8d8f339afad4b69e786b936a7cb10db668a7aaf66717b1a8" -dependencies = [ - "aws-smithy-async", - "aws-smithy-runtime-api", - "aws-smithy-types", - "h2 0.3.27", - "h2 0.4.19", - "http 0.2.12", - "http 1.5.0", - "http-body 0.4.6", - "hyper 0.14.32", - "hyper 1.11.1", - "hyper-rustls 0.24.2", - "hyper-rustls 0.27.10", - "hyper-util", - "pin-project-lite", - "rustls 0.21.12", - "rustls 0.23.45", - "rustls-native-certs 0.8.4", - "rustls-pki-types", - "tokio", - "tokio-rustls 0.26.5", - "tower", - "tracing", -] - -[[package]] -name = "aws-smithy-json" -version = "0.63.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3385d469edbe8b60cc72002784652b5efca39178192aa9cc4b44c9875c6bdc18" -dependencies = [ - "aws-smithy-runtime-api", - "aws-smithy-schema", - "aws-smithy-types", -] - -[[package]] -name = "aws-smithy-observability" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e86338c869539a581bf161247762a6e87f92c5c075060057b5ed6d06632ed0c" -dependencies = [ - "aws-smithy-runtime-api", -] - -[[package]] -name = "aws-smithy-runtime" -version = "1.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "591e0024cdf2a8de8711860f7e1d5cfbca26b800ce13793a9aa2f4f5918e6d95" -dependencies = [ - "aws-smithy-async", - "aws-smithy-http", - "aws-smithy-http-client", - "aws-smithy-observability", - "aws-smithy-runtime-api", - "aws-smithy-schema", - "aws-smithy-types", - "bytes", - "fastrand", - "http 1.5.0", - "http-body 1.1.0", - "http-body-util", - "pin-project-lite", - "pin-utils", - "tokio", - "tracing", -] - -[[package]] -name = "aws-smithy-runtime-api" -version = "1.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fbf162725183ec0df77a9dc82ce22d9ba0b6ea7f376e8ec4f6b695727c70698" -dependencies = [ - "aws-smithy-async", - "aws-smithy-runtime-api-macros", - "aws-smithy-types", - "bytes", - "http 0.2.12", - "http 1.5.0", - "pin-project-lite", - "tokio", - "tracing", - "zeroize", -] - -[[package]] -name = "aws-smithy-runtime-api-macros" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "221eaa237ddf1ca79b60d1372aad77e47f9c0ea5b3ce5099da8c61d027dc77b3" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] -name = "aws-smithy-schema" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8f395d93304280b64b7632fea798d177e74897fe7f063416ce627cd6fa24829" -dependencies = [ - "aws-smithy-runtime-api", - "aws-smithy-types", - "http 1.5.0", -] - -[[package]] -name = "aws-smithy-types" -version = "1.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16ecf7989e381d0cbb7ca06104140d940bf38d8eb9004bd3a12d23df03e3d363" -dependencies = [ - "base64-simd", - "bytes", - "bytes-utils", - "futures-core", - "http 0.2.12", - "http 1.5.0", - "http-body 0.4.6", - "http-body 1.1.0", - "http-body-util", - "itoa", - "num-integer", - "pin-project-lite", - "pin-utils", - "ryu", - "serde", - "time", - "tokio", - "tokio-util", -] - -[[package]] -name = "aws-smithy-xml" -version = "0.62.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b932c8d6dc127fc980eecd78f8694ae9b9551b69a93a7def2a199c1c0033daf" -dependencies = [ - "aws-smithy-runtime-api", - "aws-smithy-schema", - "aws-smithy-types", - "xmlparser", -] - -[[package]] -name = "aws-types" -version = "1.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "209f3a6d82a6e9e5f94abbed94c7a26e1c052341002bf57a5fb5481f625896fc" -dependencies = [ - "aws-credential-types", - "aws-smithy-async", - "aws-smithy-runtime-api", - "aws-smithy-schema", - "aws-smithy-types", - "rustc_version", - "tracing", -] - -[[package]] -name = "axum" -version = "0.8.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31b698c5f9a010f6573133b09e0de5408834d0c82f8d7475a89fc1867a71cd90" -dependencies = [ - "axum-core", - "base64 0.22.1", - "bytes", - "form_urlencoded", - "futures-util", - "http 1.5.0", - "http-body 1.1.0", - "http-body-util", - "hyper 1.11.1", - "hyper-util", - "itoa", - "matchit", - "memchr", - "mime", - "multer", - "percent-encoding", - "pin-project-lite", - "serde_core", - "serde_json", - "serde_path_to_error", - "serde_urlencoded", - "sha1 0.10.7", - "sync_wrapper", - "tokio", - "tokio-tungstenite", - "tower", - "tower-layer", - "tower-service", - "tracing", -] - -[[package]] -name = "axum-core" -version = "0.5.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08c78f31d7b1291f7ee735c1c6780ccde7785daae9a9206026862dab7d8792d1" -dependencies = [ - "bytes", - "futures-core", - "http 1.5.0", - "http-body 1.1.0", - "http-body-util", - "mime", - "pin-project-lite", - "sync_wrapper", - "tower-layer", - "tower-service", - "tracing", -] - -[[package]] -name = "base16" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d27c3610c36aee21ce8ac510e6224498de4228ad772a171ed65643a24693a5a8" - -[[package]] -name = "base16ct" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" - -[[package]] -name = "base64" -version = "0.21.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" - -[[package]] -name = "base64" -version = "0.22.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" - -[[package]] -name = "base64" -version = "0.23.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac07cdecf99051d9a5238b80f35af32cdeba5b336e55d957b318b50137e18da5" - -[[package]] -name = "base64-simd" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "339abbe78e73178762e23bea9dfd08e697eb3f3301cd4be981c0f78ba5859195" -dependencies = [ - "outref", - "vsimd", -] - -[[package]] -name = "base64ct" -version = "1.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2af50177e190e07a26ab74f8b1efbfe2ef87da2116221318cb1c2e82baf7de06" - -[[package]] -name = "bit-set" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3" -dependencies = [ - "bit-vec", -] - -[[package]] -name = "bit-vec" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" - -[[package]] -name = "bitflags" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - -[[package]] -name = "bitflags" -version = "2.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ded4057c258ba199e2d26386d3af3780957ecaee6c4ef4041c6b4b8b97c0b06" - -[[package]] -name = "block-buffer" -version = "0.10.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" -dependencies = [ - "generic-array", -] - -[[package]] -name = "block-buffer" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2f6c7dbe95a6ed67ad9f18e57daf93a2f034c524b99fd2b76d18fdfeb6660aa" -dependencies = [ - "hybrid-array", -] - -[[package]] -name = "borsh" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "553c5d846a6ba5150c65e3b1b8ec073bcf1abc20f9b7220de384a4443ea4e20a" -dependencies = [ - "bytes", - "cfg_aliases", -] - -[[package]] -name = "bs58" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf88ba1141d185c399bee5288d850d63b8369520c1eafc32a0430b5b6c287bf4" -dependencies = [ - "tinyvec", -] - -[[package]] -name = "bstr" -version = "1.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bb31b46c14244e20ee9984b11bf5c992b91fb6939fea616e3512c8baecdbe5f" -dependencies = [ - "memchr", - "regex-automata", - "serde_core", -] - -[[package]] -name = "bumpalo" -version = "3.20.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72f5acc6cb2ba439de613abc23857ec3d78374d8ed5ac84e9d11336e87da8649" - -[[package]] -name = "bytes" -version = "1.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc652a48c352aef3ea3aed32080501cf3ef6ed5da78602a020c991775b0aff04" -dependencies = [ - "serde", -] - -[[package]] -name = "bytes-utils" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dafe3a8757b027e2be6e4e5601ed563c55989fcf1546e933c66c8eb3a058d35" -dependencies = [ - "bytes", - "either", -] - -[[package]] -name = "camino" -version = "1.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbbad30e4b4c14a39e3cc8aed085a12a327257c316619c93581e017bc52be591" - -[[package]] -name = "cc" -version = "1.4.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54413ede23c2daf518f35156dfde027feb2374004d63bd497f983c8db9c0e313" -dependencies = [ - "find-msvc-tools", - "jobserver", - "libc", - "shlex", -] - -[[package]] -name = "cedar-policy" -version = "4.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e4f5e46c425491b7133eecb3030d82d27301b84bfa08533c59a6902cca7eb80" -dependencies = [ - "cedar-policy-core", - "cedar-policy-formatter", - "itertools 0.15.0", - "linked-hash-map", - "linked_hash_set", - "miette", - "ref-cast", - "semver", - "serde", - "serde_json", - "serde_with", - "smol_str", - "thiserror 2.0.20", -] - -[[package]] -name = "cedar-policy-core" -version = "4.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a30d11033d59b262bbb380d8bb5dc5c3dd2dd2281675c558ef4fd8a161ce669" -dependencies = [ - "chrono", - "educe", - "either", - "itertools 0.15.0", - "lalrpop", - "lalrpop-util", - "linked-hash-map", - "linked_hash_set", - "miette", - "nonempty 0.12.0", - "ref-cast", - "regex", - "rustc-literal-escaper", - "serde", - "serde_json", - "serde_with", - "smol_str", - "stacker", - "thiserror 2.0.20", - "unicode-security", -] - -[[package]] -name = "cedar-policy-formatter" -version = "4.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a2c8dc671e62597c85caa11694365b76050abcd9f2177f0520ccac0580f9a41" -dependencies = [ - "cedar-policy-core", - "itertools 0.15.0", - "logos", - "miette", - "pretty", - "regex", - "smol_str", -] - -[[package]] -name = "cfg-if" -version = "1.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e7648175b45a9a48536d676f68d918270699102aa8dab5496df06904c914600" - -[[package]] -name = "cfg_aliases" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f079e83a288787bcd14a6aea84cee5c87a67c5a3e660c30f557a3d24761b3527" - -[[package]] -name = "chacha20" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65c35e4b699c7e15ccbe7ee35c005e4fc0a278d22238a2857e6ce2dadeda1b06" -dependencies = [ - "cfg-if", - "cpufeatures 0.3.1", - "rand_core 0.10.1", -] - -[[package]] -name = "chrono" -version = "0.4.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1aa79e62e7697b8e29b513a68abacf485adcd1fe8284a4316c5ae868e6633327" -dependencies = [ - "iana-time-zone", - "js-sys", - "num-traits", - "serde", - "wasm-bindgen", - "windows-link", -] - -[[package]] -name = "cmake" -version = "0.1.58" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0f78a02292a74a88ac736019ab962ece0bc380e3f977bf72e376c5d78ff0678" -dependencies = [ - "cc", -] - -[[package]] -name = "cmov" -version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c9ea0ac24bc397ab3c98583a3c9ba74fa56b09a4449bbe172b9b1ddb016027a" - -[[package]] -name = "codee" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9dbbdc4b4d349732bc6690de10a9de952bd39ba6a065c586e26600b6b0b91f5" -dependencies = [ - "serde", - "serde_json", - "thiserror 2.0.20", -] - -[[package]] -name = "collection_literals" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2550f75b8cfac212855f6b1885455df8eaee8fe8e246b647d69146142e016084" - -[[package]] -name = "config" -version = "0.15.26" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "790374c727a4cb20877dd2cc99ce7011cbe03b0b8df083acccd37df0d161304d" -dependencies = [ - "convert_case 0.6.0", - "pathdiff", - "serde_core", - "toml", - "winnow", -] - -[[package]] -name = "const-oid" -version = "0.9.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" - -[[package]] -name = "const-oid" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6ef517f0926dd24a1582492c791b6a4818a4d94e789a334894aa15b0d12f55c" - -[[package]] -name = "const-str" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18f12cc9948ed9604230cdddc7c86e270f9401ccbe3c2e98a4378c5e7632212f" - -[[package]] -name = "const_format" -version = "0.2.36" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4481a617ad9a412be3b97c5d403fef8ed023103368908b9c50af598ff467cc1e" -dependencies = [ - "const_format_proc_macros", - "konst", -] - -[[package]] -name = "const_format_proc_macros" -version = "0.2.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d57c2eccfb16dbac1f4e61e206105db5820c9d26c3c472bc17c774259ef7744" -dependencies = [ - "proc-macro2", - "quote", - "unicode-xid", -] - -[[package]] -name = "const_str_slice_concat" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f67855af358fcb20fac58f9d714c94e2b228fe5694c1c9b4ead4a366343eda1b" - -[[package]] -name = "convert_case" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" -dependencies = [ - "unicode-segmentation", -] - -[[package]] -name = "convert_case" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "affbf0190ed2caf063e3def54ff444b449371d55c58e513a95ab98eca50adb49" -dependencies = [ - "unicode-segmentation", -] - -[[package]] -name = "convert_case_extras" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589c70f0faf8aa9d17787557d5eae854d7755cac50f5c3d12c81d3d57661cebb" -dependencies = [ - "convert_case 0.11.0", -] - -[[package]] -name = "cookie" -version = "0.18.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a373e3602691c3cdea496d2f0ee5935151e6168fe87739483c463db1b2f2f87" -dependencies = [ - "percent-encoding", - "time", - "version_check", -] - -[[package]] -name = "core-foundation" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" -dependencies = [ - "core-foundation-sys", - "libc", -] - -[[package]] -name = "core-foundation" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2a6cd9ae233e7f62ba4e9353e81a88df7fc8a5987b8d445b4d90c879bd156f6" -dependencies = [ - "core-foundation-sys", - "libc", -] - -[[package]] -name = "core-foundation-sys" -version = "0.8.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" - -[[package]] -name = "core_detect" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f8f80099a98041a3d1622845c271458a2d73e688351bf3cb999266764b81d48" - -[[package]] -name = "cpufeatures" -version = "0.2.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" -dependencies = [ - "libc", -] - -[[package]] -name = "cpufeatures" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ca28b0ae3115b884660db4118d803791fd6756b6e88f39c0f3f7859060d7566" -dependencies = [ - "libc", -] - -[[package]] -name = "crc-fast" -version = "1.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e75b2483e97a5a7da73ac68a05b629f9c53cff58d8ed1c77866079e18b00dba5" -dependencies = [ - "digest 0.10.7", - "spin 0.10.1", -] - -[[package]] -name = "crc32fast" -version = "1.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01a7799fd6b852db0e61728dde9a204c423b44d689dbd432522543614b490e78" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "crossbeam-utils" -version = "0.8.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a31eee39dddec8330830986fcd7625edb5a24ec90ea038215273bbc3adb08ac6" - -[[package]] -name = "crypto-bigint" -version = "0.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" -dependencies = [ - "generic-array", - "rand_core 0.6.4", - "subtle", - "zeroize", -] - -[[package]] -name = "crypto-common" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" -dependencies = [ - "generic-array", - "typenum", -] - -[[package]] -name = "crypto-common" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce6e4c961d6cd6c9a86db418387425e8bdeaf05b3c8bc1411e6dca4c252f1453" -dependencies = [ - "hybrid-array", -] - -[[package]] -name = "ctutils" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d5515a3834141de9eafb9717ad39eea8247b5674e6066c404e8c4b365d2a29e" -dependencies = [ - "cmov", -] - -[[package]] -name = "curve25519-dalek" -version = "4.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be" -dependencies = [ - "cfg-if", - "cpufeatures 0.2.17", - "curve25519-dalek-derive", - "digest 0.10.7", - "fiat-crypto", - "rustc_version", - "subtle", - "zeroize", -] - -[[package]] -name = "curve25519-dalek-derive" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] -name = "darling" -version = "0.24.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed17f5901b6630b993ca003def43f2f8ef4014fc13b047b57aad617ff32bc2ec" -dependencies = [ - "darling_core", - "darling_macro", -] - -[[package]] -name = "darling_core" -version = "0.24.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6837e2cf7485aaae18f86181d2f0e9a7ed297a025e220aeabf63fdebd3a2ddff" -dependencies = [ - "ident_case", - "proc-macro2", - "quote", - "strsim", - "syn 3.0.6", -] - -[[package]] -name = "darling_macro" -version = "0.24.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ac7135c3ef02b2f7833bbeb1be5ba7f966dcde8a87c6b87f65a778d71a02785" -dependencies = [ - "darling_core", - "quote", - "syn 3.0.6", -] - -[[package]] -name = "dashmap" -version = "6.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6361d5c062261c78a176addb82d4c821ae42bed6089de0e12603cd25de2059c" -dependencies = [ - "cfg-if", - "crossbeam-utils", - "hashbrown 0.14.5", - "lock_api", - "once_cell", - "parking_lot_core", -] - -[[package]] -name = "data-encoding" -version = "2.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4583a4551df46e2792f82ceeac45e850d2e2d5debba0b91f102385cda5b11f06" - -[[package]] -name = "defmt" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2953bfe4f93bbd20cc71198842756f77d161884c99ebbabc41d80231ded88d1" -dependencies = [ - "bitflags 1.3.2", - "defmt-macros", -] - -[[package]] -name = "defmt-macros" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bad9c72e7ca2137e0dc3813245a0d282fd6daad32fd800af018306a9169b5fe8" -dependencies = [ - "defmt-parser", - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] -name = "defmt-parser" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10d60334b3b2e7c9d91ef8150abfb6fa4c1c39ebbcf4a81c2e346aad939fee3e" -dependencies = [ - "thiserror 2.0.20", -] - -[[package]] -name = "der" -version = "0.7.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7c1832837b905bbfb5101e07cc24c8deddf52f93225eee6ead5f4d63d53ddcb" -dependencies = [ - "const-oid 0.9.6", - "pem-rfc7468", - "zeroize", -] - -[[package]] -name = "deranged" -version = "0.5.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cd812cc2bc1d69d4764bd80df88b4317eaef9e773c75226407d9bc0876b211c" -dependencies = [ - "serde_core", -] - -[[package]] -name = "derive-where" -version = "1.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e2b94854e8576378ccda7c8de8a66ed8b4e8acbd2c50ec3418ea6c8aaf4b567" -dependencies = [ - "proc-macro2", - "quote", - "syn 3.0.6", -] - -[[package]] -name = "digest" -version = "0.10.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" -dependencies = [ - "block-buffer 0.10.4", - "const-oid 0.9.6", - "crypto-common 0.1.6", - "subtle", -] - -[[package]] -name = "digest" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1dd6dbb5841937940781866fa1281a1ff7bd3bf827091440879f9994983d5c2" -dependencies = [ - "block-buffer 0.12.1", - "const-oid 0.10.2", - "crypto-common 0.2.2", - "ctutils", -] - -[[package]] -name = "displaydoc" -version = "0.2.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6232dd377dcc64799954cbd3a9bb882e9cdc1308ccd87b1c098f1fb2eaf82a8" -dependencies = [ - "proc-macro2", - "quote", - "syn 3.0.6", -] - -[[package]] -name = "dotenvy" -version = "0.15.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1aaf95b3e5c8f23aa320147307562d361db0ae0d51242340f558153b4eb2439b" - -[[package]] -name = "drain_filter_polyfill" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "669a445ee724c5c69b1b06fe0b63e70a1c84bc9bb7d9696cd4f4e3ec45050408" - -[[package]] -name = "dunce" -version = "1.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" - -[[package]] -name = "dyn-clone" -version = "1.0.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0881ea181b1df73ff77ffaaf9c7544ecc11e82fba9b5f27b262a3c73a332555" - -[[package]] -name = "ecdsa" -version = "0.16.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca" -dependencies = [ - "der", - "digest 0.10.7", - "elliptic-curve", - "rfc6979", - "signature", - "spki", -] - -[[package]] -name = "ed25519" -version = "2.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53" -dependencies = [ - "pkcs8", - "signature", -] - -[[package]] -name = "ed25519-dalek" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70e796c081cee67dc755e1a36a0a172b897fab85fc3f6bc48307991f64e4eca9" -dependencies = [ - "curve25519-dalek", - "ed25519", - "serde", - "sha2 0.10.9", - "signature", - "subtle", - "zeroize", -] - -[[package]] -name = "educe" -version = "0.7.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e451fac8dd8dece16234604bf1efce6e90fddd8ab6ad4d66eec0eca5160959dd" -dependencies = [ - "enum-ordinalize", - "proc-macro2", - "quote", - "syn 3.0.6", -] - -[[package]] -name = "either" -version = "1.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "252afb9ae5eaa683babdc6a068b3f5726eb19e05070c731f9b2a23a7c3e8ed34" - -[[package]] -name = "either_of" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5060e0a4cbf26a87550792688ade88e6b8aec9208613631a7a363bda7bc2d4cd" -dependencies = [ - "paste", - "pin-project-lite", -] - -[[package]] -name = "elliptic-curve" -version = "0.13.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" -dependencies = [ - "base16ct", - "crypto-bigint", - "digest 0.10.7", - "ff", - "generic-array", - "group", - "hkdf", - "pem-rfc7468", - "pkcs8", - "rand_core 0.6.4", - "sec1", - "subtle", - "zeroize", -] - -[[package]] -name = "ena" -version = "0.14.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eabffdaee24bd1bf95c5ef7cec31260444317e72ea56c4c91750e8b7ee58d5f1" -dependencies = [ - "log", -] - -[[package]] -name = "encoding_rs" -version = "0.8.41" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b5ef0006ac9ab233c38522f5ae99cae3625151de8f706cacee1cba4b8e2832a" -dependencies = [ - "cfg-if", - "core_detect", - "multiversion", - "multiversion_no_op", - "rustversion", - "scopeguard", - "simdutf8", -] - -[[package]] -name = "enum-ordinalize" -version = "4.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89dd01549b09589510cf0647475075d12071456586d70f5c75c98ae2a5537677" -dependencies = [ - "enum-ordinalize-derive", -] - -[[package]] -name = "enum-ordinalize-derive" -version = "4.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a65863d15a4ce2888bd2f0f543cc963d3879c3a022c8ee43f6141d479a3ac815" -dependencies = [ - "proc-macro2", - "quote", - "syn 3.0.6", -] - -[[package]] -name = "equivalent" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" - -[[package]] -name = "erased" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1731451909bde27714eacba19c2566362a7f35224f52b153d3f42cf60f72472" - -[[package]] -name = "errno" -version = "0.3.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" -dependencies = [ - "libc", - "windows-sys 0.61.2", -] - -[[package]] -name = "event-listener" -version = "5.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a23add41df1562121a9393cb065eab5146a1242410f23a644851e90cfd669d2" -dependencies = [ - "parking", - "pin-project-lite", -] - -[[package]] -name = "event-listener-strategy" -version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8be9f3dfaaffdae2972880079a491a1a8bb7cbed0b8dd7a347f668b4150a3b93" -dependencies = [ - "event-listener", - "pin-project-lite", -] - -[[package]] -name = "fastrand" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da7c62ceae207dd37ea5b845da6a0696c799f85e97da1ab5b7910be3c1c80223" - -[[package]] -name = "ff" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0b50bfb653653f9ca9095b427bed08ab8d75a137839d9ad64eb11810d5b6393" -dependencies = [ - "rand_core 0.6.4", - "subtle", -] - -[[package]] -name = "fiat-crypto" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" - -[[package]] -name = "find-msvc-tools" -version = "0.1.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef25905e51abafe4dcea6c15fec58c57b601cdbd0ee53d22ea1d3016c587d39b" - -[[package]] -name = "fixedbitset" -version = "0.5.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d674e81391d1e1ab681a28d99df07927c6d4aa5b027d7da16ba32d1d21ecd99" - -[[package]] -name = "fnv" -version = "1.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" - -[[package]] -name = "foldhash" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" - -[[package]] -name = "foldhash" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" - -[[package]] -name = "form_urlencoded" -version = "1.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb4cb245038516f5f85277875cdaa4f7d2c9a0fa0468de06ed190163b1581fcf" -dependencies = [ - "percent-encoding", -] - -[[package]] -name = "forwarded-header-value" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8835f84f38484cc86f110a805655697908257fb9a7af005234060891557198e9" -dependencies = [ - "nonempty 0.7.0", - "thiserror 1.0.69", -] - -[[package]] -name = "fs_extra" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c" - -[[package]] -name = "futures" -version = "0.3.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a31d2a3fbaaeb2af2368bbdd904aa8e812d3c04a1ee10d3171f52d556e5d0a3" -dependencies = [ - "futures-channel", - "futures-core", - "futures-executor", - "futures-io", - "futures-sink", - "futures-task", - "futures-util", -] - -[[package]] -name = "futures-channel" -version = "0.3.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1f9e3d69d39e4862ffed03ed071a76f9a13ba1d9109d355b0f0aa6b15e393c4" -dependencies = [ - "futures-core", - "futures-sink", -] - -[[package]] -name = "futures-core" -version = "0.3.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92d699e522242e69e3003b94ecc1f960f3a5e015aa7c5d7486e65ad01dd94f5e" - -[[package]] -name = "futures-executor" -version = "0.3.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "031b47cf1a3c6cc8bc2fc76cd437f521619387907d469316e7c0bc278f1f5432" -dependencies = [ - "futures-core", - "futures-task", - "futures-util", -] - -[[package]] -name = "futures-io" -version = "0.3.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53c0fa8157de1303bfffdaa1cc2a673bfffb60102f76b0ef4441659124373fed" - -[[package]] -name = "futures-macro" -version = "0.3.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fb9654ba8355388abeb8dcb4fc62f511300867002afc858860463bdd9fe0c44" -dependencies = [ - "proc-macro2", - "quote", - "syn 3.0.6", -] - -[[package]] -name = "futures-sink" -version = "0.3.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1944426bf7d03f1d14f708785e4b33efd750b36d48a157b836b3efc15ede8e1d" - -[[package]] -name = "futures-task" -version = "0.3.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd417de3d1d015fc3bfd2b1ea46dfc7bab72ef86f1cc7cc9c78e728b34a6d1fd" - -[[package]] -name = "futures-timer" -version = "3.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af43fadb8a98512d547e37b4e92e0ced13e205c061b87b4623eff01d918d6968" - -[[package]] -name = "futures-util" -version = "0.3.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d50a92467f8ba5dd6e3ee5d4bd04d73ab2e4e1c44474a0674821dfce14b79bc" -dependencies = [ - "futures-channel", - "futures-core", - "futures-io", - "futures-macro", - "futures-sink", - "futures-task", - "memchr", - "pin-project-lite", - "slab", -] - -[[package]] -name = "generic-array" -version = "0.14.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bb6743198531e02858aeaea5398fcc883e71851fcbcb5a2f773e2fb6cb1edf2" -dependencies = [ - "typenum", - "version_check", - "zeroize", -] - -[[package]] -name = "getrandom" -version = "0.2.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff2abc00be7fca6ebc474524697ae276ad847ad0a6b3faa4bcb027e9a4614ad0" -dependencies = [ - "cfg-if", - "js-sys", - "libc", - "wasi", - "wasm-bindgen", -] - -[[package]] -name = "getrandom" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd" -dependencies = [ - "cfg-if", - "js-sys", - "libc", - "r-efi 5.3.0", - "wasip2", - "wasm-bindgen", -] - -[[package]] -name = "getrandom" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "300e883d756b2e4ec94e02791f39b04b522276138852cfc41d9fb7e904106099" -dependencies = [ - "cfg-if", - "js-sys", - "libc", - "r-efi 6.0.0", - "rand_core 0.10.1", - "wasm-bindgen", -] - -[[package]] -name = "gloo-net" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06f627b1a58ca3d42b45d6104bf1e1a03799df472df00988b6ba21accc10580" -dependencies = [ - "futures-channel", - "futures-core", - "futures-sink", - "gloo-utils", - "http 1.5.0", - "js-sys", - "pin-project", - "serde", - "serde_json", - "thiserror 1.0.69", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", -] - -[[package]] -name = "gloo-utils" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b5555354113b18c547c1d3a98fbf7fb32a9ff4f6fa112ce823a21641a0ba3aa" -dependencies = [ - "js-sys", - "serde", - "serde_json", - "wasm-bindgen", - "web-sys", -] - -[[package]] -name = "governor" -version = "0.10.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9efcab3c1958580ff1f25a2a41be1668f7603d849bb63af523b208a3cc1223b8" -dependencies = [ - "cfg-if", - "dashmap", - "futures-sink", - "futures-timer", - "futures-util", - "getrandom 0.3.4", - "hashbrown 0.16.1", - "nonzero_ext", - "parking_lot", - "portable-atomic", - "quanta", - "rand 0.9.5", - "smallvec", - "spinning_top", - "web-time", -] - -[[package]] -name = "group" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" -dependencies = [ - "ff", - "rand_core 0.6.4", - "subtle", -] - -[[package]] -name = "guardian" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17e2ac29387b1aa07a1e448f7bb4f35b500787971e965b02842b900afa5c8f6f" - -[[package]] -name = "h2" -version = "0.3.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0beca50380b1fc32983fc1cb4587bfa4bb9e78fc259aad4a0032d2080309222d" -dependencies = [ - "bytes", - "fnv", - "futures-core", - "futures-sink", - "futures-util", - "http 0.2.12", - "indexmap 2.14.2", - "slab", - "tokio", - "tokio-util", - "tracing", -] - -[[package]] -name = "h2" -version = "0.4.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef8e5e5a340588f4452631496976cf8636d4a7ecf600239fdc27615d2530bc16" -dependencies = [ - "atomic-waker", - "bytes", - "fnv", - "futures-core", - "futures-sink", - "http 1.5.0", - "indexmap 2.14.2", - "slab", - "tokio", - "tokio-util", - "tracing", -] - -[[package]] -name = "hashbrown" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" - -[[package]] -name = "hashbrown" -version = "0.14.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" - -[[package]] -name = "hashbrown" -version = "0.16.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" -dependencies = [ - "allocator-api2", - "equivalent", - "foldhash 0.2.0", -] - -[[package]] -name = "hashbrown" -version = "0.17.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a" -dependencies = [ - "allocator-api2", - "equivalent", - "foldhash 0.2.0", -] - -[[package]] -name = "hex" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" - -[[package]] -name = "hifijson" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "242402749acf71e6f32f5857598b7002c4058a4e3c3b22b4c7d51cab9aea754e" - -[[package]] -name = "hkdf" -version = "0.12.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7" -dependencies = [ - "hmac 0.12.1", -] - -[[package]] -name = "hmac" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" -dependencies = [ - "digest 0.10.7", -] - -[[package]] -name = "hmac" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6303bc9732ae41b04cb554b844a762b4115a61bfaa81e3e83050991eeb56863f" -dependencies = [ - "digest 0.11.3", -] - -[[package]] -name = "html-escape" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9356095b4b41197bba32173600e1582792cda618f65d12f68e2e77d273413c5" - -[[package]] -name = "http" -version = "0.2.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1" -dependencies = [ - "bytes", - "fnv", - "itoa", -] - -[[package]] -name = "http" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "918d3568bebf352712bc2ef3d46a8bcf1a75b373be6539de198e9105cbbf9ce0" -dependencies = [ - "bytes", - "itoa", -] - -[[package]] -name = "http-body" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" -dependencies = [ - "bytes", - "http 0.2.12", - "pin-project-lite", -] - -[[package]] -name = "http-body" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca2a8f2913ee65f60facd6a5905613afaa448497a0230cc41ce022d93290bc2c" -dependencies = [ - "bytes", - "http 1.5.0", -] - -[[package]] -name = "http-body-util" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23169fe34a5fbcdd3f3862e78fb9b6fccd5f02a6dc6f732547005d45631ce71c" -dependencies = [ - "bytes", - "futures-core", - "http 1.5.0", - "http-body 1.1.0", - "pin-project-lite", -] - -[[package]] -name = "http-range-header" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9171a2ea8a68358193d15dd5d70c1c10a2afc3e7e4c5bc92bc9f025cebd7359c" - -[[package]] -name = "httparse" -version = "1.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87" - -[[package]] -name = "httpdate" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" - -[[package]] -name = "hybrid-array" -version = "0.4.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27f864f10dfb56725ce5ce5472bc52252c8f93a4ab86327122cebf62c5f59a17" -dependencies = [ - "typenum", -] - -[[package]] -name = "hydration_context" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7bbbeb23ee808258cef2c5585ff0dc8e41da21a8dde943f6b290da153a042a96" -dependencies = [ - "futures", - "js-sys", - "or_poisoned", - "pin-project-lite", - "serde", - "throw_error", - "wasm-bindgen", -] - -[[package]] -name = "hyper" -version = "0.14.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41dfc780fdec9373c01bae43289ea34c972e40ee3c9f6b3c8801a35f35586ce7" -dependencies = [ - "bytes", - "futures-channel", - "futures-core", - "futures-util", - "h2 0.3.27", - "http 0.2.12", - "http-body 0.4.6", - "httparse", - "httpdate", - "itoa", - "pin-project-lite", - "socket2 0.5.10", - "tokio", - "tower-service", - "tracing", - "want", -] - -[[package]] -name = "hyper" -version = "1.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27b501faa50e7a26c3d3560ca625132f4078a17771f4810baf70475ae48cbe43" -dependencies = [ - "atomic-waker", - "bytes", - "futures-channel", - "futures-core", - "h2 0.4.19", - "http 1.5.0", - "http-body 1.1.0", - "httparse", - "httpdate", - "itoa", - "pin-project-lite", - "smallvec", - "tokio", - "want", -] - -[[package]] -name = "hyper-rustls" -version = "0.24.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" -dependencies = [ - "futures-util", - "http 0.2.12", - "hyper 0.14.32", - "log", - "rustls 0.21.12", - "tokio", - "tokio-rustls 0.24.1", -] - -[[package]] -name = "hyper-rustls" -version = "0.27.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfa8e654703247911e29c23fbeaa261834bd9bb74efba2f9acddc37bfb127f53" -dependencies = [ - "http 1.5.0", - "hyper 1.11.1", - "hyper-util", - "rustls 0.23.45", - "rustls-native-certs 0.8.4", - "tokio", - "tokio-rustls 0.26.5", - "tower-service", - "webpki-roots", -] - -[[package]] -name = "hyper-timeout" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b90d566bffbce6a75bd8b09a05aa8c2cb1fabb6cb348f8840c9e4c90a0d83b0" -dependencies = [ - "hyper 1.11.1", - "hyper-util", - "pin-project-lite", - "tokio", - "tower-service", -] - -[[package]] -name = "hyper-util" -version = "0.1.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96547c2556ec9d12fb1578c4eaf448b04993e7fb79cbaad930a656880a6bdfa0" -dependencies = [ - "base64 0.22.1", - "bytes", - "futures-channel", - "futures-util", - "http 1.5.0", - "http-body 1.1.0", - "hyper 1.11.1", - "ipnet", - "libc", - "percent-encoding", - "pin-project-lite", - "socket2 0.6.5", - "tokio", - "tower-service", - "tracing", -] - -[[package]] -name = "iana-time-zone" -version = "0.1.65" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e31bc9ad994ba00e440a8aa5c9ef0ec67d5cb5e5cb0cc7f8b744a35b389cc470" -dependencies = [ - "android_system_properties", - "core-foundation-sys", - "iana-time-zone-haiku", - "js-sys", - "log", - "wasm-bindgen", - "windows-core", -] - -[[package]] -name = "iana-time-zone-haiku" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" -dependencies = [ - "cc", -] - -[[package]] -name = "icu_collections" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa68d21081c4a05d5a901a1c62add574c77048b6a1c67be3b50ce0b60d4ca513" -dependencies = [ - "displaydoc", - "potential_utf", - "utf8_iter", - "yoke", - "zerofrom", - "zerovec", -] - -[[package]] -name = "icu_locale_core" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d56e28588da92eee5c3201a6eff33fabdd49b62269c8938d4ff050ce4d900deb" -dependencies = [ - "displaydoc", - "litemap", - "tinystr", - "writeable", - "zerovec", -] - -[[package]] -name = "icu_normalizer" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12f9cf5f235641ed274641dd81c3f28d870e276763d0797aeeab72317b1c646f" -dependencies = [ - "icu_collections", - "icu_normalizer_data", - "icu_properties", - "icu_provider", - "smallvec", - "zerovec", -] - -[[package]] -name = "icu_normalizer_data" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1563da1ed3e0b3bf3d74c9b85917ac9c56464d2f57242270c09c9e752f8021a0" - -[[package]] -name = "icu_properties" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e7ca276ad3145661a65914e6daf131ca5120cd3dcee8f8f3214b8875184a148" -dependencies = [ - "displaydoc", - "icu_collections", - "icu_locale_core", - "icu_properties_data", - "icu_provider", - "zerotrie", - "zerovec", -] - -[[package]] -name = "icu_properties_data" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e590f038c1464a96894fd6d10127e90a8be4509f56ff7ecef851b15cee0b7caa" - -[[package]] -name = "icu_provider" -version = "2.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d27bbb9d3abbefac45d55f647c9de1d44aafcd1186eb91879afef17c396c3e73" -dependencies = [ - "displaydoc", - "icu_locale_core", - "writeable", - "yoke", - "zerofrom", - "zerotrie", - "zerovec", -] - -[[package]] -name = "ident_case" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" - -[[package]] -name = "idna" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b0875f23caa03898994f6ddc501886a45c7d3d62d04d2d90788d47be1b1e4de" -dependencies = [ - "idna_adapter", - "smallvec", - "utf8_iter", -] - -[[package]] -name = "idna_adapter" -version = "1.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb68373c0d6620ef8105e855e7745e18b0d00d3bdb07fb532e434244cdb9a714" -dependencies = [ - "icu_normalizer", - "icu_properties", -] - -[[package]] -name = "indexmap" -version = "1.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" -dependencies = [ - "autocfg", - "hashbrown 0.12.3", - "serde", -] - -[[package]] -name = "indexmap" -version = "2.14.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc4e190f5d26ca7051642629da2c52fc03bde85a03197c99408dcd291734c855" -dependencies = [ - "equivalent", - "hashbrown 0.17.1", - "serde", - "serde_core", -] - -[[package]] -name = "interpolator" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71dd52191aae121e8611f1e8dc3e324dd0dd1dee1e6dd91d10ee07a3cfb4d9d8" - -[[package]] -name = "inventory" -version = "0.3.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4f0c30c76f2f4ccee3fe55a2435f691ca00c0e4bd87abe4f4a851b1d4dac39b" -dependencies = [ - "rustversion", -] - -[[package]] -name = "ipnet" -version = "2.12.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "791930b43c0d5973160d90a8f3894509f2b273430f5c5c73b668636d0287c5c0" - -[[package]] -name = "iris" -version = "0.5.10" -dependencies = [ - "anyhow", - "async-nats", - "chrono", - "futures", - "portal", - "serde", - "serde_json", - "serde_yaml", - "tokio", -] - -[[package]] -name = "itertools" -version = "0.10.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" -dependencies = [ - "either", -] - -[[package]] -name = "itertools" -version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285" -dependencies = [ - "either", -] - -[[package]] -name = "itertools" -version = "0.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b4baf93f58d4425749ca49a51c50ebab072c5df6994d08fed93541c331481dc" -dependencies = [ - "either", -] - -[[package]] -name = "itoa" -version = "1.0.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682" - -[[package]] -name = "jaq-core" -version = "3.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f72ba7158fe9fc1bc4baace1b71e6d0d3d27c6839dd87dc1f233dd408f5dd85b" -dependencies = [ - "dyn-clone", - "once_cell", - "typed-arena", -] - -[[package]] -name = "jaq-json" -version = "2.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4be2f53207ffb1313a2d2ad819cfa8bfaa7936cb85a110eda10fd5da822cec94" -dependencies = [ - "bstr", - "bytes", - "foldhash 0.1.5", - "hifijson", - "indexmap 2.14.2", - "jaq-core", - "jaq-std", - "num-bigint", - "num-traits", - "ryu", - "self_cell", -] - -[[package]] -name = "jaq-std" -version = "3.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f90e485abfd3189510c996e77be55056a51038b0fa5805e6c97b5dcf0d9ab55" -dependencies = [ - "aho-corasick", - "base64 0.22.1", - "bstr", - "jaq-core", - "jiff", - "libm", - "log", - "regex-bites", - "urlencoding", -] - -[[package]] -name = "jiff" -version = "0.2.37" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ab1baf72f08796de0260609515130699b890ac25f30e610ad894bc5856cafdb" -dependencies = [ - "defmt", - "jiff-core", - "jiff-static", - "jiff-tzdb-platform", - "log", - "portable-atomic", - "portable-atomic-util", - "serde_core", - "windows-link", -] - -[[package]] -name = "jiff-core" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e52fe76043ccecc9005d2305ebaadf7d7fc0cc89ca6baa10a94d6bc68c7128c" -dependencies = [ - "defmt", - "log", -] - -[[package]] -name = "jiff-static" -version = "0.2.37" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "378268a1116ad67ae6228701118ac9f491d78fda38a40a1f1a9e1348de6f7212" -dependencies = [ - "jiff-core", - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] -name = "jiff-tzdb" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "142bd39932ad231f10513df9ab62661fead8719872150b7ad02a2df79f4e141e" - -[[package]] -name = "jiff-tzdb-platform" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "875a5a69ac2bab1a891711cf5eccbec1ce0341ea805560dcd90b7a2e925132e8" -dependencies = [ - "jiff-tzdb", -] - -[[package]] -name = "jobserver" -version = "0.1.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c00acbd29eabad4a2392fa0e921c874934dbbf4194312ad20f04a0ed67a3cb3" -dependencies = [ - "getrandom 0.4.3", - "libc", -] - -[[package]] -name = "js-sys" -version = "0.3.105" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce57d20d1ea864ce2ac172ab472d409214f4fd359f0b2a2775abdf522e2af99e" -dependencies = [ - "cfg-if", - "futures-util", - "wasm-bindgen", -] - -[[package]] -name = "keccak" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb26cec98cce3a3d96cbb7bced3c4b16e3d13f27ec56dbd62cbc8f39cfb9d653" -dependencies = [ - "cpufeatures 0.2.17", -] - -[[package]] -name = "konst" -version = "0.2.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "128133ed7824fcd73d6e7b17957c5eb7bacb885649bd8c69708b2331a10bcefb" -dependencies = [ - "konst_macro_rules", -] - -[[package]] -name = "konst_macro_rules" -version = "0.2.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4933f3f57a8e9d9da04db23fb153356ecaf00cbd14aee46279c33dc80925c37" - -[[package]] -name = "lalrpop" -version = "0.22.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba4ebbd48ce411c1d10fb35185f5a51a7bfa3d8b24b4e330d30c9e3a34129501" -dependencies = [ - "ascii-canvas", - "bit-set", - "ena", - "itertools 0.14.0", - "lalrpop-util", - "petgraph", - "pico-args", - "regex", - "regex-syntax", - "sha3", - "string_cache", - "term", - "unicode-xid", - "walkdir", -] - -[[package]] -name = "lalrpop-util" -version = "0.22.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5baa5e9ff84f1aefd264e6869907646538a52147a755d494517a8007fb48733" -dependencies = [ - "regex-automata", - "rustversion", -] - -[[package]] -name = "lazy_static" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" -dependencies = [ - "spin 0.9.9", -] - -[[package]] -name = "leptos" -version = "0.8.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "705e2951f3688e0c4f66bbb7a2702282782dcee716971dbd6209c2619d272479" -dependencies = [ - "any_spawner", - "base64 0.22.1", - "cfg-if", - "either_of", - "futures", - "getrandom 0.4.3", - "hydration_context", - "leptos_config", - "leptos_dom", - "leptos_hot_reload", - "leptos_macro", - "leptos_server", - "oco_ref", - "or_poisoned", - "paste", - "rand 0.9.5", - "reactive_graph", - "rustc-hash", - "rustc_version", - "send_wrapper", - "serde", - "serde_json", - "serde_qs", - "server_fn", - "slotmap", - "tachys", - "thiserror 2.0.20", - "throw_error", - "typed-builder", - "typed-builder-macro", - "wasm-bindgen", - "wasm-bindgen-futures", - "wasm_split_helpers", - "web-sys", -] - -[[package]] -name = "leptos_axum" -version = "0.8.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "513e2dd5fe81512b53304429b9ca77cceb954d23af88921c0c33119380f07cbe" -dependencies = [ - "any_spawner", - "axum", - "futures", - "hydration_context", - "leptos", - "leptos_integration_utils", - "leptos_macro", - "leptos_meta", - "leptos_router", - "or_poisoned", - "server_fn", - "tachys", - "tokio", - "tower", - "tower-http", -] - -[[package]] -name = "leptos_config" -version = "0.8.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c06f751315bccc0d193fab302ac01d25bcfcd97474d4676440e7e3250dc3fc3" -dependencies = [ - "config", - "regex", - "serde", - "thiserror 2.0.20", - "typed-builder", -] - -[[package]] -name = "leptos_dom" -version = "0.8.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35742e9ed8f8aaf9e549b454c68a7ac0992536e06856365639b111f72ab07884" -dependencies = [ - "js-sys", - "or_poisoned", - "reactive_graph", - "send_wrapper", - "tachys", - "wasm-bindgen", - "web-sys", -] - -[[package]] -name = "leptos_hot_reload" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d2a0f220c8a5ef3c51199dfb9cdd702bc0eb80d52fbe70c7890adfaaae8a4b1" -dependencies = [ - "anyhow", - "camino", - "indexmap 2.14.2", - "or_poisoned", - "proc-macro2", - "quote", - "rstml", - "serde", - "syn 2.0.119", - "walkdir", -] - -[[package]] -name = "leptos_integration_utils" -version = "0.8.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c097f89cd9aa606297672f56fa5bdda09f01609a9f4eefaccdbb5ab5afea4279" -dependencies = [ - "futures", - "hydration_context", - "leptos", - "leptos_config", - "leptos_meta", - "leptos_router", - "reactive_graph", -] - -[[package]] -name = "leptos_macro" -version = "0.8.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96de6e8da9d4f1a7b74b447b317d590ebabb38709f588f7ee20564b773ccbcce" -dependencies = [ - "attribute-derive", - "cfg-if", - "convert_case 0.11.0", - "convert_case_extras", - "html-escape", - "itertools 0.14.0", - "leptos_hot_reload", - "prettyplease", - "proc-macro-error2", - "proc-macro2", - "quote", - "rstml", - "rustc_version", - "server_fn_macro", - "syn 2.0.119", - "uuid", -] - -[[package]] -name = "leptos_meta" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c3efe657b4c55ed2e078922786ffe20acfb71767c3dd913767b09a35c75c890" -dependencies = [ - "futures", - "indexmap 2.14.2", - "leptos", - "or_poisoned", - "send_wrapper", - "wasm-bindgen", - "web-sys", -] - -[[package]] -name = "leptos_router" -version = "0.8.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "318c035b5995324c2f60900978ac67da3b21e6062a6e904f8b93b38eddc4e3a2" -dependencies = [ - "any_spawner", - "either_of", - "futures", - "gloo-net", - "js-sys", - "leptos", - "leptos_router_macro", - "or_poisoned", - "percent-encoding", - "reactive_graph", - "rustc_version", - "send_wrapper", - "tachys", - "thiserror 2.0.20", - "url", - "wasm-bindgen", - "web-sys", -] - -[[package]] -name = "leptos_router_macro" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "409c0bd99f986c3cfa1a4db2443c835bc602ded1a12784e22ecb28c3ed5a2ae2" -dependencies = [ - "proc-macro-error2", - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] -name = "leptos_server" -version = "0.8.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da974775c5ccbb6bd64be7f53f75e8321542e28f21563a416574dbe4d5447eae" -dependencies = [ - "any_spawner", - "base64 0.22.1", - "codee", - "futures", - "hydration_context", - "or_poisoned", - "reactive_graph", - "send_wrapper", - "serde", - "serde_json", - "server_fn", - "tachys", -] - -[[package]] -name = "libc" -version = "0.2.189" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3eaf3ede3fee6db1a4c2ee091bf8a8b4dccdc6d17f656fb07896ee72867612f2" - -[[package]] -name = "libm" -version = "0.2.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981" - -[[package]] -name = "linked-hash-map" -version = "0.5.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" -dependencies = [ - "serde", -] - -[[package]] -name = "linked_hash_set" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "984fb35d06508d1e69fc91050cceba9c0b748f983e6739fa2c7a9237154c52c8" -dependencies = [ - "linked-hash-map", -] - -[[package]] -name = "litemap" -version = "0.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47d9d19d1d6efa0109d2f65ff4c85cddd50bd572e5a00127ab10987290bcefae" - -[[package]] -name = "lock_api" -version = "0.4.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965" -dependencies = [ - "scopeguard", - "serde", -] - -[[package]] -name = "log" -version = "0.4.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9f8bd3e56ce4dfc153cf470fffbfa98c7620958b312ca5c3a4b8d5181fd13c6" - -[[package]] -name = "logos" -version = "0.16.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb2c55a318a87600ea870ff8c2012148b44bf18b74fad48d0f835c38c7d07c5f" -dependencies = [ - "logos-derive", -] - -[[package]] -name = "logos-codegen" -version = "0.16.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58b3ffaa284e1350d017a57d04ada118c4583cf260c8fb01e0fe28a2e9cf8970" -dependencies = [ - "fnv", - "proc-macro2", - "quote", - "regex-automata", - "regex-syntax", - "syn 2.0.119", -] - -[[package]] -name = "logos-derive" -version = "0.16.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52d3a9855747c17eaf4383823f135220716ab49bea5fbea7dd42cc9a92f8aa31" -dependencies = [ - "logos-codegen", -] - -[[package]] -name = "lru" -version = "0.18.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff9840bcc50b71349309900da0ce7279aa336ae71d73250b07998932c7d97c25" -dependencies = [ - "hashbrown 0.17.1", -] - -[[package]] -name = "lru-slab" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4050469837a6ff301cd14c1f8f24f88549e6d548f24f64e2148eb0f72cebc51f" - -[[package]] -name = "manyhow" -version = "0.11.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b33efb3ca6d3b07393750d4030418d594ab1139cee518f0dc88db70fec873587" -dependencies = [ - "manyhow-macros", - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] -name = "manyhow-macros" -version = "0.11.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46fce34d199b78b6e6073abf984c9cf5fd3e9330145a93ee0738a7443e371495" -dependencies = [ - "proc-macro-utils", - "proc-macro2", - "quote", -] - -[[package]] -name = "matchers" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1525a2a28c7f4fa0fc98bb91ae755d1e2d1505079e05539e35bc876b5d65ae9" -dependencies = [ - "regex-automata", -] - -[[package]] -name = "matchit" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47e1ffaa40ddd1f3ed91f717a33c8c0ee23fff369e3aa8772b9605cc1d22f4c3" - -[[package]] -name = "md-5" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69b6441f590336821bb897fb28fc622898ccceb1d6cea3fde5ea86b090c4de98" -dependencies = [ - "cfg-if", - "digest 0.11.3", -] - -[[package]] -name = "memchr" -version = "2.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf8baf1c55e62ffcace7a9f06f4bd9cd3f0c4beb022d3b367256b91b87513d98" - -[[package]] -name = "miette" -version = "7.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f98efec8807c63c752b5bd61f862c165c115b0a35685bdcfd9238c7aeb592b7" -dependencies = [ - "cfg-if", - "miette-derive", - "serde", - "unicode-width 0.1.14", -] - -[[package]] -name = "miette-derive" -version = "7.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db5b29714e950dbb20d5e6f74f9dcec4edbcc1067bb7f8ed198c097b8c1a818b" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] -name = "mime" -version = "0.3.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" - -[[package]] -name = "mime_guess" -version = "2.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7c44f8e672c00fe5308fa235f821cb4198414e1c77935c1ab6948d3fd78550e" -dependencies = [ - "mime", - "unicase", -] - -[[package]] -name = "mio" -version = "1.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b18443e9c262bfe8fa82f51666e2642c53393f7e5c27b3e1aeab922cff5b9d8" -dependencies = [ - "libc", - "wasi", - "windows-sys 0.61.2", -] - -[[package]] -name = "multer" -version = "3.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83e87776546dc87511aa5ee218730c92b666d7264ab6ed41f9d215af9cd5224b" -dependencies = [ - "bytes", - "encoding_rs", - "futures-util", - "http 1.5.0", - "httparse", - "memchr", - "mime", - "spin 0.9.9", - "version_check", -] - -[[package]] -name = "multiversion" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4ca4bea16ffc3f443cf7d866912118196bfef4c6a1556ca00f9f9b00bb43f7c" -dependencies = [ - "multiversion-macros", -] - -[[package]] -name = "multiversion-macros" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d416831a7317ef4b08bee00b69cbbb9c8763da7959a7026244d6266869f9c83" -dependencies = [ - "proc-macro2", - "quote", - "rustversion", - "syn 3.0.6", -] - -[[package]] -name = "multiversion_no_op" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "743fb55ba31b18fb1ecef6bdc9aa2743314978ac084044301a7eee33fb99a20d" - -[[package]] -name = "new_debug_unreachable" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" - -[[package]] -name = "next_tuple" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60993920e071b0c9b66f14e2b32740a4e27ffc82854dcd72035887f336a09a28" - -[[package]] -name = "nkeys" -version = "0.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "879011babc47a1c7fdf5a935ae3cfe94f34645ca0cac1c7f6424b36fc743d1bf" -dependencies = [ - "data-encoding", - "ed25519", - "ed25519-dalek", - "getrandom 0.2.17", - "log", - "rand 0.8.8", - "signatory", -] - -[[package]] -name = "nonempty" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9e591e719385e6ebaeb5ce5d3887f7d5676fceca6411d1925ccc95745f3d6f7" - -[[package]] -name = "nonempty" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9737e026353e5cd0736f98eddae28665118eb6f6600902a7f50db585621fecb6" -dependencies = [ - "serde", -] - -[[package]] -name = "nonzero_ext" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38bf9645c8b145698bb0b18a4637dcacbc421ea49bef2317e4fd8065a387cf21" - -[[package]] -name = "nu-ansi-term" -version = "0.50.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7957b9740744892f114936ab4a57b3f487491bbeafaf8083688b16841a4240e5" -dependencies = [ - "windows-sys 0.61.2", -] - -[[package]] -name = "nuid" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc895af95856f929163a0aa20c26a78d26bfdc839f51b9d5aa7a5b79e52b7e83" -dependencies = [ - "rand 0.8.8", -] - -[[package]] -name = "num-bigint" -version = "0.4.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c89e69e7e0f03bea5ef08013795c25018e101932225a656383bd384495ecc367" -dependencies = [ - "num-integer", - "num-traits", -] - -[[package]] -name = "num-bigint-dig" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e661dda6640fad38e827a6d4a310ff4763082116fe217f279885c97f511bb0b7" -dependencies = [ - "lazy_static", - "libm", - "num-integer", - "num-iter", - "num-traits", - "rand 0.8.8", - "smallvec", - "zeroize", -] - -[[package]] -name = "num-conv" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "521739c6d2bac4aa25192232afe6841231376b2b26d4d9fae5ecf8ca5772e441" - -[[package]] -name = "num-integer" -version = "0.1.47" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ce2d95d4b3734dc35aa2f45e1aa22cd416814592a4f9d9205e11affd5b8e10b" -dependencies = [ - "num-traits", -] - -[[package]] -name = "num-iter" -version = "0.1.46" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c92800bd69a1eac91786bcfe9da64a897eb72911b8dc3095decbd07429e8048b" -dependencies = [ - "num-integer", - "num-traits", -] - -[[package]] -name = "num-traits" -version = "0.2.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" -dependencies = [ - "autocfg", - "libm", -] - -[[package]] -name = "oauth2" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51e219e79014df21a225b1860a479e2dcd7cbd9130f4defd4bd0e191ea31d67d" -dependencies = [ - "base64 0.22.1", - "chrono", - "getrandom 0.2.17", - "http 1.5.0", - "rand 0.8.8", - "reqwest", - "serde", - "serde_json", - "serde_path_to_error", - "sha2 0.10.9", - "thiserror 1.0.69", - "url", -] - -[[package]] -name = "object" -version = "0.39.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e5a6c098c7a3b6547378093f5cc30bc54fd361ce711e05293a5cc589562739b" -dependencies = [ - "memchr", -] - -[[package]] -name = "oco_ref" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed0423ff9973dea4d6bd075934fdda86ebb8c05bdf9d6b0507067d4a1226371d" -dependencies = [ - "serde", - "thiserror 2.0.20", -] - -[[package]] -name = "once_cell" -version = "1.21.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50" - -[[package]] -name = "openidconnect" -version = "4.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d8c6709ba2ea764bbed26bce1adf3c10517113ddea6f2d4196e4851757ef2b2" -dependencies = [ - "base64 0.21.7", - "chrono", - "dyn-clone", - "ed25519-dalek", - "hmac 0.12.1", - "http 1.5.0", - "itertools 0.10.5", - "log", - "oauth2", - "p256", - "p384", - "rand 0.8.8", - "rsa", - "serde", - "serde-value", - "serde_json", - "serde_path_to_error", - "serde_plain", - "serde_with", - "sha2 0.10.9", - "subtle", - "thiserror 1.0.69", - "url", -] - -[[package]] -name = "openssl-probe" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" - -[[package]] -name = "openssl-probe" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c87def4c32ab89d880effc9e097653c8da5d6ef28e6b539d313baaacfbafcbe" - -[[package]] -name = "or_poisoned" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c04f5d74368e4d0dfe06c45c8627c81bd7c317d52762d118fb9b3076f6420fd" - -[[package]] -name = "ordered-float" -version = "2.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68f19d67e5a2795c94e73e0bb1cc1a7edeb2e28efd39e2e1c9b7a40c1108b11c" -dependencies = [ - "num-traits", -] - -[[package]] -name = "outref" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a80800c0488c3a21695ea981a54918fbb37abf04f4d0720c453632255e2ff0e" - -[[package]] -name = "p256" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b" -dependencies = [ - "ecdsa", - "elliptic-curve", - "primeorder", - "sha2 0.10.9", -] - -[[package]] -name = "p384" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe42f1670a52a47d448f14b6a5c61dd78fce51856e68edaa38f7ae3a46b8d6b6" -dependencies = [ - "ecdsa", - "elliptic-curve", - "primeorder", - "sha2 0.10.9", -] - -[[package]] -name = "parking" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba" - -[[package]] -name = "parking_lot" -version = "0.12.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93857453250e3077bd71ff98b6a65ea6621a19bb0f559a85248955ac12c45a1a" -dependencies = [ - "lock_api", - "parking_lot_core", -] - -[[package]] -name = "parking_lot_core" -version = "0.9.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1" -dependencies = [ - "cfg-if", - "libc", - "redox_syscall", - "smallvec", - "windows-link", -] - -[[package]] -name = "paste" -version = "1.0.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" - -[[package]] -name = "pathdiff" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df94ce210e5bc13cb6651479fa48d14f601d9858cfe0467f43ae157023b938d3" - -[[package]] -name = "pem-rfc7468" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412" -dependencies = [ - "base64ct", -] - -[[package]] -name = "percent-encoding" -version = "2.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220" - -[[package]] -name = "petgraph" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3672b37090dbd86368a4145bc067582552b29c27377cad4e0a306c97f9bd7772" -dependencies = [ - "fixedbitset", - "indexmap 2.14.2", -] - -[[package]] -name = "phf_shared" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5" -dependencies = [ - "siphasher", -] - -[[package]] -name = "pico-args" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5be167a7af36ee22fe3115051bc51f6e6c7054c9348e28deb4f49bd6f705a315" - -[[package]] -name = "pin-project" -version = "1.1.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2466b2336ed02bcdca6b294417127b90ec92038d1d5c4fbeac971a922e0e0924" -dependencies = [ - "pin-project-internal", -] - -[[package]] -name = "pin-project-internal" -version = "1.1.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c96395f0a926bc13b1c17622aaddda1ecb55d49c8f1bf9777e4d877800a43f8b" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] -name = "pin-project-lite" -version = "0.2.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a89322df9ebe1c1578d689c92318e070967d1042b512afbe49518723f4e6d5cd" - -[[package]] -name = "pin-utils" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" - -[[package]] -name = "pkcs1" -version = "0.7.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8ffb9f10fa047879315e6625af03c164b16962a5368d724ed16323b68ace47f" -dependencies = [ - "der", - "pkcs8", - "spki", -] - -[[package]] -name = "pkcs8" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" -dependencies = [ - "der", - "spki", -] - -[[package]] -name = "pkg-config" -version = "0.3.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6b464fbc74e149a392436b17d523f769e057cb6877f6a5c4618bc6f11800548" - -[[package]] -name = "portable-atomic" -version = "1.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05c8b63e8d9609db387f0324918f81d68fe27748f084ef092fb35954d0539a85" - -[[package]] -name = "portable-atomic-util" -version = "0.2.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10ab3eb7f3becc3a1cbc4f2c6f20267996cfc1a6467a873763411b136a122715" -dependencies = [ - "portable-atomic", -] - -[[package]] -name = "portal" -version = "0.5.10" -source = "git+https://project.uhhm.no/uhhm/portal.git?tag=v0.5.10#cb31995299a61fd3bf8a245e5b1d943e3c073043" -dependencies = [ - "anyhow", - "arc-swap", - "async-nats", - "async-trait", - "aws-sdk-s3", - "axum", - "base64 0.22.1", - "cedar-policy", - "chrono", - "dotenvy", - "futures", - "jaq-core", - "jaq-json", - "jaq-std", - "leptos", - "leptos_axum", - "leptos_meta", - "leptos_router", - "openidconnect", - "pulldown-cmark", - "serde", - "serde_json", - "serde_yaml", - "sha2 0.10.9", - "tokio", - "tower", - "tower-http", - "tower-sessions", - "tower_governor", - "tracing", - "tracing-subscriber", - "url", - "uuid", -] - -[[package]] -name = "potential_utf" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d83eb9bc6d8e5cf568e7a1101d60ee05e81ed50ea106026f3d18deeb046d7661" -dependencies = [ - "zerovec", -] - -[[package]] -name = "powerfmt" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" - -[[package]] -name = "ppv-lite86" -version = "0.2.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" -dependencies = [ - "zerocopy", -] - -[[package]] -name = "precomputed-hash" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" - -[[package]] -name = "pretty" -version = "0.12.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d22152487193190344590e4f30e219cf3fe140d9e7a3fdb683d82aa2c5f4156" -dependencies = [ - "arrayvec", - "typed-arena", - "unicode-width 0.2.2", -] - -[[package]] -name = "prettyplease" -version = "0.2.37" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b" -dependencies = [ - "proc-macro2", - "syn 2.0.119", -] - -[[package]] -name = "primeorder" -version = "0.13.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6" -dependencies = [ - "elliptic-curve", -] - -[[package]] -name = "proc-macro-error-attr2" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96de42df36bb9bba5542fe9f1a054b8cc87e172759a1868aa05c1f3acc89dfc5" -dependencies = [ - "proc-macro2", - "quote", -] - -[[package]] -name = "proc-macro-error2" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11ec05c52be0a07b08061f7dd003e7d7092e0472bc731b4af7bb1ef876109802" -dependencies = [ - "proc-macro-error-attr2", - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] -name = "proc-macro-utils" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eeaf08a13de400bc215877b5bdc088f241b12eb42f0a548d3390dc1c56bb7071" -dependencies = [ - "proc-macro2", - "quote", - "smallvec", -] - -[[package]] -name = "proc-macro2" -version = "1.0.107" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "985e7ec9bb745e6ce6535b544d84d6cd6f7ad8bd711c398938ae983b91a766d9" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "proc-macro2-diagnostics" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.119", - "version_check", - "yansi", -] - -[[package]] -name = "psm" -version = "0.1.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4dcd034599e63b970727f70d79e02d62390a4a84f7c6b827c27c46d5ac3fa622" -dependencies = [ - "ar_archive_writer", - "cc", -] - -[[package]] -name = "pulldown-cmark" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9f068eba8e7071c5f9511831b44f32c740d5adf574e990f946ddb53db2f314e" -dependencies = [ - "bitflags 2.13.2", - "memchr", - "pulldown-cmark-escape", - "unicase", -] - -[[package]] -name = "pulldown-cmark-escape" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "007d8adb5ddab6f8e3f491ac63566a7d5002cc7ed73901f72057943fa71ae1ae" - -[[package]] -name = "quanta" -version = "0.12.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3ab5a9d756f0d97bdc89019bd2e4ea098cf9cde50ee7564dde6b81ccc8f06c7" -dependencies = [ - "crossbeam-utils", - "libc", - "once_cell", - "raw-cpuid", - "wasi", - "web-sys", - "winapi", -] - -[[package]] -name = "quinn" -version = "0.11.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4051e23e9185c255a7e33ef59cdbca87a22d359052eecd22fc6b901fb37d9d11" -dependencies = [ - "bytes", - "cfg_aliases", - "pin-project-lite", - "quinn-proto", - "quinn-udp", - "rustc-hash", - "rustls 0.23.45", - "socket2 0.6.5", - "thiserror 2.0.20", - "tokio", - "tracing", - "web-time", -] - -[[package]] -name = "quinn-proto" -version = "0.11.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9746dbde176634f4f2f1faf2404e30a31b2bc1e9cafb5329c95d8177a18c9fc" -dependencies = [ - "bytes", - "getrandom 0.4.3", - "lru-slab", - "rand 0.10.3", - "rand_pcg", - "ring", - "rustc-hash", - "rustls 0.23.45", - "rustls-pki-types", - "slab", - "thiserror 2.0.20", - "tinyvec", - "tracing", - "web-time", -] - -[[package]] -name = "quinn-udp" -version = "0.5.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35a133f956daabe89a61a685c2649f13d82d5aa4bd5d12d1277e1072a21c0694" -dependencies = [ - "cfg_aliases", - "libc", - "once_cell", - "socket2 0.6.5", - "tracing", - "windows-sys 0.61.2", -] - -[[package]] -name = "quote" -version = "1.0.47" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fbf4db142a473a8d80c26bbf18454ed458bf8d26c8219c331daecfdbd079001" -dependencies = [ - "proc-macro2", -] - -[[package]] -name = "quote-use" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9619db1197b497a36178cfc736dc96b271fe918875fbf1344c436a7e93d0321e" -dependencies = [ - "quote", - "quote-use-macros", -] - -[[package]] -name = "quote-use-macros" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82ebfb7faafadc06a7ab141a6f67bcfb24cb8beb158c6fe933f2f035afa99f35" -dependencies = [ - "proc-macro-utils", - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] -name = "r-efi" -version = "5.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" - -[[package]] -name = "r-efi" -version = "6.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf" - -[[package]] -name = "rand" -version = "0.8.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e058c7de0b26af77780c769414d6257830bb240f3c38477dbc2c16e5f54d6d4c" -dependencies = [ - "libc", - "rand_chacha 0.3.1", - "rand_core 0.6.4", -] - -[[package]] -name = "rand" -version = "0.9.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9ef1d0d795eb7d84685bca4f72f3649f064e6641543d3a8c415898726a57b41" -dependencies = [ - "rand_chacha 0.9.0", - "rand_core 0.9.5", -] - -[[package]] -name = "rand" -version = "0.10.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65c9fb96cbc91e3478eaae79a69fcd3f1ae4ad052e471fe6732fff548984b4af" -dependencies = [ - "chacha20", - "getrandom 0.4.3", - "rand_core 0.10.1", -] - -[[package]] -name = "rand_chacha" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" -dependencies = [ - "ppv-lite86", - "rand_core 0.6.4", -] - -[[package]] -name = "rand_chacha" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" -dependencies = [ - "ppv-lite86", - "rand_core 0.9.5", -] - -[[package]] -name = "rand_core" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" -dependencies = [ - "getrandom 0.2.17", -] - -[[package]] -name = "rand_core" -version = "0.9.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76afc826de14238e6e8c374ddcc1fa19e374fd8dd986b0d2af0d02377261d83c" -dependencies = [ - "getrandom 0.3.4", -] - -[[package]] -name = "rand_core" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63b8176103e19a2643978565ca18b50549f6101881c443590420e4dc998a3c69" - -[[package]] -name = "rand_pcg" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "caa0f4137e1c0a72f4c651489402276c8e8e1cf081f3b0ba156d2cbeef09e86a" -dependencies = [ - "rand_core 0.10.1", -] - -[[package]] -name = "raw-cpuid" -version = "11.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "498cd0dc59d73224351ee52a95fee0f1a617a2eae0e7d9d720cc622c73a54186" -dependencies = [ - "bitflags 2.13.2", -] - -[[package]] -name = "reactive_graph" -version = "0.2.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00c5a025366836190c7030e883cc2bcd9e384ff555336e3c7954741ca411b177" -dependencies = [ - "any_spawner", - "async-lock", - "futures", - "guardian", - "hydration_context", - "indexmap 2.14.2", - "or_poisoned", - "paste", - "pin-project-lite", - "rustc-hash", - "rustc_version", - "send_wrapper", - "serde", - "slotmap", - "thiserror 2.0.20", - "web-sys", -] - -[[package]] -name = "reactive_stores" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c30fd35b7d299c591293bb69fed47a703eb2703b1cff0493e78b16ed007e5382" -dependencies = [ - "guardian", - "indexmap 2.14.2", - "itertools 0.14.0", - "or_poisoned", - "paste", - "reactive_graph", - "reactive_stores_macro", - "rustc-hash", - "send_wrapper", -] - -[[package]] -name = "reactive_stores_macro" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68072edd607edd30b9ebf57d984ba45d8ab8809e598d0f6046278373fb76a5a0" -dependencies = [ - "convert_case 0.11.0", - "proc-macro-error2", - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] -name = "redox_syscall" -version = "0.5.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d" -dependencies = [ - "bitflags 2.13.2", -] - -[[package]] -name = "ref-cast" -version = "1.0.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e440fb4e4b4147295338efb76001ab9e4efc0e5839df2c47fc5ac2381d365c3" -dependencies = [ - "ref-cast-impl", -] - -[[package]] -name = "ref-cast-impl" -version = "1.0.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92ecd8964f8453721699a1ed72037b0db49ce2f5a5138486ee89bed6f67cdf3a" -dependencies = [ - "proc-macro2", - "quote", - "syn 3.0.6", -] - -[[package]] -name = "regex" -version = "1.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f020237b6c8eed93db2e2cb53c00c60a8e1bc73da7d073199a1180401450218d" -dependencies = [ - "aho-corasick", - "memchr", - "regex-automata", - "regex-syntax", -] - -[[package]] -name = "regex-automata" -version = "0.4.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad8553b9b26413251cbf30e620595c7a41b3887f03da04579c0e6b0d6a06b4b2" -dependencies = [ - "aho-corasick", - "memchr", - "regex-syntax", -] - -[[package]] -name = "regex-bites" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6a15a2fa0bfda9361941c45550896ae87b15cc6c8c939ea350079670332e211" - -[[package]] -name = "regex-lite" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cab834c73d247e67f4fae452806d17d3c7501756d98c8808d7c9c7aa7d18f973" - -[[package]] -name = "regex-syntax" -version = "0.8.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6f6ff9a378485b298a5286656da665ba74413d36db0979633275d2e708145d4" - -[[package]] -name = "reqwest" -version = "0.12.28" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eddd3ca559203180a307f12d114c268abf583f59b03cb906fd0b3ff8646c1147" -dependencies = [ - "base64 0.22.1", - "bytes", - "futures-core", - "http 1.5.0", - "http-body 1.1.0", - "http-body-util", - "hyper 1.11.1", - "hyper-rustls 0.27.10", - "hyper-util", - "js-sys", - "log", - "percent-encoding", - "pin-project-lite", - "quinn", - "rustls 0.23.45", - "rustls-pki-types", - "serde", - "serde_json", - "serde_urlencoded", - "sync_wrapper", - "tokio", - "tokio-rustls 0.26.5", - "tower", - "tower-http", - "tower-service", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", - "webpki-roots", -] - -[[package]] -name = "rfc6979" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" -dependencies = [ - "hmac 0.12.1", - "subtle", -] - -[[package]] -name = "ring" -version = "0.17.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7" -dependencies = [ - "cc", - "cfg-if", - "getrandom 0.2.17", - "libc", - "untrusted", - "windows-sys 0.52.0", -] - -[[package]] -name = "rsa" -version = "0.9.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8573f03f5883dcaebdfcf4725caa1ecb9c15b2ef50c43a07b816e06799bb12d" -dependencies = [ - "const-oid 0.9.6", - "digest 0.10.7", - "num-bigint-dig", - "num-integer", - "num-traits", - "pkcs1", - "pkcs8", - "rand_core 0.6.4", - "signature", - "spki", - "subtle", - "zeroize", -] - -[[package]] -name = "rstml" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61cf4616de7499fc5164570d40ca4e1b24d231c6833a88bff0fe00725080fd56" -dependencies = [ - "derive-where", - "proc-macro2", - "proc-macro2-diagnostics", - "quote", - "syn 2.0.119", - "syn_derive", - "thiserror 2.0.20", -] - -[[package]] -name = "rustc-hash" -version = "2.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b1e7f9a428571be2dc5bc0505c13fb6bf936822b894ec87abf8a08a4e51742d" - -[[package]] -name = "rustc-literal-escaper" -version = "0.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfe6f213fb658c8fb95baabd5420393438cf5a98d707f5dd701d9197c705f71e" - -[[package]] -name = "rustc_version" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" -dependencies = [ - "semver", -] - -[[package]] -name = "rustls" -version = "0.21.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e" -dependencies = [ - "log", - "ring", - "rustls-webpki 0.101.7", - "sct", -] - -[[package]] -name = "rustls" -version = "0.23.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d41d731c7d2f962d1ccc364cec258de3c0e93b38c2fb3ba97ac74513048d634" -dependencies = [ - "aws-lc-rs", - "once_cell", - "ring", - "rustls-pki-types", - "rustls-webpki 0.103.15", - "subtle", - "zeroize", -] - -[[package]] -name = "rustls-native-certs" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5bfb394eeed242e909609f56089eecfe5fda225042e8b171791b9c95f5931e5" -dependencies = [ - "openssl-probe 0.1.6", - "rustls-pemfile", - "rustls-pki-types", - "schannel", - "security-framework 2.11.1", -] - -[[package]] -name = "rustls-native-certs" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dab5152771c58876a2146916e53e35057e1a4dfa2b9df0f0305b07f611fdea4d" -dependencies = [ - "openssl-probe 0.2.1", - "rustls-pki-types", - "schannel", - "security-framework 3.7.0", -] - -[[package]] -name = "rustls-pemfile" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dce314e5fee3f39953d46bb63bb8a46d40c2f8fb7cc5a3b6cab2bde9721d6e50" -dependencies = [ - "rustls-pki-types", -] - -[[package]] -name = "rustls-pki-types" -version = "1.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f4925028c7eb5d1fcdaf196971378ed9d2c1c4efc7dc5d011256f76c99c0a96" -dependencies = [ - "web-time", - "zeroize", -] - -[[package]] -name = "rustls-webpki" -version = "0.101.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" -dependencies = [ - "ring", - "untrusted", -] - -[[package]] -name = "rustls-webpki" -version = "0.102.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64ca1bc8749bd4cf37b5ce386cc146580777b4e8572c7b97baf22c83f444bee9" -dependencies = [ - "ring", - "rustls-pki-types", - "untrusted", -] - -[[package]] -name = "rustls-webpki" -version = "0.103.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3c3cf1d8b1e7d4927e2d154c3fcb02979afb9939629c62cd9048d4f07b60ac2" -dependencies = [ - "aws-lc-rs", - "ring", - "rustls-pki-types", - "untrusted", -] - -[[package]] -name = "rustversion" -version = "1.0.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf54715a573b99ac80df0bc206da022bcd442c974952c7b9720069370852e21f" - -[[package]] -name = "ryu" -version = "1.0.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9774ba4a74de5f7b1c1451ed6cd5285a32eddb5cccb8cc655a4e50009e06477f" - -[[package]] -name = "same-file" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" -dependencies = [ - "winapi-util", -] - -[[package]] -name = "schannel" -version = "0.1.29" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91c1b7e4904c873ef0710c1f407dde2e6287de2bebc1bbbf7d430bb7cbffd939" -dependencies = [ - "windows-sys 0.61.2", -] - -[[package]] -name = "schemars" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cd191f9397d57d581cddd31014772520aa448f65ef991055d7f61582c65165f" -dependencies = [ - "dyn-clone", - "ref-cast", - "serde", - "serde_json", -] - -[[package]] -name = "schemars" -version = "1.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "687274d293b6cdc6e73e0fee520bf2049650090d7164f87672d212a3c530cf4a" -dependencies = [ - "dyn-clone", - "ref-cast", - "serde", - "serde_json", -] - -[[package]] -name = "scopeguard" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" - -[[package]] -name = "sct" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" -dependencies = [ - "ring", - "untrusted", -] - -[[package]] -name = "sec1" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" -dependencies = [ - "base16ct", - "der", - "generic-array", - "pkcs8", - "subtle", - "zeroize", -] - -[[package]] -name = "security-framework" -version = "2.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" -dependencies = [ - "bitflags 2.13.2", - "core-foundation 0.9.4", - "core-foundation-sys", - "libc", - "security-framework-sys", -] - -[[package]] -name = "security-framework" -version = "3.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7f4bc775c73d9a02cde8bf7b2ec4c9d12743edf609006c7facc23998404cd1d" -dependencies = [ - "bitflags 2.13.2", - "core-foundation 0.10.1", - "core-foundation-sys", - "libc", - "security-framework-sys", -] - -[[package]] -name = "security-framework-sys" -version = "2.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ce2691df843ecc5d231c0b14ece2acc3efb62c0a398c7e1d875f3983ce020e3" -dependencies = [ - "core-foundation-sys", - "libc", -] - -[[package]] -name = "self_cell" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ab42ca02749e120097e328d91d415325bdf43b1c72c4c8badf37375fe40a813" - -[[package]] -name = "semver" -version = "1.0.28" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd" - -[[package]] -name = "send_wrapper" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73" -dependencies = [ - "futures-core", -] - -[[package]] -name = "serde" -version = "1.0.229" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4148590afebada386688f18773da617792bf2ef03ffc1e4cbd2b1d45b023e0ba" -dependencies = [ - "serde_core", - "serde_derive", -] - -[[package]] -name = "serde-value" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3a1a3341211875ef120e117ea7fd5228530ae7e7036a779fdc9117be6b3282c" -dependencies = [ - "ordered-float", - "serde", -] - -[[package]] -name = "serde_core" -version = "1.0.229" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67dca2c9c51e58a4791a4b1ed58308b39c64224d349a935ab5039aa360942a48" -dependencies = [ - "serde_derive", -] - -[[package]] -name = "serde_derive" -version = "1.0.229" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7a5d71263a5a7d47b41f6b3f06ba276f10cc18b0931f1799f710578e2309348" -dependencies = [ - "proc-macro2", - "quote", - "syn 3.0.6", -] - -[[package]] -name = "serde_json" -version = "1.0.151" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c841b55ecdae098c80dcae9cf767f6f8a0c2cdb3416bbef72181df4d0fe73f14" -dependencies = [ - "indexmap 2.14.2", - "itoa", - "memchr", - "serde", - "serde_core", - "zmij", -] - -[[package]] -name = "serde_nanos" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a93142f0367a4cc53ae0fead1bcda39e85beccfad3dcd717656cacab94b12985" -dependencies = [ - "serde", -] - -[[package]] -name = "serde_path_to_error" -version = "0.1.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10a9ff822e371bb5403e391ecd83e182e0e77ba7f6fe0160b795797109d1b457" -dependencies = [ - "itoa", - "serde", - "serde_core", -] - -[[package]] -name = "serde_plain" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ce1fc6db65a611022b23a0dec6975d63fb80a302cb3388835ff02c097258d50" -dependencies = [ - "serde", -] - -[[package]] -name = "serde_qs" -version = "0.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3faaf9e727533a19351a43cc5a8de957372163c7d35cc48c90b75cdda13c352" -dependencies = [ - "percent-encoding", - "serde", - "thiserror 2.0.20", -] - -[[package]] -name = "serde_repr" -version = "0.1.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d3b1629de253c70a0508c3899572da79ca359fdab27c7920ff00406df418906" -dependencies = [ - "proc-macro2", - "quote", - "syn 3.0.6", -] - -[[package]] -name = "serde_spanned" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6662b5879511e06e8999a8a235d848113e942c9124f211511b16466ee2995f26" -dependencies = [ - "serde_core", -] - -[[package]] -name = "serde_urlencoded" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" -dependencies = [ - "form_urlencoded", - "itoa", - "ryu", - "serde", -] - -[[package]] -name = "serde_with" -version = "3.23.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "935177bb8c0cd8ca1a4e6d1a2ac8988bea69cab4f9d3a31311e012ad27868ea4" -dependencies = [ - "base64 0.23.1", - "bs58", - "chrono", - "hex", - "indexmap 1.9.3", - "indexmap 2.14.2", - "jiff", - "schemars 0.9.0", - "schemars 1.2.2", - "serde_core", - "serde_json", - "serde_with_macros", - "time", -] - -[[package]] -name = "serde_with_macros" -version = "3.23.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d607aa01a3cb0ad757d6fd216136910db3c97b102fe686585689615a02dbcdc" -dependencies = [ - "darling", - "proc-macro2", - "quote", - "syn 3.0.6", -] - -[[package]] -name = "serde_yaml" -version = "0.9.34+deprecated" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" -dependencies = [ - "indexmap 2.14.2", - "itoa", - "ryu", - "serde", - "unsafe-libyaml", -] - -[[package]] -name = "server_fn" -version = "0.8.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be8559dd05af1b5b7e363a150616589d5a88af5187273f7f331ba0dae8922812" -dependencies = [ - "axum", - "base64 0.22.1", - "bytes", - "const-str", - "const_format", - "futures", - "gloo-net", - "http 1.5.0", - "http-body-util", - "hyper 1.11.1", - "inventory", - "js-sys", - "or_poisoned", - "pin-project-lite", - "rustc_version", - "rustversion", - "send_wrapper", - "serde", - "serde_json", - "serde_qs", - "server_fn_macro_default", - "thiserror 2.0.20", - "throw_error", - "tokio", - "tower", - "tower-layer", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "wasm-streams", - "web-sys", - "xxhash-rust", -] - -[[package]] -name = "server_fn_macro" -version = "0.8.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1295b54815397d30d986b63f93cfd515fa86d5e528e0bb589ce9d530502f9e0f" -dependencies = [ - "const_format", - "convert_case 0.11.0", - "proc-macro2", - "quote", - "rustc_version", - "syn 2.0.119", - "xxhash-rust", -] - -[[package]] -name = "server_fn_macro_default" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63eb08f80db903d3c42f64e60ebb3875e0305be502bdc064ec0a0eab42207f00" -dependencies = [ - "server_fn_macro", - "syn 2.0.119", -] - -[[package]] -name = "sha1" -version = "0.10.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a978451301f4db1d02937a4ab3ccce137717b81826e79b7d49ffe3244a13c3b8" -dependencies = [ - "cfg-if", - "cpufeatures 0.2.17", - "digest 0.10.7", -] - -[[package]] -name = "sha1" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aacc4cc499359472b4abe1bf11d0b12e688af9a805fa5e3016f9a386dc2d0214" -dependencies = [ - "cfg-if", - "cpufeatures 0.3.1", - "digest 0.11.3", -] - -[[package]] -name = "sha2" -version = "0.10.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" -dependencies = [ - "cfg-if", - "cpufeatures 0.2.17", - "digest 0.10.7", -] - -[[package]] -name = "sha2" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "446ba717509524cb3f22f17ecc096f10f4822d76ab5c0b9822c5f9c284e825f4" -dependencies = [ - "cfg-if", - "cpufeatures 0.3.1", - "digest 0.11.3", -] - -[[package]] -name = "sha3" -version = "0.10.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77fd7028345d415a4034cf8777cd4f8ab1851274233b45f84e3d955502d93874" -dependencies = [ - "digest 0.10.7", - "keccak", -] - -[[package]] -name = "sharded-slab" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" -dependencies = [ - "lazy_static", -] - -[[package]] -name = "shlex" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8fadd59c855ef2080decdef8ff161eb6661b86933c9d82e5ba29dc602a55aba" - -[[package]] -name = "signal-hook-registry" -version = "1.4.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4db69cba1110affc0e9f7bcd48bbf87b3f4fc7c61fc9155afd4c469eb3d6c1b" -dependencies = [ - "errno", - "libc", -] - -[[package]] -name = "signatory" -version = "0.27.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1e303f8205714074f6068773f0e29527e0453937fe837c9717d066635b65f31" -dependencies = [ - "pkcs8", - "rand_core 0.6.4", - "signature", - "zeroize", -] - -[[package]] -name = "signature" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" -dependencies = [ - "digest 0.10.7", - "rand_core 0.6.4", -] - -[[package]] -name = "simdutf8" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" - -[[package]] -name = "siphasher" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ee5873ec9cce0195efcb7a4e9507a04cd49aec9c83d0389df45b1ef7ba2e649" - -[[package]] -name = "slab" -version = "0.4.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5" - -[[package]] -name = "slotmap" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdd58c3c93c3d278ca835519292445cb4b0d4dc59ccfdf7ceadaab3f8aeb4038" -dependencies = [ - "version_check", -] - -[[package]] -name = "smallvec" -version = "1.16.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba467056f1b547ed52077911161fc86985becbc60e8e1857c8a144dab0def891" - -[[package]] -name = "smol_str" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4aaa7368fcf4852a4c2dd92df0cace6a71f2091ca0a23391ce7f3a31833f1523" -dependencies = [ - "borsh", - "serde_core", -] - -[[package]] -name = "socket2" -version = "0.5.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e22376abed350d73dd1cd119b57ffccad95b4e585a7cda43e286245ce23c0678" -dependencies = [ - "libc", - "windows-sys 0.52.0", -] - -[[package]] -name = "socket2" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3d1e2c7f27f8d4cb10542a02c49005dbd6e93095799d6f3be745fae9f8fedd4" -dependencies = [ - "libc", - "windows-sys 0.61.2", -] - -[[package]] -name = "spin" -version = "0.9.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3763264f6b73151db08c50ff20d7d8a0b8796e021cdea7ceedad07b80155fa0e" - -[[package]] -name = "spin" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "023a211cb3138dbc438680b32560ad89f699977624c9f8dbb95a47d5b4c07dd3" - -[[package]] -name = "spinning_top" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d96d2d1d716fb500937168cc09353ffdc7a012be8475ac7308e1bdf0e3923300" -dependencies = [ - "lock_api", -] - -[[package]] -name = "spki" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d" -dependencies = [ - "base64ct", - "der", -] - -[[package]] -name = "stable_deref_trait" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596" - -[[package]] -name = "stacker" -version = "0.1.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "707f49d46706bacf8a2b00d51dace3f9de527c13eec3778f570c411f89e69967" -dependencies = [ - "cc", - "cfg-if", - "libc", - "psm", - "windows-sys 0.61.2", -] - -[[package]] -name = "string_cache" -version = "0.8.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf776ba3fa74f83bf4b63c3dcbbf82173db2632ed8452cb2d891d33f459de70f" -dependencies = [ - "new_debug_unreachable", - "parking_lot", - "phf_shared", - "precomputed-hash", -] - -[[package]] -name = "strsim" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" - -[[package]] -name = "subtle" -version = "2.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" - -[[package]] -name = "syn" -version = "2.0.119" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "872831b642d1a07999a962a351ed35b955ea2cfc8f3862091e2a240a84f17297" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "syn" -version = "3.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8593e8e72159ed2257d083c7a454a85cbf854f37a0966d8d483aff8c8a3ebcee" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "syn_derive" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdb066a04799e45f5d582e8fc6ec8e6d6896040d00898eb4e6a835196815b219" -dependencies = [ - "proc-macro-error2", - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] -name = "sync_wrapper" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bf256ce5efdfa370213c1dabab5935a12e49f2c58d15e9eac2870d3b4f27263" -dependencies = [ - "futures-core", -] - -[[package]] -name = "synstructure" -version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "901704edd0dfe137f1987838ee4f259e4e063c31371bdb423f7ae38ec6f77f02" -dependencies = [ - "proc-macro2", - "quote", - "syn 3.0.6", -] - -[[package]] -name = "tachys" -version = "0.2.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a92ba81187437cc5df4281f2326a2e13cc81e8f96448292d1112388e2025ca66" -dependencies = [ - "any_spawner", - "async-trait", - "const_str_slice_concat", - "drain_filter_polyfill", - "either_of", - "erased", - "futures", - "html-escape", - "indexmap 2.14.2", - "itertools 0.14.0", - "js-sys", - "next_tuple", - "oco_ref", - "or_poisoned", - "paste", - "reactive_graph", - "reactive_stores", - "rustc-hash", - "rustc_version", - "send_wrapper", - "slotmap", - "throw_error", - "wasm-bindgen", - "web-sys", -] - -[[package]] -name = "term" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8c27177b12a6399ffc08b98f76f7c9a1f4fe9fc967c784c5a071fa8d93cf7e1" -dependencies = [ - "windows-sys 0.61.2", -] - -[[package]] -name = "thiserror" -version = "1.0.69" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" -dependencies = [ - "thiserror-impl 1.0.69", -] - -[[package]] -name = "thiserror" -version = "2.0.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec86235f5fcc2a73650310756d2ac5b138a5780bbbdfae3eeccec992c435ba4f" -dependencies = [ - "thiserror-impl 2.0.20", -] - -[[package]] -name = "thiserror-impl" -version = "1.0.69" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] -name = "thiserror-impl" -version = "2.0.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc04cd3e1236dd4a98afca4569f2deb3f120e5422a4023be2cb683f8486292af" -dependencies = [ - "proc-macro2", - "quote", - "syn 3.0.6", -] - -[[package]] -name = "thread_local" -version = "1.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ad99c4c6d32803332c548b1af0540b357b3f5fc0be8f6c6bfe8b2e6ae784070" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "throw_error" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc0ed6038fcbc0795aca7c92963ddda636573b956679204e044492d2b13c8f64" -dependencies = [ - "pin-project-lite", -] - -[[package]] -name = "time" -version = "0.3.55" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdb87b95ec50ddfa440816d227a17b2ccbdda963a316a727fda0fc4334f7d134" -dependencies = [ - "deranged", - "num-conv", - "powerfmt", - "serde_core", - "time-core", - "time-macros", -] - -[[package]] -name = "time-core" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e1c906769ad99c88eaa54e728060edef082f8e358ff32030cb7c7d315e81109" - -[[package]] -name = "time-macros" -version = "0.2.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e689342a48d2ea927c87ea50cabf8594854bf940e9310208848d680d668ed85" -dependencies = [ - "num-conv", - "time-core", -] - -[[package]] -name = "tinystr" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1e27c91459209c2986af3dcf603a5a74a4368754ce37414f59acc971167f643" -dependencies = [ - "displaydoc", - "zerovec", -] - -[[package]] -name = "tinyvec" -version = "1.13.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd3ca314f692efd6c868f8408f53fe444634a845f96c028b97d35f6a1f79f0ee" - -[[package]] -name = "tokio" -version = "1.53.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "202caea871b69668250d242070849eb495be178ed697a3e98aebce5bc81a0bed" -dependencies = [ - "bytes", - "libc", - "mio", - "pin-project-lite", - "signal-hook-registry", - "socket2 0.6.5", - "tokio-macros", - "windows-sys 0.61.2", -] - -[[package]] -name = "tokio-macros" -version = "2.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78773a2a397f451582ce068015985c33193cf6dea8b74d2a639fe457b2f07b0e" -dependencies = [ - "proc-macro2", - "quote", - "syn 3.0.6", -] - -[[package]] -name = "tokio-rustls" -version = "0.24.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" -dependencies = [ - "rustls 0.21.12", - "tokio", -] - -[[package]] -name = "tokio-rustls" -version = "0.26.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0c85f2c3ef0b1cd58b36682f4b17aaa995f0e5db534d85692b4903abce21f67" -dependencies = [ - "rustls 0.23.45", - "tokio", -] - -[[package]] -name = "tokio-stream" -version = "0.1.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3d06f0b082ba57c26b79407372e57cf2a1e28124f78e9479fe80322cf53420b" -dependencies = [ - "futures-core", - "pin-project-lite", - "tokio", -] - -[[package]] -name = "tokio-tungstenite" -version = "0.29.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f72a05e828585856dacd553fba484c242c46e391fb0e58917c942ee9202915c" -dependencies = [ - "futures-util", - "log", - "tokio", - "tungstenite", -] - -[[package]] -name = "tokio-util" -version = "0.7.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "494815d09bf52b5548659851081238f0ca39ff638363907596da739561c62c52" -dependencies = [ - "bytes", - "futures-core", - "futures-sink", - "libc", - "pin-project-lite", - "tokio", -] - -[[package]] -name = "tokio-websockets" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f591660438b3038dd04d16c938271c79e7e06260ad2ea2885a4861bfb238605d" -dependencies = [ - "base64 0.22.1", - "bytes", - "futures-core", - "futures-sink", - "http 1.5.0", - "httparse", - "rand 0.8.8", - "ring", - "rustls-native-certs 0.8.4", - "rustls-pki-types", - "tokio", - "tokio-rustls 0.26.5", - "tokio-util", -] - -[[package]] -name = "toml" -version = "1.1.6+spec-1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "920602543f0911ab71da12c50d59701da54c196d1a2bf5cb4b75667f137a406a" -dependencies = [ - "serde_core", - "serde_spanned", - "toml_datetime", - "toml_parser", - "winnow", -] - -[[package]] -name = "toml_datetime" -version = "1.1.1+spec-1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3165f65f62e28e0115a00b2ebdd37eb6f3b641855f9d636d3cd4103767159ad7" -dependencies = [ - "serde_core", -] - -[[package]] -name = "toml_parser" -version = "1.1.3+spec-1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d38ac1cf9b95face32296c0a3ede1fdc270627c9d9c02a7274dd6d960dc4d56" -dependencies = [ - "winnow", -] - -[[package]] -name = "tonic" -version = "0.14.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac2a5518c70fa84342385732db33fb3f44bc4cc748936eb5833d2df34d6445ef" -dependencies = [ - "async-trait", - "axum", - "base64 0.22.1", - "bytes", - "h2 0.4.19", - "http 1.5.0", - "http-body 1.1.0", - "http-body-util", - "hyper 1.11.1", - "hyper-timeout", - "hyper-util", - "percent-encoding", - "pin-project", - "socket2 0.6.5", - "sync_wrapper", - "tokio", - "tokio-stream", - "tower", - "tower-layer", - "tower-service", - "tracing", -] - -[[package]] -name = "tower" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebe5ef63511595f1344e2d5cfa636d973292adc0eec1f0ad45fae9f0851ab1d4" -dependencies = [ - "futures-core", - "futures-util", - "indexmap 2.14.2", - "pin-project-lite", - "slab", - "sync_wrapper", - "tokio", - "tokio-util", - "tower-layer", - "tower-service", - "tracing", -] - -[[package]] -name = "tower-cookies" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "151b5a3e3c45df17466454bb74e9ecedecc955269bdedbf4d150dfa393b55a36" -dependencies = [ - "axum-core", - "cookie", - "futures-util", - "http 1.5.0", - "parking_lot", - "pin-project-lite", - "tower-layer", - "tower-service", -] - -[[package]] -name = "tower-http" -version = "0.6.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cfcf7e2740e6fc6d4d688b4ef00650406bb94adf4731e43c096c3a19fe40840" -dependencies = [ - "bitflags 2.13.2", - "bytes", - "futures-core", - "futures-util", - "http 1.5.0", - "http-body 1.1.0", - "http-body-util", - "http-range-header", - "httpdate", - "mime", - "mime_guess", - "percent-encoding", - "pin-project-lite", - "tokio", - "tokio-util", - "tower", - "tower-layer", - "tower-service", - "url", -] - -[[package]] -name = "tower-layer" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "121c2a6cda46980bb0fcd1647ffaf6cd3fc79a013de288782836f6df9c48780e" - -[[package]] -name = "tower-service" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" - -[[package]] -name = "tower-sessions" -version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43a05911f23e8fae446005fe9b7b97e66d95b6db589dc1c4d59f6a2d4d4927d3" -dependencies = [ - "async-trait", - "http 1.5.0", - "time", - "tokio", - "tower-cookies", - "tower-layer", - "tower-service", - "tower-sessions-core", - "tower-sessions-memory-store", - "tracing", -] - -[[package]] -name = "tower-sessions-core" -version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce8cce604865576b7751b7a6bc3058f754569a60d689328bb74c52b1d87e355b" -dependencies = [ - "async-trait", - "axum-core", - "base64 0.22.1", - "futures", - "http 1.5.0", - "parking_lot", - "rand 0.8.8", - "serde", - "serde_json", - "thiserror 2.0.20", - "time", - "tokio", - "tracing", -] - -[[package]] -name = "tower-sessions-memory-store" -version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb05909f2e1420135a831dd5df9f5596d69196d0a64c3499ca474c4bd3d33242" -dependencies = [ - "async-trait", - "time", - "tokio", - "tower-sessions-core", -] - -[[package]] -name = "tower_governor" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44de9b94d849d3c46e06a883d72d408c2de6403367b39df2b1c9d9e7b6736fe6" -dependencies = [ - "axum", - "forwarded-header-value", - "governor", - "http 1.5.0", - "pin-project", - "thiserror 2.0.20", - "tonic", - "tower", - "tracing", -] - -[[package]] -name = "tracing" -version = "0.1.44" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63e71662fa4b2a2c3a26f570f037eb95bb1f85397f3cd8076caed2f026a6d100" -dependencies = [ - "log", - "pin-project-lite", - "tracing-attributes", - "tracing-core", -] - -[[package]] -name = "tracing-attributes" -version = "0.1.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] -name = "tracing-core" -version = "0.1.36" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db97caf9d906fbde555dd62fa95ddba9eecfd14cb388e4f491a66d74cd5fb79a" -dependencies = [ - "once_cell", - "valuable", -] - -[[package]] -name = "tracing-log" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3" -dependencies = [ - "log", - "once_cell", - "tracing-core", -] - -[[package]] -name = "tracing-subscriber" -version = "0.3.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb7f578e5945fb242538965c2d0b04418d38ec25c79d160cd279bf0731c8d319" -dependencies = [ - "matchers", - "nu-ansi-term", - "once_cell", - "regex-automata", - "sharded-slab", - "smallvec", - "thread_local", - "tracing", - "tracing-core", - "tracing-log", -] - -[[package]] -name = "try-lock" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" - -[[package]] -name = "tryhard" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fe58ebd5edd976e0fe0f8a14d2a04b7c81ef153ea9a54eebc42e67c2c23b4e5" -dependencies = [ - "pin-project-lite", - "tokio", -] - -[[package]] -name = "tungstenite" -version = "0.29.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c01152af293afb9c7c2a57e4b559c5620b421f6d133261c60dd2d0cdb38e6b8" -dependencies = [ - "bytes", - "data-encoding", - "http 1.5.0", - "httparse", - "log", - "rand 0.9.5", - "sha1 0.10.7", - "thiserror 2.0.20", -] - -[[package]] -name = "typed-arena" -version = "2.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6af6ae20167a9ece4bcb41af5b80f8a1f1df981f6391189ce00fd257af04126a" - -[[package]] -name = "typed-builder" -version = "0.23.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31aa81521b70f94402501d848ccc0ecaa8f93c8eb6999eb9747e72287757ffda" -dependencies = [ - "typed-builder-macro", -] - -[[package]] -name = "typed-builder-macro" -version = "0.23.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "076a02dc54dd46795c2e9c8282ed40bcfb1e22747e955de9389a1de28190fb26" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] -name = "typenum" -version = "1.20.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6f5e870be6c3b371b77fe0ee0bafb859fa4964b4404c27de1d380043c4dda20" - -[[package]] -name = "unicase" -version = "2.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbc4bc3a9f746d862c45cb89d705aa10f187bb96c76001afab07a0d35ce60142" - -[[package]] -name = "unicode-ident" -version = "1.0.26" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d245f478577f809a851594d02313b640fb437e0bb33866753cff937863096954" - -[[package]] -name = "unicode-normalization" -version = "0.1.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fd4f6878c9cb28d874b009da9e8d183b5abc80117c40bbd187a1fde336be6e8" -dependencies = [ - "tinyvec", -] - -[[package]] -name = "unicode-script" -version = "0.5.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "383ad40bb927465ec0ce7720e033cb4ca06912855fc35db31b5755d0de75b1ee" - -[[package]] -name = "unicode-security" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e4ddba1535dd35ed8b61c52166b7155d7f4e4b8847cec6f48e71dc66d8b5e50" -dependencies = [ - "unicode-normalization", - "unicode-script", -] - -[[package]] -name = "unicode-segmentation" -version = "1.13.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6f5d3c3b1bf09027a88a6bc961fc00497d651009560b5463668dc81b0fa87a8" - -[[package]] -name = "unicode-width" -version = "0.1.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" - -[[package]] -name = "unicode-width" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254" - -[[package]] -name = "unicode-xid" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" - -[[package]] -name = "unsafe-libyaml" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861" - -[[package]] -name = "untrusted" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" - -[[package]] -name = "url" -version = "2.5.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff67a8a4397373c3ef660812acab3268222035010ab8680ec4215f38ba3d0eed" -dependencies = [ - "form_urlencoded", - "idna", - "percent-encoding", - "serde", - "serde_derive", -] - -[[package]] -name = "urlencoding" -version = "2.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da" - -[[package]] -name = "utf8_iter" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" - -[[package]] -name = "uuid" -version = "1.26.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ef6dac1e96601b4fb3acccccff2139741fcb757cb9a36089bf5be91cfb285ce" -dependencies = [ - "getrandom 0.4.3", - "js-sys", - "serde_core", - "wasm-bindgen", -] - -[[package]] -name = "valuable" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65" - -[[package]] -name = "version_check" -version = "0.9.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" - -[[package]] -name = "vsimd" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64" - -[[package]] -name = "walkdir" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" -dependencies = [ - "same-file", - "winapi-util", -] - -[[package]] -name = "want" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" -dependencies = [ - "try-lock", -] - -[[package]] -name = "wasi" -version = "0.11.1+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" - -[[package]] -name = "wasip2" -version = "1.0.4+wasi-0.2.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b67efb37e106e55ce722a510d6b5f9c17f083e5fc79afc2badeb12cc313d9487" -dependencies = [ - "wit-bindgen", -] - -[[package]] -name = "wasm-bindgen" -version = "0.2.128" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aecb87a33d3b0c5e3b7aa46336eaf486cffafbd281b195e4c8b80d50df2351bf" -dependencies = [ - "cfg-if", - "once_cell", - "rustversion", - "wasm-bindgen-macro", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-futures" -version = "0.4.78" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ef4c5d3d2cdf5c54f4231181768f5510842e350db025faf1f7163b1030ed928" -dependencies = [ - "js-sys", - "wasm-bindgen", -] - -[[package]] -name = "wasm-bindgen-macro" -version = "0.2.128" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a690d511e3c1a8b3a55e33511e3c2c00c78415cd23650f32b808627f5696b9ed" -dependencies = [ - "quote", - "wasm-bindgen-macro-support", -] - -[[package]] -name = "wasm-bindgen-macro-support" -version = "0.2.128" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "411e4887f0071ef2d2164a9d5fdf2d20efbef78fccd3a78b0c10a1dc5295e48a" -dependencies = [ - "bumpalo", - "proc-macro2", - "quote", - "syn 3.0.6", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-shared" -version = "0.2.128" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81941cd78d0c92026c33e5e01312845a4cb1e9af3407f9134b100dd03144103e" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "wasm-streams" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d1ec4f6517c9e11ae630e200b2b65d193279042e28edd4a2cda233e46670bbb" -dependencies = [ - "futures-util", - "js-sys", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", -] - -[[package]] -name = "wasm_split_helpers" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab578aae2fe2916edaea06843187d50f87b0965622da0ceef648edca27b385ba" -dependencies = [ - "async-once-cell", - "wasm_split_macros", -] - -[[package]] -name = "wasm_split_macros" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e653af7ee4a9ef0fce481a9ec6f43cb78de20d0cdb4f4f5862e1dc6e407e6c8" -dependencies = [ - "base16", - "quote", - "sha2 0.10.9", - "syn 2.0.119", -] - -[[package]] -name = "web-sys" -version = "0.3.105" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fbddc4a036f00ec4f18c83445bd3115cb306a91da554919a099d9222fe4a7f8" -dependencies = [ - "js-sys", - "wasm-bindgen", -] - -[[package]] -name = "web-time" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb" -dependencies = [ - "js-sys", - "wasm-bindgen", -] - -[[package]] -name = "webpki-roots" -version = "1.0.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dcd9d09a39985f5344844e66b0c530a33843579125f23e21e9f0f220850f22a" -dependencies = [ - "rustls-pki-types", -] - -[[package]] -name = "winapi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" -dependencies = [ - "winapi-i686-pc-windows-gnu", - "winapi-x86_64-pc-windows-gnu", -] - -[[package]] -name = "winapi-i686-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" - -[[package]] -name = "winapi-util" -version = "0.1.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" -dependencies = [ - "windows-sys 0.61.2", -] - -[[package]] -name = "winapi-x86_64-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" - -[[package]] -name = "windows-core" -version = "0.62.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb" -dependencies = [ - "windows-implement", - "windows-interface", - "windows-link", - "windows-result", - "windows-strings", -] - -[[package]] -name = "windows-implement" -version = "0.60.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] -name = "windows-interface" -version = "0.59.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] -name = "windows-link" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" - -[[package]] -name = "windows-result" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5" -dependencies = [ - "windows-link", -] - -[[package]] -name = "windows-strings" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091" -dependencies = [ - "windows-link", -] - -[[package]] -name = "windows-sys" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" -dependencies = [ - "windows-targets", -] - -[[package]] -name = "windows-sys" -version = "0.61.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" -dependencies = [ - "windows-link", -] - -[[package]] -name = "windows-targets" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" -dependencies = [ - "windows_aarch64_gnullvm", - "windows_aarch64_msvc", - "windows_i686_gnu", - "windows_i686_gnullvm", - "windows_i686_msvc", - "windows_x86_64_gnu", - "windows_x86_64_gnullvm", - "windows_x86_64_msvc", -] - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" - -[[package]] -name = "windows_i686_gnu" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" - -[[package]] -name = "windows_i686_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" - -[[package]] -name = "windows_i686_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" - -[[package]] -name = "winnow" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23b97319f7b8343df12cc98938e5c3eb436064524c8d2b4e30a1d3a36eecdf81" -dependencies = [ - "memchr", -] - -[[package]] -name = "wit-bindgen" -version = "0.57.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ebf944e87a7c253233ad6766e082e3cd714b5d03812acc24c318f549614536e" - -[[package]] -name = "writeable" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ad82d2a33cdc9674dc7465672f271e096168fcdbe0f799d9e6db8c5892679dc" - -[[package]] -name = "xmlparser" -version = "0.13.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66fee0b777b0f5ac1c69bb06d361268faafa61cd4682ae064a171c16c433e9e4" - -[[package]] -name = "xxhash-rust" -version = "0.8.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aee1b19627c7c60102ab80d3a9cbe18de90bfe03bfa6c3715447681f0e8c8af6" - -[[package]] -name = "yansi" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" - -[[package]] -name = "yoke" -version = "0.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "709fe23a0424b6a435d82152b1bd3fdfb0833487d5fa90d05d42762a9891fef5" -dependencies = [ - "stable_deref_trait", - "yoke-derive", - "zerofrom", -] - -[[package]] -name = "yoke-derive" -version = "0.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33811428bee40dbceb6d545e95754741d17a6aef9a4849f0fd62e2ba4f412a78" -dependencies = [ - "proc-macro2", - "quote", - "syn 3.0.6", - "synstructure", -] - -[[package]] -name = "zerocopy" -version = "0.8.57" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d35102a9f36d089ccae9e4c6802bc118be4487b80aaffc0ab4e0cf5ce92d2873" -dependencies = [ - "zerocopy-derive", -] - -[[package]] -name = "zerocopy-derive" -version = "0.8.57" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "146c01f5ab44258da43cf276c74a2763db2ff3969c9c652c3f2de07041d0b2bc" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] -name = "zerofrom" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ec05a11813ea801ff6d75110ad09cd0824ddba17dfe17128ea0d5f68e6c5272" -dependencies = [ - "zerofrom-derive", -] - -[[package]] -name = "zerofrom-derive" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f75b4683f6c7f45248d4d64056a24298c6281e0993356d7d1b4a1a962ef10d4a" -dependencies = [ - "proc-macro2", - "quote", - "syn 3.0.6", - "synstructure", -] - -[[package]] -name = "zeroize" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e13c156562582aa81c60cb29407084cdb54c4164760106ab78e6c5b0858cf64e" - -[[package]] -name = "zerotrie" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ea269c3bd32f0a32c321907a2ae912ba6f4649bb0fc764a15627e99a7095a3f" -dependencies = [ - "displaydoc", - "yoke", - "zerofrom", -] - -[[package]] -name = "zerovec" -version = "0.11.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb0464e17806c1d976d5cba29399c7f08e516e279e2ba493f63123b5fca67dd8" -dependencies = [ - "yoke", - "zerofrom", - "zerovec-derive", -] - -[[package]] -name = "zerovec-derive" -version = "0.11.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34df6fc39dbd26ddc9c10e6a2984476e13acce22e64e4487636ef494369225da" -dependencies = [ - "proc-macro2", - "quote", - "syn 3.0.6", -] - -[[package]] -name = "zmij" -version = "1.0.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29666d0abbfad1e3dc4dcf6144730dd3a3ab225bbbdac83319345b1b44ccfc1b" diff --git a/vendor/lint/Cargo.toml b/vendor/lint/Cargo.toml deleted file mode 100644 index 22f0f59..0000000 --- a/vendor/lint/Cargo.toml +++ /dev/null @@ -1,25 +0,0 @@ -[package] -name = "iris" -version = "0.5.10" -edition = "2021" -description = "The iris over a portal site: nothing from a content repo comes through until it checks out" -license = "MIT" -repository = "https://project.uhhm.no/uhhm/iris" - -[dependencies] -# The site's own content types and loaders, so iris reads a repo exactly -# the way the running site does. Pinned to the portal release it -# matches; bumping this tag is what a new iris release is. -portal = { git = "https://project.uhhm.no/uhhm/portal.git", tag = "v0.5.10", features = ["ssr"] } -anyhow = "1" -serde = { version = "1", features = ["derive"] } -serde_json = "1" -serde_yaml = "0.9" -tokio = { version = "1", features = ["rt-multi-thread", "macros"] } -async-nats = "0.38" -futures = "0.3" -chrono = "0.4" - -[profile.release] -strip = true -lto = "thin" diff --git a/vendor/lint/README.md b/vendor/lint/README.md deleted file mode 100644 index 42bfd85..0000000 --- a/vendor/lint/README.md +++ /dev/null @@ -1,57 +0,0 @@ -# iris - -The iris over a [portal](https://project.uhhm.no/uhhm/portal) site. A -content push is an incoming wormhole; nothing comes through until it -checks out. - -``` -iris check --path questions # a local checkout -iris check --repo https://project.uhhm.no/uhhm/questions -iris --path questions # the same, for one-line CI -``` - -`check` loads a content repo exactly the way the running site does, -validates it (every action lands on a page, every transition is one -the state machine allows, every recorded bucket is read back -somewhere), and then holds it to the business needs the repo declares -in `needs.yaml`, when it has one: - -- a path of submissions gets each kind of visitor's answer into the - bucket it names, within a submission and required-field budget; -- the handling group holds a desk over that bucket, and every - finished state is reachable through the buttons it (and any - `also_moved_by` group) offers; no record strands on the way; -- every stage the business named is a state of the machine. - -A need marked `planned` warns instead of failing. Exit status is the -verdict, so a content repo's CI is one line. - -Beyond the verdict, `check` exports what a trainer needs to grade the -wording: `--needs-tasks` writes the personas as typed choice tasks -(`--skim` for headings only), `--needs-score` grades an engine's -answers, and `--needs-sim` writes a resolved model of the whole site. -`iris replay` runs simulated cases through the site's real aggregate -engine on a throwaway JetStream and reports every bucket by state; -`--report-only` takes the same scorecard from a live site's buckets. -See [portal-trainer](https://project.uhhm.no/uhhm/portal-trainer) for -what sits around those. - -## Matching the site - -Every type iris reads is portal's own: portal is a library dependency -pinned to a release tag in `Cargo.toml`, and iris carries the same -version number as that tag, so `iris v0.3.39` is the lint for portal -v0.3.39 and nothing else. A content repo pins `IRIS_RELEASE` to the -`PORTAL_RELEASE` its site runs. Portal's own release tarball ships the -matching `iris` binary too, at `/srv/app//current/iris`. - -## Release - -Iris is released by portal's publish job, never by hand: when a -portal tag is pushed, that job re-pins this crate to the tag, sets -the version to match, builds and tests it, adds the changelog line, -and pushes the commit and the tag here. This repo's own CI then -attaches the binary to the Gitea release as `iris`. A portal change -to something the lint reads fails the portal release at that step. -Changes to iris itself land on `main` between releases and ship with -the next portal tag. diff --git a/vendor/trainer/.gitea/workflows/test.yml b/vendor/trainer/.gitea/workflows/test.yml deleted file mode 100644 index 0fc318a..0000000 --- a/vendor/trainer/.gitea/workflows/test.yml +++ /dev/null @@ -1,44 +0,0 @@ -name: Test - -# Every push: the tests, then every plan under plans/ built and linted -# with the iris release the live sites run, and the onboarding site -# linted too. A plan that stops building, or a builder change that -# renders a site the lint rejects, fails here and nowhere later. - -on: - push: - branches: [main] - pull_request: - -jobs: - test: - runs-on: bare - env: - # The bare runner's shared toolchain and caches (see uhhm/portal). - CARGO_HOME: /var/local/cargo - RUSTUP_HOME: /var/local/rustup - PATH: /var/local/cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/bin - SCCACHE_DIR: /var/local/sccache - SCCACHE_SERVER_PORT: "4228" - CARGO_TARGET_DIR: /var/local/cargo-target - # The lint, pinned to the portal release the sites run. - IRIS_RELEASE: v0.3.47 - steps: - - uses: actions/checkout@v4 - - - name: Test - run: cargo test --release - - - name: Build and lint every plan - run: | - set -euo pipefail - bin="$CARGO_TARGET_DIR/iris-$IRIS_RELEASE" - [ -x "$bin" ] || { curl -sfL "${{ github.server_url }}/uhhm/iris/releases/download/$IRIS_RELEASE/iris" -o "$bin" && chmod +x "$bin"; } - cargo build --release - for plan in plans/*.yaml; do - name=$(basename "$plan" .yaml) - echo "== $plan" - "$CARGO_TARGET_DIR/release/portal-trainer" build --plan "$plan" --out "/tmp/ci-$name" --lint "$bin" - done - echo "== portal-portal" - "$bin" check --path portal-portal/questions diff --git a/vendor/trainer/.gitignore b/vendor/trainer/.gitignore deleted file mode 100644 index 90de6fc..0000000 --- a/vendor/trainer/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -target/ -out/ diff --git a/vendor/trainer/Cargo.lock b/vendor/trainer/Cargo.lock deleted file mode 100644 index 30ddbbb..0000000 --- a/vendor/trainer/Cargo.lock +++ /dev/null @@ -1,163 +0,0 @@ -# This file is automatically @generated by Cargo. -# It is not intended for manual editing. -version = 4 - -[[package]] -name = "anyhow" -version = "1.0.104" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "330a5ed07fa54e4702c9d6c4174f74427fc0ef6e214bbd677ae50a5099946470" - -[[package]] -name = "equivalent" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" - -[[package]] -name = "hashbrown" -version = "0.17.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a" - -[[package]] -name = "indexmap" -version = "2.14.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc4e190f5d26ca7051642629da2c52fc03bde85a03197c99408dcd291734c855" -dependencies = [ - "equivalent", - "hashbrown", -] - -[[package]] -name = "itoa" -version = "1.0.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682" - -[[package]] -name = "memchr" -version = "2.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf8baf1c55e62ffcace7a9f06f4bd9cd3f0c4beb022d3b367256b91b87513d98" - -[[package]] -name = "portal-trainer" -version = "0.1.0" -dependencies = [ - "anyhow", - "serde", - "serde_json", - "serde_yaml", -] - -[[package]] -name = "proc-macro2" -version = "1.0.107" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "985e7ec9bb745e6ce6535b544d84d6cd6f7ad8bd711c398938ae983b91a766d9" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "quote" -version = "1.0.47" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fbf4db142a473a8d80c26bbf18454ed458bf8d26c8219c331daecfdbd079001" -dependencies = [ - "proc-macro2", -] - -[[package]] -name = "ryu" -version = "1.0.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9774ba4a74de5f7b1c1451ed6cd5285a32eddb5cccb8cc655a4e50009e06477f" - -[[package]] -name = "serde" -version = "1.0.229" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4148590afebada386688f18773da617792bf2ef03ffc1e4cbd2b1d45b023e0ba" -dependencies = [ - "serde_core", - "serde_derive", -] - -[[package]] -name = "serde_core" -version = "1.0.229" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67dca2c9c51e58a4791a4b1ed58308b39c64224d349a935ab5039aa360942a48" -dependencies = [ - "serde_derive", -] - -[[package]] -name = "serde_derive" -version = "1.0.229" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7a5d71263a5a7d47b41f6b3f06ba276f10cc18b0931f1799f710578e2309348" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "serde_json" -version = "1.0.151" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c841b55ecdae098c80dcae9cf767f6f8a0c2cdb3416bbef72181df4d0fe73f14" -dependencies = [ - "indexmap", - "itoa", - "memchr", - "serde", - "serde_core", - "zmij", -] - -[[package]] -name = "serde_yaml" -version = "0.9.34+deprecated" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" -dependencies = [ - "indexmap", - "itoa", - "ryu", - "serde", - "unsafe-libyaml", -] - -[[package]] -name = "syn" -version = "3.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8593e8e72159ed2257d083c7a454a85cbf854f37a0966d8d483aff8c8a3ebcee" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "unicode-ident" -version = "1.0.26" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d245f478577f809a851594d02313b640fb437e0bb33866753cff937863096954" - -[[package]] -name = "unsafe-libyaml" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861" - -[[package]] -name = "zmij" -version = "1.0.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29666d0abbfad1e3dc4dcf6144730dd3a3ab225bbbdac83319345b1b44ccfc1b" diff --git a/vendor/trainer/Cargo.toml b/vendor/trainer/Cargo.toml deleted file mode 100644 index 6d411d1..0000000 --- a/vendor/trainer/Cargo.toml +++ /dev/null @@ -1,14 +0,0 @@ -[package] -name = "portal-trainer" -version = "0.1.0" -edition = "2021" -description = "Generates a portal content repo from a business intake, held to portal's question_lint" - -[dependencies] -anyhow = "1" -serde = { version = "1", features = ["derive"] } -# preserve_order: a page is read by the people who own it, so the keys -# come out in the order they were written (name, then description, then -# the rest), not sorted with `name` at the bottom. -serde_json = { version = "1", features = ["preserve_order"] } -serde_yaml = "0.9" diff --git a/vendor/trainer/runs/contractor-2026-09-21/generated/aggregates.yaml b/vendor/trainer/runs/contractor-2026-09-21/generated/aggregates.yaml deleted file mode 100644 index a14d35e..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/generated/aggregates.yaml +++ /dev/null @@ -1,43 +0,0 @@ -aggregates: - - bucket: enquiries - initial: open - states: - open: { event: received } - quoted: { event: quoted } - won: { event: won } - lost: { event: lost } - transitions: - open: [quoted, lost] - quoted: [won, lost] - - - bucket: subcontractors - initial: open - states: - open: { event: applied } - awaiting_papers: { event: papers_requested } - approved: { event: approved } - declined: { event: declined } - transitions: - open: [awaiting_papers, approved, declined] - awaiting_papers: [approved, declined] - - - bucket: applicants - initial: open - states: - open: { event: applied } - interviewing: { event: invited } - hired: { event: hired } - declined: { event: declined } - transitions: - open: [interviewing, declined] - interviewing: [hired, declined] - - - bucket: site_issues - initial: open - states: - open: { event: reported } - in_hand: { event: assessed } - closed: { event: closed } - transitions: - open: [in_hand] - in_hand: [closed] diff --git a/vendor/trainer/runs/contractor-2026-09-21/generated/answers-skim.jsonl b/vendor/trainer/runs/contractor-2026-09-21/generated/answers-skim.jsonl deleted file mode 100644 index b7453ce..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/generated/answers-skim.jsonl +++ /dev/null @@ -1,10 +0,0 @@ -{"id":"housing-board-cracks@/","choice":"Get someone to look at a building","confidence":0.93} -{"id":"homeowner-leaking-roof@/","choice":"Get someone to look at a building","confidence":0.92} -{"id":"homeowner-extension@/","choice":"Get a price for a build","confidence":0.72} -{"id":"owner-basement-conversion@/","choice":"Get a price for a build","confidence":0.72} -{"id":"electrician-more-work@/","choice":"Join our subcontractor list","confidence":0.9} -{"id":"scaffolding-firm@/","choice":"Join our subcontractor list","confidence":0.9} -{"id":"apprentice-asking@/","choice":"Ask about working with us","confidence":0.62} -{"id":"experienced-carpenter@/","choice":"Ask about working with us","confidence":0.62} -{"id":"crew-loose-scaffold@/","choice":"Report something from site","confidence":0.92} -{"id":"subcontractor-wrong-delivery@/","choice":"Report something from site","confidence":0.88} diff --git a/vendor/trainer/runs/contractor-2026-09-21/generated/answers.jsonl b/vendor/trainer/runs/contractor-2026-09-21/generated/answers.jsonl deleted file mode 100644 index 8bf40ac..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/generated/answers.jsonl +++ /dev/null @@ -1,10 +0,0 @@ -{"id":"housing-board-cracks@/","choice":"Get someone to look at a building","confidence":0.97} -{"id":"homeowner-leaking-roof@/","choice":"Get someone to look at a building","confidence":0.96} -{"id":"homeowner-extension@/","choice":"Get a price for a build","confidence":0.95} -{"id":"owner-basement-conversion@/","choice":"Get a price for a build","confidence":0.95} -{"id":"electrician-more-work@/","choice":"Join our subcontractor list","confidence":0.97} -{"id":"scaffolding-firm@/","choice":"Join our subcontractor list","confidence":0.97} -{"id":"apprentice-asking@/","choice":"Ask about working with us","confidence":0.96} -{"id":"experienced-carpenter@/","choice":"Ask about working with us","confidence":0.95} -{"id":"crew-loose-scaffold@/","choice":"Report something from site","confidence":0.95} -{"id":"subcontractor-wrong-delivery@/","choice":"Report something from site","confidence":0.93} diff --git a/vendor/trainer/runs/contractor-2026-09-21/generated/needs.yaml b/vendor/trainer/runs/contractor-2026-09-21/generated/needs.yaml deleted file mode 100644 index 663121a..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/generated/needs.yaml +++ /dev/null @@ -1,124 +0,0 @@ -needs: - - id: survey-enquiry - who: a housing board member or private owner with a problem in a building - wants: someone from Nordvik Bygg to come and look at the building and tell them what a fix would cost - via: Get someone to look at a building - lands_in: enquiries - handled_by: project_managers - done_when: [won, lost] - max_steps: 1 - max_fields: 4 - - - id: build-price-enquiry - who: an owner who already knows what they want built - wants: drawings, a permit application and a price for the work - via: Get a price for a build - lands_in: enquiries - handled_by: project_managers - done_when: [won, lost] - max_steps: 1 - max_fields: 5 - - - id: subcontractor-application - who: a trade firm doing electrical, plumbing or scaffolding work - wants: to get on Nordvik Bygg's list of subcontractors they call for work - lands_in: subcontractors - handled_by: project_managers - done_when: [approved, declined] - max_steps: 1 - max_fields: 5 - - - id: job-application - who: a carpenter or apprentice looking for work - wants: to find out if Nordvik Bygg is hiring and put themselves forward - lands_in: applicants - handled_by: project_managers - done_when: [hired, declined] - max_steps: 1 - max_fields: 4 - - - id: report-site-issue - who: a crew member on site, ours or a subcontractor's - wants: to flag a hazard, a near miss or wrong materials fast, from their phone - lands_in: site_issues - handled_by: safety_officer - done_when: [closed] - max_steps: 1 - max_fields: 3 - - - id: log-phone-enquiry - who: a project manager who just took a call, email or text about a building - wants: to get the enquiry into the system before it gets lost - enters: /desk/phone-enquiry - enters_as: project_managers - lands_in: enquiries - handled_by: project_managers - done_when: [won, lost] - max_steps: 1 - max_fields: 5 - -personas: - - id: housing-board-cracks - need: survey-enquiry - text: > - There are cracks running up the outside wall of our building and none - of us know if it's serious. We just want someone qualified to come - look at it and tell us what we're dealing with. - - - id: homeowner-leaking-roof - need: survey-enquiry - text: > - Water's coming through the ceiling every time it rains. I don't know - if it's the roof or something else, I just want someone to come out - and have a look before it gets worse. - - - id: homeowner-extension - need: build-price-enquiry - text: > - We want to add a room above the garage. We know roughly what we want, - we just need someone to draw it up, sort the paperwork with the - municipality, and tell us what it will cost. - - - id: owner-basement-conversion - need: build-price-enquiry - text: > - I'd like to turn the basement into a flat. Need drawings, the permit - sorted, and a proper price before I commit to anything. - - - id: electrician-more-work - need: subcontractor-application - text: > - We're a small electrical firm and we'd like to pick up more building - work. We're registered and insured, just need to know who to talk to - about getting on your books. - - - id: scaffolding-firm - need: subcontractor-application - text: > - We put up and take down scaffolding for building sites. We'd like to - be one of the firms you call when a job needs it. - - - id: apprentice-asking - need: job-application - text: > - I'm in my second year as an apprentice carpenter and looking for a - firm that'll keep me on after. Are you taking anyone on right now? - - - id: experienced-carpenter - need: job-application - text: > - I've been doing carpentry for eight years, mostly older buildings. - Wondered if you had any openings on site. - - - id: crew-loose-scaffold - need: report-site-issue - text: > - Noticed a scaffold board that's not sitting right, feels loose when - you step on it. Wanted to flag it straight away before someone gets - hurt, but I've got gloves on and no time for a long form. - - - id: subcontractor-wrong-delivery - need: report-site-issue - text: > - The delivery this morning was the wrong type of insulation, not what - was on the drawings. Someone needs to know before it gets used. diff --git a/vendor/trainer/runs/contractor-2026-09-21/generated/questions/applicants/thanks.yaml b/vendor/trainer/runs/contractor-2026-09-21/generated/questions/applicants/thanks.yaml deleted file mode 100644 index 3398602..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/generated/questions/applicants/thanks.yaml +++ /dev/null @@ -1,9 +0,0 @@ -name: What happens with your application now? -description: > - A project manager reads every application. If it looks like a good fit - we'll be in touch to arrange an interview. -alternatives: - - name: Back to the start - description: Return to the front page. - action: / - consequence: [Back] diff --git a/vendor/trainer/runs/contractor-2026-09-21/generated/questions/desk/_section.yaml b/vendor/trainer/runs/contractor-2026-09-21/generated/questions/desk/_section.yaml deleted file mode 100644 index d8acdff..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/generated/questions/desk/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: project_managers diff --git a/vendor/trainer/runs/contractor-2026-09-21/generated/questions/desk/index.yaml b/vendor/trainer/runs/contractor-2026-09-21/generated/questions/desk/index.yaml deleted file mode 100644 index db1eaf4..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/generated/questions/desk/index.yaml +++ /dev/null @@ -1,58 +0,0 @@ -name: What came in? -responsible: { name: Ingrid Nordvik, contact: ingrid@nordvikbygg.example } -alternatives: - - name: Enquiries - description: Move each enquiry on as you work it. - action: /desk - consequence: [Update] - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: enquiries } - requires_group: project_managers - transitions: - - { to: quoted, label: Quote sent } - - { to: lost, label: Not for us } - - { from: quoted, to: won, label: Won } - - { from: quoted, to: lost, label: Lost } - - - name: Subcontractors - description: Check papers and approve or decline each application. - action: /desk - consequence: [Update] - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: subcontractors } - requires_group: project_managers - transitions: - - { to: awaiting_papers, label: Ask for missing papers } - - { to: approved, label: Approve } - - { to: declined, label: Decline } - - { from: awaiting_papers, to: approved, label: Approve } - - { from: awaiting_papers, to: declined, label: Decline } - - - name: Applicants - description: Move each job application through interview to a decision. - action: /desk - consequence: [Update] - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: applicants } - requires_group: project_managers - transitions: - - { to: interviewing, label: Invite to interview } - - { to: declined, label: Decline } - - { from: interviewing, to: hired, label: Hire } - - { from: interviewing, to: declined, label: Decline } - - - name: Log a call, email or text - description: > - Get an enquiry that came in by phone, email or text into the system - before it's lost. - action: /desk/phone-enquiry - consequence: [Log it] diff --git a/vendor/trainer/runs/contractor-2026-09-21/generated/questions/desk/phone-enquiry-logged.yaml b/vendor/trainer/runs/contractor-2026-09-21/generated/questions/desk/phone-enquiry-logged.yaml deleted file mode 100644 index 9ba83b5..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/generated/questions/desk/phone-enquiry-logged.yaml +++ /dev/null @@ -1,9 +0,0 @@ -name: What happens with this enquiry now? -description: > - It's in with the rest of the enquiries on the desk, ready to work the - same way as one that came in through the front page. -alternatives: - - name: Back to the start - description: Return to the front page. - action: / - consequence: [Back] diff --git a/vendor/trainer/runs/contractor-2026-09-21/generated/questions/desk/phone-enquiry.yaml b/vendor/trainer/runs/contractor-2026-09-21/generated/questions/desk/phone-enquiry.yaml deleted file mode 100644 index 41c6576..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/generated/questions/desk/phone-enquiry.yaml +++ /dev/null @@ -1,20 +0,0 @@ -name: What did they tell you? -description: > - Get it down before it gets lost. This creates the same kind of record - as one submitted through the front page. -responsible: { name: Ingrid Nordvik, contact: ingrid@nordvikbygg.example } -alternatives: - - name: Log this enquiry - description: "" - action: /desk/phone-enquiry-logged - consequence: [Save] - record_as: enquiries - features: - - name: About the caller and the building - description: "" - requirements: - - { name: caller_name, label: Their name, type: text } - - { name: contact, label: Phone or email, type: text } - - { name: address, label: Address of the building, type: text } - - { name: problem, label: What they told you, type: textarea } - - { name: urgency, label: How soon, type: select, options: [This week, This month, No rush] } diff --git a/vendor/trainer/runs/contractor-2026-09-21/generated/questions/enquiries/thanks.yaml b/vendor/trainer/runs/contractor-2026-09-21/generated/questions/enquiries/thanks.yaml deleted file mode 100644 index fbfcb8d..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/generated/questions/enquiries/thanks.yaml +++ /dev/null @@ -1,11 +0,0 @@ -name: What happens with your enquiry now? -description: > - One of our two project managers reads every enquiry as it comes in. - We'll usually be in touch within a couple of working days to arrange a - look at the building, or to say plainly if it's not something we take - on. -alternatives: - - name: Back to the start - description: Return to the front page. - action: / - consequence: [Back] diff --git a/vendor/trainer/runs/contractor-2026-09-21/generated/questions/index.yaml b/vendor/trainer/runs/contractor-2026-09-21/generated/questions/index.yaml deleted file mode 100644 index 60f97bf..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/generated/questions/index.yaml +++ /dev/null @@ -1,85 +0,0 @@ -name: What brings you here? -description: > - Pick what best matches why you're here today. -responsible: { name: Ingrid Nordvik, contact: ingrid@nordvikbygg.example } -alternatives: - - name: Get someone to look at a building - description: > - For housing boards and private owners with a problem in a building - who want us to come and take a look. - action: /enquiries/thanks - consequence: [Send] - record_as: enquiries - features: - - name: About you and the building - description: "" - requirements: - - { name: name, label: Your name, type: text } - - { name: email, label: Email, type: email } - - { name: address, label: Address of the building, type: text } - - { name: problem, label: What's wrong, type: textarea } - - - name: Get a price for a build - description: > - For owners who already know what they want built and need drawings, - a permit application and a price. - action: /enquiries/thanks - consequence: [Send] - record_as: enquiries - features: - - name: About you and the build - description: "" - requirements: - - { name: name, label: Your name, type: text } - - { name: email, label: Email, type: email } - - { name: address, label: Address of the site, type: text } - - { name: project, label: What you want built, type: textarea } - - { name: timeframe, label: When you'd like to start, type: select, options: [As soon as possible, Within a year, Just exploring] } - - - name: Join our subcontractor list - description: > - For electrical, plumbing and scaffolding firms who want to be one of - the firms we call when a job needs them. - action: /subcontractors/thanks - consequence: [Apply] - record_as: subcontractors - features: - - name: About your firm - description: "" - requirements: - - { name: company_name, label: Company name, type: text } - - { name: contact_email, label: Email, type: email } - - { name: trade, label: Trade, type: select, options: [Electrical, Plumbing, Scaffolding] } - - { name: registration_number, label: Company registration number, type: text } - - { name: insurance, label: Insurance policy details, type: text } - - { name: trade_approval, label: Trade approval reference, optional: true } - - - name: Ask about working with us - description: > - For carpenters and apprentices who want to know if we're hiring. - action: /applicants/thanks - consequence: [Send] - record_as: applicants - features: - - name: About you - description: "" - requirements: - - { name: name, label: Your name, type: text } - - { name: email, label: Email, type: email } - - { name: role, label: What you do, type: select, options: [Carpenter, Apprentice carpenter, Other] } - - { name: message, label: Anything else we should know, type: textarea } - - - name: Report something from site - description: > - For crew on site, ours or a subcontractor's, who've spotted a hazard, - a near miss or the wrong materials. - action: /site-issues/thanks - consequence: [Report it] - record_as: site_issues - features: - - name: What's happened - description: "" - requirements: - - { name: issue_type, label: What kind of issue, type: select, options: [Hazard, Near miss, Wrong materials delivered] } - - { name: location, label: Where on site, type: text } - - { name: details, label: What happened, type: textarea } diff --git a/vendor/trainer/runs/contractor-2026-09-21/generated/questions/safety/_section.yaml b/vendor/trainer/runs/contractor-2026-09-21/generated/questions/safety/_section.yaml deleted file mode 100644 index d7ea7a1..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/generated/questions/safety/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: safety_officer diff --git a/vendor/trainer/runs/contractor-2026-09-21/generated/questions/safety/index.yaml b/vendor/trainer/runs/contractor-2026-09-21/generated/questions/safety/index.yaml deleted file mode 100644 index 12da62f..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/generated/questions/safety/index.yaml +++ /dev/null @@ -1,16 +0,0 @@ -name: What's been reported from site? -responsible: { name: Ingrid Nordvik, contact: ingrid@nordvikbygg.example } -alternatives: - - name: Site issues - description: Decide what needs doing, then close it out once it's fixed. - action: /safety - consequence: [Update] - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: site_issues } - requires_group: safety_officer - transitions: - - { to: in_hand, label: Look into it } - - { from: in_hand, to: closed, label: Mark fixed } diff --git a/vendor/trainer/runs/contractor-2026-09-21/generated/questions/site-issues/thanks.yaml b/vendor/trainer/runs/contractor-2026-09-21/generated/questions/site-issues/thanks.yaml deleted file mode 100644 index e3021a6..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/generated/questions/site-issues/thanks.yaml +++ /dev/null @@ -1,9 +0,0 @@ -name: What happens with your report now? -description: > - Our safety officer sees every report as it comes in and decides what - needs to be done. You'll see it marked fixed once it's sorted. -alternatives: - - name: Back to the start - description: Return to the front page. - action: / - consequence: [Back] diff --git a/vendor/trainer/runs/contractor-2026-09-21/generated/questions/subcontractors/thanks.yaml b/vendor/trainer/runs/contractor-2026-09-21/generated/questions/subcontractors/thanks.yaml deleted file mode 100644 index 6340f29..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/generated/questions/subcontractors/thanks.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens with your application now? -description: > - A project manager checks your company registration, trade approval and - insurance. If anything's missing we'll come back to you for it before - we can put you on the list. -alternatives: - - name: Back to the start - description: Return to the front page. - action: / - consequence: [Back] diff --git a/vendor/trainer/runs/contractor-2026-09-21/generated/run.log b/vendor/trainer/runs/contractor-2026-09-21/generated/run.log deleted file mode 100644 index 78a2cf4..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/generated/run.log +++ /dev/null @@ -1,3 +0,0 @@ -needs: parsed in round 1 -structure round 1: ok=true fails=0 -wording round 0: headings only: wording: 10/10 routed right (100%) | headings and descriptions: wording: 10/10 routed right (100%) diff --git a/vendor/trainer/runs/contractor-2026-09-21/generated/site.yaml b/vendor/trainer/runs/contractor-2026-09-21/generated/site.yaml deleted file mode 100644 index e4be9f8..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/generated/site.yaml +++ /dev/null @@ -1,2 +0,0 @@ -title: Nordvik Bygg -lang: en diff --git a/vendor/trainer/runs/contractor-2026-09-21/generated/tasks-skim.jsonl b/vendor/trainer/runs/contractor-2026-09-21/generated/tasks-skim.jsonl deleted file mode 100644 index 6708da2..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/generated/tasks-skim.jsonl +++ /dev/null @@ -1,10 +0,0 @@ -{"id":"housing-board-cracks@/","persona":"housing-board-cracks","need":"survey-enquiry","page":"/","state":{"body":"There are cracks running up the outside wall of our building and none of us know if it's serious. We just want someone qualified to come look at it and tell us what we're dealing with."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"Ask about working with us","Get a price for a build":"Get a price for a build","Get someone to look at a building":"Get someone to look at a building","Join our subcontractor list":"Join our subcontractor list","Report something from site":"Report something from site"}}},"expect":["Get someone to look at a building"]} -{"id":"homeowner-leaking-roof@/","persona":"homeowner-leaking-roof","need":"survey-enquiry","page":"/","state":{"body":"Water's coming through the ceiling every time it rains. I don't know if it's the roof or something else, I just want someone to come out and have a look before it gets worse."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"Ask about working with us","Get a price for a build":"Get a price for a build","Get someone to look at a building":"Get someone to look at a building","Join our subcontractor list":"Join our subcontractor list","Report something from site":"Report something from site"}}},"expect":["Get someone to look at a building"]} -{"id":"homeowner-extension@/","persona":"homeowner-extension","need":"build-price-enquiry","page":"/","state":{"body":"We want to add a room above the garage. We know roughly what we want, we just need someone to draw it up, sort the paperwork with the municipality, and tell us what it will cost."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"Ask about working with us","Get a price for a build":"Get a price for a build","Get someone to look at a building":"Get someone to look at a building","Join our subcontractor list":"Join our subcontractor list","Report something from site":"Report something from site"}}},"expect":["Get a price for a build"]} -{"id":"owner-basement-conversion@/","persona":"owner-basement-conversion","need":"build-price-enquiry","page":"/","state":{"body":"I'd like to turn the basement into a flat. Need drawings, the permit sorted, and a proper price before I commit to anything."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"Ask about working with us","Get a price for a build":"Get a price for a build","Get someone to look at a building":"Get someone to look at a building","Join our subcontractor list":"Join our subcontractor list","Report something from site":"Report something from site"}}},"expect":["Get a price for a build"]} -{"id":"electrician-more-work@/","persona":"electrician-more-work","need":"subcontractor-application","page":"/","state":{"body":"We're a small electrical firm and we'd like to pick up more building work. We're registered and insured, just need to know who to talk to about getting on your books."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"Ask about working with us","Get a price for a build":"Get a price for a build","Get someone to look at a building":"Get someone to look at a building","Join our subcontractor list":"Join our subcontractor list","Report something from site":"Report something from site"}}},"expect":["Join our subcontractor list"]} -{"id":"scaffolding-firm@/","persona":"scaffolding-firm","need":"subcontractor-application","page":"/","state":{"body":"We put up and take down scaffolding for building sites. We'd like to be one of the firms you call when a job needs it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"Ask about working with us","Get a price for a build":"Get a price for a build","Get someone to look at a building":"Get someone to look at a building","Join our subcontractor list":"Join our subcontractor list","Report something from site":"Report something from site"}}},"expect":["Join our subcontractor list"]} -{"id":"apprentice-asking@/","persona":"apprentice-asking","need":"job-application","page":"/","state":{"body":"I'm in my second year as an apprentice carpenter and looking for a firm that'll keep me on after. Are you taking anyone on right now?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"Ask about working with us","Get a price for a build":"Get a price for a build","Get someone to look at a building":"Get someone to look at a building","Join our subcontractor list":"Join our subcontractor list","Report something from site":"Report something from site"}}},"expect":["Ask about working with us"]} -{"id":"experienced-carpenter@/","persona":"experienced-carpenter","need":"job-application","page":"/","state":{"body":"I've been doing carpentry for eight years, mostly older buildings. Wondered if you had any openings on site."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"Ask about working with us","Get a price for a build":"Get a price for a build","Get someone to look at a building":"Get someone to look at a building","Join our subcontractor list":"Join our subcontractor list","Report something from site":"Report something from site"}}},"expect":["Ask about working with us"]} -{"id":"crew-loose-scaffold@/","persona":"crew-loose-scaffold","need":"report-site-issue","page":"/","state":{"body":"Noticed a scaffold board that's not sitting right, feels loose when you step on it. Wanted to flag it straight away before someone gets hurt, but I've got gloves on and no time for a long form."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"Ask about working with us","Get a price for a build":"Get a price for a build","Get someone to look at a building":"Get someone to look at a building","Join our subcontractor list":"Join our subcontractor list","Report something from site":"Report something from site"}}},"expect":["Report something from site"]} -{"id":"subcontractor-wrong-delivery@/","persona":"subcontractor-wrong-delivery","need":"report-site-issue","page":"/","state":{"body":"The delivery this morning was the wrong type of insulation, not what was on the drawings. Someone needs to know before it gets used."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"Ask about working with us","Get a price for a build":"Get a price for a build","Get someone to look at a building":"Get someone to look at a building","Join our subcontractor list":"Join our subcontractor list","Report something from site":"Report something from site"}}},"expect":["Report something from site"]} diff --git a/vendor/trainer/runs/contractor-2026-09-21/generated/tasks.jsonl b/vendor/trainer/runs/contractor-2026-09-21/generated/tasks.jsonl deleted file mode 100644 index 2ade81a..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/generated/tasks.jsonl +++ /dev/null @@ -1,10 +0,0 @@ -{"id":"housing-board-cracks@/","persona":"housing-board-cracks","need":"survey-enquiry","page":"/","state":{"body":"There are cracks running up the outside wall of our building and none of us know if it's serious. We just want someone qualified to come look at it and tell us what we're dealing with."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"For carpenters and apprentices who want to know if we're hiring.","Get a price for a build":"For owners who already know what they want built and need drawings, a permit application and a price.","Get someone to look at a building":"For housing boards and private owners with a problem in a building who want us to come and take a look.","Join our subcontractor list":"For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.","Report something from site":"For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials."}}},"expect":["Get someone to look at a building"]} -{"id":"homeowner-leaking-roof@/","persona":"homeowner-leaking-roof","need":"survey-enquiry","page":"/","state":{"body":"Water's coming through the ceiling every time it rains. I don't know if it's the roof or something else, I just want someone to come out and have a look before it gets worse."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"For carpenters and apprentices who want to know if we're hiring.","Get a price for a build":"For owners who already know what they want built and need drawings, a permit application and a price.","Get someone to look at a building":"For housing boards and private owners with a problem in a building who want us to come and take a look.","Join our subcontractor list":"For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.","Report something from site":"For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials."}}},"expect":["Get someone to look at a building"]} -{"id":"homeowner-extension@/","persona":"homeowner-extension","need":"build-price-enquiry","page":"/","state":{"body":"We want to add a room above the garage. We know roughly what we want, we just need someone to draw it up, sort the paperwork with the municipality, and tell us what it will cost."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"For carpenters and apprentices who want to know if we're hiring.","Get a price for a build":"For owners who already know what they want built and need drawings, a permit application and a price.","Get someone to look at a building":"For housing boards and private owners with a problem in a building who want us to come and take a look.","Join our subcontractor list":"For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.","Report something from site":"For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials."}}},"expect":["Get a price for a build"]} -{"id":"owner-basement-conversion@/","persona":"owner-basement-conversion","need":"build-price-enquiry","page":"/","state":{"body":"I'd like to turn the basement into a flat. Need drawings, the permit sorted, and a proper price before I commit to anything."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"For carpenters and apprentices who want to know if we're hiring.","Get a price for a build":"For owners who already know what they want built and need drawings, a permit application and a price.","Get someone to look at a building":"For housing boards and private owners with a problem in a building who want us to come and take a look.","Join our subcontractor list":"For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.","Report something from site":"For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials."}}},"expect":["Get a price for a build"]} -{"id":"electrician-more-work@/","persona":"electrician-more-work","need":"subcontractor-application","page":"/","state":{"body":"We're a small electrical firm and we'd like to pick up more building work. We're registered and insured, just need to know who to talk to about getting on your books."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"For carpenters and apprentices who want to know if we're hiring.","Get a price for a build":"For owners who already know what they want built and need drawings, a permit application and a price.","Get someone to look at a building":"For housing boards and private owners with a problem in a building who want us to come and take a look.","Join our subcontractor list":"For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.","Report something from site":"For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials."}}},"expect":["Join our subcontractor list"]} -{"id":"scaffolding-firm@/","persona":"scaffolding-firm","need":"subcontractor-application","page":"/","state":{"body":"We put up and take down scaffolding for building sites. We'd like to be one of the firms you call when a job needs it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"For carpenters and apprentices who want to know if we're hiring.","Get a price for a build":"For owners who already know what they want built and need drawings, a permit application and a price.","Get someone to look at a building":"For housing boards and private owners with a problem in a building who want us to come and take a look.","Join our subcontractor list":"For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.","Report something from site":"For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials."}}},"expect":["Join our subcontractor list"]} -{"id":"apprentice-asking@/","persona":"apprentice-asking","need":"job-application","page":"/","state":{"body":"I'm in my second year as an apprentice carpenter and looking for a firm that'll keep me on after. Are you taking anyone on right now?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"For carpenters and apprentices who want to know if we're hiring.","Get a price for a build":"For owners who already know what they want built and need drawings, a permit application and a price.","Get someone to look at a building":"For housing boards and private owners with a problem in a building who want us to come and take a look.","Join our subcontractor list":"For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.","Report something from site":"For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials."}}},"expect":["Ask about working with us"]} -{"id":"experienced-carpenter@/","persona":"experienced-carpenter","need":"job-application","page":"/","state":{"body":"I've been doing carpentry for eight years, mostly older buildings. Wondered if you had any openings on site."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"For carpenters and apprentices who want to know if we're hiring.","Get a price for a build":"For owners who already know what they want built and need drawings, a permit application and a price.","Get someone to look at a building":"For housing boards and private owners with a problem in a building who want us to come and take a look.","Join our subcontractor list":"For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.","Report something from site":"For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials."}}},"expect":["Ask about working with us"]} -{"id":"crew-loose-scaffold@/","persona":"crew-loose-scaffold","need":"report-site-issue","page":"/","state":{"body":"Noticed a scaffold board that's not sitting right, feels loose when you step on it. Wanted to flag it straight away before someone gets hurt, but I've got gloves on and no time for a long form."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"For carpenters and apprentices who want to know if we're hiring.","Get a price for a build":"For owners who already know what they want built and need drawings, a permit application and a price.","Get someone to look at a building":"For housing boards and private owners with a problem in a building who want us to come and take a look.","Join our subcontractor list":"For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.","Report something from site":"For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials."}}},"expect":["Report something from site"]} -{"id":"subcontractor-wrong-delivery@/","persona":"subcontractor-wrong-delivery","need":"report-site-issue","page":"/","state":{"body":"The delivery this morning was the wrong type of insulation, not what was on the drawings. Someone needs to know before it gets used."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"For carpenters and apprentices who want to know if we're hiring.","Get a price for a build":"For owners who already know what they want built and need drawings, a permit application and a price.","Get someone to look at a building":"For housing boards and private owners with a problem in a building who want us to come and take a look.","Join our subcontractor list":"For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.","Report something from site":"For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials."}}},"expect":["Report something from site"]} diff --git a/vendor/trainer/runs/contractor-2026-09-21/generator.log b/vendor/trainer/runs/contractor-2026-09-21/generator.log deleted file mode 100644 index 1943b55..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/generator.log +++ /dev/null @@ -1,4 +0,0 @@ -needs round 1: needs.yaml parses, frozen -structure round 1: green -wording round 0: headings only: wording: 10/10 routed right (100%) | headings and descriptions: wording: 10/10 routed right (100%) -content repo written to /tmp/claude-1000/-home-bl-repos-portal/b7802cea-728f-42d2-a751-680a973ba17d/scratchpad/gen/repo diff --git a/vendor/trainer/runs/contractor-2026-09-21/heldout-qwen3-8b/ho-ans-full.jsonl b/vendor/trainer/runs/contractor-2026-09-21/heldout-qwen3-8b/ho-ans-full.jsonl deleted file mode 100644 index a1ba1cf..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/heldout-qwen3-8b/ho-ans-full.jsonl +++ /dev/null @@ -1,10 +0,0 @@ -{"id":"housing-board-damp@/","choice":"Get someone to look at a building","confidence":0.99} -{"id":"buyer-before-purchase@/","choice":"Get someone to look at a building","confidence":0.99} -{"id":"attic-conversion@/","choice":"Get a price for a build","confidence":0.99} -{"id":"shop-to-flat@/","choice":"Get a price for a build","confidence":0.99} -{"id":"electrician-firm@/","choice":"Join our subcontractor list","confidence":0.99} -{"id":"scaffolder@/","choice":"Join our subcontractor list","confidence":0.99} -{"id":"carpenter-jobseeker@/","choice":"Ask about working with us","confidence":0.99} -{"id":"apprentice@/","choice":"Ask about working with us","confidence":0.99} -{"id":"loose-railing@/","choice":"Report something from site","confidence":0.99} -{"id":"wrong-membrane@/","choice":"Report something from site","confidence":0.99} diff --git a/vendor/trainer/runs/contractor-2026-09-21/heldout-qwen3-8b/ho-ans-skim.jsonl b/vendor/trainer/runs/contractor-2026-09-21/heldout-qwen3-8b/ho-ans-skim.jsonl deleted file mode 100644 index f1d01dc..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/heldout-qwen3-8b/ho-ans-skim.jsonl +++ /dev/null @@ -1,10 +0,0 @@ -{"id":"housing-board-damp@/","choice":"Get someone to look at a building","confidence":0.95} -{"id":"buyer-before-purchase@/","choice":"Get someone to look at a building","confidence":0.95} -{"id":"attic-conversion@/","choice":"Get someone to look at a building","confidence":0.95} -{"id":"shop-to-flat@/","choice":"Get a price for a build","confidence":0.95} -{"id":"electrician-firm@/","choice":"Join our subcontractor list","confidence":0.95} -{"id":"scaffolder@/","choice":"Ask about working with us","confidence":0.95} -{"id":"carpenter-jobseeker@/","choice":"Ask about working with us","confidence":0.95} -{"id":"apprentice@/","choice":"Ask about working with us","confidence":0.95} -{"id":"loose-railing@/","choice":"Report something from site","confidence":0.95} -{"id":"wrong-membrane@/","choice":"Report something from site","confidence":0.95} diff --git a/vendor/trainer/runs/contractor-2026-09-21/heldout-qwen3-8b/ho-full.jsonl b/vendor/trainer/runs/contractor-2026-09-21/heldout-qwen3-8b/ho-full.jsonl deleted file mode 100644 index 5dd9319..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/heldout-qwen3-8b/ho-full.jsonl +++ /dev/null @@ -1,10 +0,0 @@ -{"id":"housing-board-damp@/","persona":"housing-board-damp","need":"survey-enquiry","page":"/","state":{"body":"I chair the board of a housing cooperative from the seventies. Two ground-floor flats have damp in the walls and we don't know if it's drainage or the facade. We need someone to tell us."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"For carpenters and apprentices who want to know if we're hiring.","Get a price for a build":"For owners who already know what they want built and need drawings, a permit application and a price.","Get someone to look at a building":"For housing boards and private owners with a problem in a building who want us to come and take a look.","Join our subcontractor list":"For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.","Report something from site":"For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials."}}},"expect":["Get someone to look at a building"]} -{"id":"buyer-before-purchase@/","persona":"buyer-before-purchase","need":"survey-enquiry","page":"/","state":{"body":"We are about to buy an old timber house. Before we sign we want a professional to go through it and tell us what is wrong with it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"For carpenters and apprentices who want to know if we're hiring.","Get a price for a build":"For owners who already know what they want built and need drawings, a permit application and a price.","Get someone to look at a building":"For housing boards and private owners with a problem in a building who want us to come and take a look.","Join our subcontractor list":"For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.","Report something from site":"For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials."}}},"expect":["Get someone to look at a building"]} -{"id":"attic-conversion@/","persona":"attic-conversion","need":"build-price-enquiry","page":"/","state":{"body":"We want to turn our attic into two bedrooms and a bathroom. We need drawings and someone who handles the application to the municipality."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"For carpenters and apprentices who want to know if we're hiring.","Get a price for a build":"For owners who already know what they want built and need drawings, a permit application and a price.","Get someone to look at a building":"For housing boards and private owners with a problem in a building who want us to come and take a look.","Join our subcontractor list":"For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.","Report something from site":"For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials."}}},"expect":["Get a price for a build"]} -{"id":"shop-to-flat@/","persona":"shop-to-flat","need":"build-price-enquiry","page":"/","state":{"body":"I own a former shop on the ground floor and want to make it a flat. I have no idea what is allowed. Can you sort that out and give me a price?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"For carpenters and apprentices who want to know if we're hiring.","Get a price for a build":"For owners who already know what they want built and need drawings, a permit application and a price.","Get someone to look at a building":"For housing boards and private owners with a problem in a building who want us to come and take a look.","Join our subcontractor list":"For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.","Report something from site":"For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials."}}},"expect":["Get a price for a build"]} -{"id":"electrician-firm@/","persona":"electrician-firm","need":"subcontractor-application","page":"/","state":{"body":"We are a four-person electrical firm, fully certified. We would like to get on your list so you call us when you need electricians."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"For carpenters and apprentices who want to know if we're hiring.","Get a price for a build":"For owners who already know what they want built and need drawings, a permit application and a price.","Get someone to look at a building":"For housing boards and private owners with a problem in a building who want us to come and take a look.","Join our subcontractor list":"For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.","Report something from site":"For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials."}}},"expect":["Join our subcontractor list"]} -{"id":"scaffolder@/","persona":"scaffolder","need":"subcontractor-application","page":"/","state":{"body":"I run a scaffolding company. How do I get to do jobs for you?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"For carpenters and apprentices who want to know if we're hiring.","Get a price for a build":"For owners who already know what they want built and need drawings, a permit application and a price.","Get someone to look at a building":"For housing boards and private owners with a problem in a building who want us to come and take a look.","Join our subcontractor list":"For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.","Report something from site":"For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials."}}},"expect":["Join our subcontractor list"]} -{"id":"carpenter-jobseeker@/","persona":"carpenter-jobseeker","need":"job-application","page":"/","state":{"body":"I'm a certified carpenter with eight years on rehabilitation jobs. Are you hiring?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"For carpenters and apprentices who want to know if we're hiring.","Get a price for a build":"For owners who already know what they want built and need drawings, a permit application and a price.","Get someone to look at a building":"For housing boards and private owners with a problem in a building who want us to come and take a look.","Join our subcontractor list":"For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.","Report something from site":"For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials."}}},"expect":["Ask about working with us"]} -{"id":"apprentice@/","persona":"apprentice","need":"job-application","page":"/","state":{"body":"I finish vocational school this spring and need an apprenticeship as a bricklayer."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"For carpenters and apprentices who want to know if we're hiring.","Get a price for a build":"For owners who already know what they want built and need drawings, a permit application and a price.","Get someone to look at a building":"For housing boards and private owners with a problem in a building who want us to come and take a look.","Join our subcontractor list":"For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.","Report something from site":"For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials."}}},"expect":["Ask about working with us"]} -{"id":"loose-railing@/","persona":"loose-railing","need":"report-site-issue","page":"/","state":{"body":"The railing on the third level of the scaffold on the north side is loose. Nobody got hurt but someone will."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"For carpenters and apprentices who want to know if we're hiring.","Get a price for a build":"For owners who already know what they want built and need drawings, a permit application and a price.","Get someone to look at a building":"For housing boards and private owners with a problem in a building who want us to come and take a look.","Join our subcontractor list":"For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.","Report something from site":"For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials."}}},"expect":["Report something from site"]} -{"id":"wrong-membrane@/","persona":"wrong-membrane","need":"report-site-issue","page":"/","state":{"body":"The bathroom membrane delivered today is not the one in the specification. We stopped work on it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"For carpenters and apprentices who want to know if we're hiring.","Get a price for a build":"For owners who already know what they want built and need drawings, a permit application and a price.","Get someone to look at a building":"For housing boards and private owners with a problem in a building who want us to come and take a look.","Join our subcontractor list":"For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.","Report something from site":"For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials."}}},"expect":["Report something from site"]} diff --git a/vendor/trainer/runs/contractor-2026-09-21/heldout-qwen3-8b/ho-skim.jsonl b/vendor/trainer/runs/contractor-2026-09-21/heldout-qwen3-8b/ho-skim.jsonl deleted file mode 100644 index 9bdcb2f..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/heldout-qwen3-8b/ho-skim.jsonl +++ /dev/null @@ -1,10 +0,0 @@ -{"id":"housing-board-damp@/","persona":"housing-board-damp","need":"survey-enquiry","page":"/","state":{"body":"I chair the board of a housing cooperative from the seventies. Two ground-floor flats have damp in the walls and we don't know if it's drainage or the facade. We need someone to tell us."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"Ask about working with us","Get a price for a build":"Get a price for a build","Get someone to look at a building":"Get someone to look at a building","Join our subcontractor list":"Join our subcontractor list","Report something from site":"Report something from site"}}},"expect":["Get someone to look at a building"]} -{"id":"buyer-before-purchase@/","persona":"buyer-before-purchase","need":"survey-enquiry","page":"/","state":{"body":"We are about to buy an old timber house. Before we sign we want a professional to go through it and tell us what is wrong with it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"Ask about working with us","Get a price for a build":"Get a price for a build","Get someone to look at a building":"Get someone to look at a building","Join our subcontractor list":"Join our subcontractor list","Report something from site":"Report something from site"}}},"expect":["Get someone to look at a building"]} -{"id":"attic-conversion@/","persona":"attic-conversion","need":"build-price-enquiry","page":"/","state":{"body":"We want to turn our attic into two bedrooms and a bathroom. We need drawings and someone who handles the application to the municipality."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"Ask about working with us","Get a price for a build":"Get a price for a build","Get someone to look at a building":"Get someone to look at a building","Join our subcontractor list":"Join our subcontractor list","Report something from site":"Report something from site"}}},"expect":["Get a price for a build"]} -{"id":"shop-to-flat@/","persona":"shop-to-flat","need":"build-price-enquiry","page":"/","state":{"body":"I own a former shop on the ground floor and want to make it a flat. I have no idea what is allowed. Can you sort that out and give me a price?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"Ask about working with us","Get a price for a build":"Get a price for a build","Get someone to look at a building":"Get someone to look at a building","Join our subcontractor list":"Join our subcontractor list","Report something from site":"Report something from site"}}},"expect":["Get a price for a build"]} -{"id":"electrician-firm@/","persona":"electrician-firm","need":"subcontractor-application","page":"/","state":{"body":"We are a four-person electrical firm, fully certified. We would like to get on your list so you call us when you need electricians."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"Ask about working with us","Get a price for a build":"Get a price for a build","Get someone to look at a building":"Get someone to look at a building","Join our subcontractor list":"Join our subcontractor list","Report something from site":"Report something from site"}}},"expect":["Join our subcontractor list"]} -{"id":"scaffolder@/","persona":"scaffolder","need":"subcontractor-application","page":"/","state":{"body":"I run a scaffolding company. How do I get to do jobs for you?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"Ask about working with us","Get a price for a build":"Get a price for a build","Get someone to look at a building":"Get someone to look at a building","Join our subcontractor list":"Join our subcontractor list","Report something from site":"Report something from site"}}},"expect":["Join our subcontractor list"]} -{"id":"carpenter-jobseeker@/","persona":"carpenter-jobseeker","need":"job-application","page":"/","state":{"body":"I'm a certified carpenter with eight years on rehabilitation jobs. Are you hiring?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"Ask about working with us","Get a price for a build":"Get a price for a build","Get someone to look at a building":"Get someone to look at a building","Join our subcontractor list":"Join our subcontractor list","Report something from site":"Report something from site"}}},"expect":["Ask about working with us"]} -{"id":"apprentice@/","persona":"apprentice","need":"job-application","page":"/","state":{"body":"I finish vocational school this spring and need an apprenticeship as a bricklayer."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"Ask about working with us","Get a price for a build":"Get a price for a build","Get someone to look at a building":"Get someone to look at a building","Join our subcontractor list":"Join our subcontractor list","Report something from site":"Report something from site"}}},"expect":["Ask about working with us"]} -{"id":"loose-railing@/","persona":"loose-railing","need":"report-site-issue","page":"/","state":{"body":"The railing on the third level of the scaffold on the north side is loose. Nobody got hurt but someone will."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"Ask about working with us","Get a price for a build":"Get a price for a build","Get someone to look at a building":"Get someone to look at a building","Join our subcontractor list":"Join our subcontractor list","Report something from site":"Report something from site"}}},"expect":["Report something from site"]} -{"id":"wrong-membrane@/","persona":"wrong-membrane","need":"report-site-issue","page":"/","state":{"body":"The bathroom membrane delivered today is not the one in the specification. We stopped work on it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Ask about working with us":"Ask about working with us","Get a price for a build":"Get a price for a build","Get someone to look at a building":"Get someone to look at a building","Join our subcontractor list":"Join our subcontractor list","Report something from site":"Report something from site"}}},"expect":["Report something from site"]} diff --git a/vendor/trainer/runs/contractor-2026-09-21/rating/model-official-voice-control.json b/vendor/trainer/runs/contractor-2026-09-21/rating/model-official-voice-control.json deleted file mode 100644 index 0d3d2cc..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/rating/model-official-voice-control.json +++ /dev/null @@ -1,720 +0,0 @@ -{ - "buckets": { - "applicants": { - "desks": [ - { - "group": "project_managers", - "moves": [ - { - "from": "open", - "label": "Invite to interview", - "to": "interviewing" - }, - { - "from": "open", - "label": "Decline", - "to": "declined" - }, - { - "from": "interviewing", - "label": "Hire", - "to": "hired" - }, - { - "from": "interviewing", - "label": "Decline", - "to": "declined" - } - ], - "page": "/desk" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "interviewing": [ - "hired", - "declined" - ], - "open": [ - "interviewing", - "declined" - ] - } - }, - "enquiries": { - "desks": [ - { - "group": "project_managers", - "moves": [ - { - "from": "open", - "label": "Looked at the building", - "to": "surveyed" - }, - { - "from": "surveyed", - "label": "Quote sent", - "to": "quoted" - }, - { - "from": "surveyed", - "label": "Not worth quoting", - "to": "lost" - }, - { - "from": "open", - "label": "Not for us", - "to": "lost" - }, - { - "from": "quoted", - "label": "Won", - "to": "won" - }, - { - "from": "quoted", - "label": "Lost", - "to": "lost" - } - ], - "page": "/desk" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "surveyed", - "lost" - ], - "quoted": [ - "won", - "lost" - ], - "surveyed": [ - "quoted", - "lost" - ] - } - }, - "site_issues": { - "desks": [ - { - "group": "safety_officer", - "moves": [ - { - "from": "open", - "label": "Look into it", - "to": "in_hand" - }, - { - "from": "in_hand", - "label": "Mark fixed", - "to": "closed" - } - ], - "page": "/safety" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "in_hand": [ - "closed" - ], - "open": [ - "in_hand" - ] - } - }, - "subcontractors": { - "desks": [ - { - "group": "project_managers", - "moves": [ - { - "from": "open", - "label": "Ask for missing papers", - "to": "awaiting_papers" - }, - { - "from": "open", - "label": "Approve", - "to": "approved" - }, - { - "from": "open", - "label": "Decline", - "to": "declined" - }, - { - "from": "awaiting_papers", - "label": "Approve", - "to": "approved" - }, - { - "from": "awaiting_papers", - "label": "Decline", - "to": "declined" - } - ], - "page": "/desk" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "awaiting_papers": [ - "approved", - "declined" - ], - "open": [ - "awaiting_papers", - "approved", - "declined" - ] - } - } - }, - "needs": [ - { - "done_when": [ - "won", - "lost" - ], - "enters_as": null, - "handled_by": "project_managers", - "id": "survey-enquiry", - "lands_in": "enquiries", - "steps": [ - { - "alternative": "Get someone to look at a building", - "expect": [ - "Get someone to look at a building" - ], - "fields": [ - { - "label": "Your name", - "name": "name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Email", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Address of the building", - "name": "address", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What's wrong", - "name": "problem", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Submission of requests pertaining to structural or condition-related evaluation of existing properties.", - "name": "Building condition assessment request" - }, - { - "description": "Applicants must provide documentation of intended works for the purposes of cost estimation.", - "name": "Construction quotation request" - }, - { - "description": "Registration of enterprises for prequalification subject to verification of mandatory documentation.", - "name": "Subcontractor prequalification" - }, - { - "description": "Unsolicited applications are processed in accordance with applicable recruitment procedures.", - "name": "Employment enquiries" - }, - { - "description": "Mandatory registration of nonconformities in accordance with internal control requirements.", - "name": "Deviation and incident reporting" - } - ], - "page": "/", - "question": "Please select the applicable category for your submission" - } - ], - "success": [ - "won" - ], - "wants": "someone from Nordvik Bygg to come and look at the building and tell them what a fix would cost", - "who": "a housing board member or private owner with a problem in a building" - }, - { - "done_when": [ - "won", - "lost" - ], - "enters_as": null, - "handled_by": "project_managers", - "id": "build-price-enquiry", - "lands_in": "enquiries", - "steps": [ - { - "alternative": "Get a price for a build", - "expect": [ - "Get a price for a build" - ], - "fields": [ - { - "label": "Your name", - "name": "name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Email", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Address of the site", - "name": "address", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What you want built", - "name": "project", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "When you'd like to start", - "name": "timeframe", - "optional": false, - "options": [ - "As soon as possible", - "Within a year", - "Just exploring" - ], - "type": "select" - } - ], - "options": [ - { - "description": "Submission of requests pertaining to structural or condition-related evaluation of existing properties.", - "name": "Building condition assessment request" - }, - { - "description": "Applicants must provide documentation of intended works for the purposes of cost estimation.", - "name": "Construction quotation request" - }, - { - "description": "Registration of enterprises for prequalification subject to verification of mandatory documentation.", - "name": "Subcontractor prequalification" - }, - { - "description": "Unsolicited applications are processed in accordance with applicable recruitment procedures.", - "name": "Employment enquiries" - }, - { - "description": "Mandatory registration of nonconformities in accordance with internal control requirements.", - "name": "Deviation and incident reporting" - } - ], - "page": "/", - "question": "Please select the applicable category for your submission" - } - ], - "success": [ - "won" - ], - "wants": "drawings, a permit application and a price for the work", - "who": "an owner who already knows what they want built" - }, - { - "done_when": [ - "approved", - "declined" - ], - "enters_as": null, - "handled_by": "project_managers", - "id": "subcontractor-application", - "lands_in": "subcontractors", - "steps": [ - { - "alternative": "Join our subcontractor list", - "expect": [ - "Join our subcontractor list" - ], - "fields": [ - { - "label": "Company name", - "name": "company_name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Email", - "name": "contact_email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Trade", - "name": "trade", - "optional": false, - "options": [ - "Electrical", - "Plumbing", - "Scaffolding" - ], - "type": "select" - }, - { - "label": "Company registration number", - "name": "registration_number", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Insurance policy details", - "name": "insurance", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Trade approval reference", - "name": "trade_approval", - "optional": true, - "options": [], - "type": "text" - } - ], - "options": [ - { - "description": "Submission of requests pertaining to structural or condition-related evaluation of existing properties.", - "name": "Building condition assessment request" - }, - { - "description": "Applicants must provide documentation of intended works for the purposes of cost estimation.", - "name": "Construction quotation request" - }, - { - "description": "Registration of enterprises for prequalification subject to verification of mandatory documentation.", - "name": "Subcontractor prequalification" - }, - { - "description": "Unsolicited applications are processed in accordance with applicable recruitment procedures.", - "name": "Employment enquiries" - }, - { - "description": "Mandatory registration of nonconformities in accordance with internal control requirements.", - "name": "Deviation and incident reporting" - } - ], - "page": "/", - "question": "Please select the applicable category for your submission" - } - ], - "success": [ - "approved" - ], - "wants": "to get on Nordvik Bygg's list of subcontractors they call for work", - "who": "a trade firm doing electrical, plumbing or scaffolding work" - }, - { - "done_when": [ - "hired", - "declined" - ], - "enters_as": null, - "handled_by": "project_managers", - "id": "job-application", - "lands_in": "applicants", - "steps": [ - { - "alternative": "Ask about working with us", - "expect": [ - "Ask about working with us" - ], - "fields": [ - { - "label": "Your name", - "name": "name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Email", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "What you do", - "name": "role", - "optional": false, - "options": [ - "Carpenter", - "Apprentice carpenter", - "Other" - ], - "type": "select" - }, - { - "label": "Anything else we should know", - "name": "message", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Submission of requests pertaining to structural or condition-related evaluation of existing properties.", - "name": "Building condition assessment request" - }, - { - "description": "Applicants must provide documentation of intended works for the purposes of cost estimation.", - "name": "Construction quotation request" - }, - { - "description": "Registration of enterprises for prequalification subject to verification of mandatory documentation.", - "name": "Subcontractor prequalification" - }, - { - "description": "Unsolicited applications are processed in accordance with applicable recruitment procedures.", - "name": "Employment enquiries" - }, - { - "description": "Mandatory registration of nonconformities in accordance with internal control requirements.", - "name": "Deviation and incident reporting" - } - ], - "page": "/", - "question": "Please select the applicable category for your submission" - } - ], - "success": [ - "hired" - ], - "wants": "to find out if Nordvik Bygg is hiring and put themselves forward", - "who": "a carpenter or apprentice looking for work" - }, - { - "done_when": [ - "closed" - ], - "enters_as": null, - "handled_by": "safety_officer", - "id": "report-site-issue", - "lands_in": "site_issues", - "steps": [ - { - "alternative": "Report something from site", - "expect": [ - "Report something from site" - ], - "fields": [ - { - "label": "What kind of issue", - "name": "issue_type", - "optional": false, - "options": [ - "Hazard", - "Near miss", - "Wrong materials delivered" - ], - "type": "select" - }, - { - "label": "Where on site", - "name": "location", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What happened", - "name": "details", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Submission of requests pertaining to structural or condition-related evaluation of existing properties.", - "name": "Building condition assessment request" - }, - { - "description": "Applicants must provide documentation of intended works for the purposes of cost estimation.", - "name": "Construction quotation request" - }, - { - "description": "Registration of enterprises for prequalification subject to verification of mandatory documentation.", - "name": "Subcontractor prequalification" - }, - { - "description": "Unsolicited applications are processed in accordance with applicable recruitment procedures.", - "name": "Employment enquiries" - }, - { - "description": "Mandatory registration of nonconformities in accordance with internal control requirements.", - "name": "Deviation and incident reporting" - } - ], - "page": "/", - "question": "Please select the applicable category for your submission" - } - ], - "success": [ - "closed" - ], - "wants": "to flag a hazard, a near miss or wrong materials fast, from their phone", - "who": "a crew member on site, ours or a subcontractor's" - }, - { - "done_when": [ - "won", - "lost" - ], - "enters_as": "project_managers", - "handled_by": "project_managers", - "id": "log-phone-enquiry", - "lands_in": "enquiries", - "steps": [ - { - "alternative": "Log this enquiry", - "expect": [ - "Log this enquiry" - ], - "fields": [ - { - "label": "Their name", - "name": "caller_name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Phone or email", - "name": "contact", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Address of the building", - "name": "address", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What they told you", - "name": "problem", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "How soon", - "name": "urgency", - "optional": false, - "options": [ - "This week", - "This month", - "No rush" - ], - "type": "select" - } - ], - "options": [ - { - "description": "", - "name": "Log this enquiry" - } - ], - "page": "/desk/phone-enquiry", - "question": "Please select the applicable category for your submission" - } - ], - "success": [ - "won" - ], - "wants": "to get the enquiry into the system before it gets lost", - "who": "a project manager who just took a call, email or text about a building" - } - ], - "personas": [ - { - "id": "housing-board-cracks", - "need": "survey-enquiry", - "text": "There are cracks running up the outside wall of our building and none of us know if it's serious. We just want someone qualified to come look at it and tell us what we're dealing with." - }, - { - "id": "homeowner-leaking-roof", - "need": "survey-enquiry", - "text": "Water's coming through the ceiling every time it rains. I don't know if it's the roof or something else, I just want someone to come out and have a look before it gets worse." - }, - { - "id": "homeowner-extension", - "need": "build-price-enquiry", - "text": "We want to add a room above the garage. We know roughly what we want, we just need someone to draw it up, sort the paperwork with the municipality, and tell us what it will cost." - }, - { - "id": "owner-basement-conversion", - "need": "build-price-enquiry", - "text": "I'd like to turn the basement into a flat. Need drawings, the permit sorted, and a proper price before I commit to anything." - }, - { - "id": "electrician-more-work", - "need": "subcontractor-application", - "text": "We're a small electrical firm and we'd like to pick up more building work. We're registered and insured, just need to know who to talk to about getting on your books." - }, - { - "id": "scaffolding-firm", - "need": "subcontractor-application", - "text": "We put up and take down scaffolding for building sites. We'd like to be one of the firms you call when a job needs it." - }, - { - "id": "apprentice-asking", - "need": "job-application", - "text": "I'm in my second year as an apprentice carpenter and looking for a firm that'll keep me on after. Are you taking anyone on right now?" - }, - { - "id": "experienced-carpenter", - "need": "job-application", - "text": "I've been doing carpentry for eight years, mostly older buildings. Wondered if you had any openings on site." - }, - { - "id": "crew-loose-scaffold", - "need": "report-site-issue", - "text": "Noticed a scaffold board that's not sitting right, feels loose when you step on it. Wanted to flag it straight away before someone gets hurt, but I've got gloves on and no time for a long form." - }, - { - "id": "subcontractor-wrong-delivery", - "need": "report-site-issue", - "text": "The delivery this morning was the wrong type of insulation, not what was on the drawings. Someone needs to know before it gets used." - } - ] -} diff --git a/vendor/trainer/runs/contractor-2026-09-21/rating/model-says-who-reads-it.json b/vendor/trainer/runs/contractor-2026-09-21/rating/model-says-who-reads-it.json deleted file mode 100644 index cb9a68b..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/rating/model-says-who-reads-it.json +++ /dev/null @@ -1,720 +0,0 @@ -{ - "buckets": { - "applicants": { - "desks": [ - { - "group": "project_managers", - "moves": [ - { - "from": "open", - "label": "Invite to interview", - "to": "interviewing" - }, - { - "from": "open", - "label": "Decline", - "to": "declined" - }, - { - "from": "interviewing", - "label": "Hire", - "to": "hired" - }, - { - "from": "interviewing", - "label": "Decline", - "to": "declined" - } - ], - "page": "/desk" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "interviewing": [ - "hired", - "declined" - ], - "open": [ - "interviewing", - "declined" - ] - } - }, - "enquiries": { - "desks": [ - { - "group": "project_managers", - "moves": [ - { - "from": "open", - "label": "Looked at the building", - "to": "surveyed" - }, - { - "from": "surveyed", - "label": "Quote sent", - "to": "quoted" - }, - { - "from": "surveyed", - "label": "Not worth quoting", - "to": "lost" - }, - { - "from": "open", - "label": "Not for us", - "to": "lost" - }, - { - "from": "quoted", - "label": "Won", - "to": "won" - }, - { - "from": "quoted", - "label": "Lost", - "to": "lost" - } - ], - "page": "/desk" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "surveyed", - "lost" - ], - "quoted": [ - "won", - "lost" - ], - "surveyed": [ - "quoted", - "lost" - ] - } - }, - "site_issues": { - "desks": [ - { - "group": "safety_officer", - "moves": [ - { - "from": "open", - "label": "Look into it", - "to": "in_hand" - }, - { - "from": "in_hand", - "label": "Mark fixed", - "to": "closed" - } - ], - "page": "/safety" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "in_hand": [ - "closed" - ], - "open": [ - "in_hand" - ] - } - }, - "subcontractors": { - "desks": [ - { - "group": "project_managers", - "moves": [ - { - "from": "open", - "label": "Ask for missing papers", - "to": "awaiting_papers" - }, - { - "from": "open", - "label": "Approve", - "to": "approved" - }, - { - "from": "open", - "label": "Decline", - "to": "declined" - }, - { - "from": "awaiting_papers", - "label": "Approve", - "to": "approved" - }, - { - "from": "awaiting_papers", - "label": "Decline", - "to": "declined" - } - ], - "page": "/desk" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "awaiting_papers": [ - "approved", - "declined" - ], - "open": [ - "awaiting_papers", - "approved", - "declined" - ] - } - } - }, - "needs": [ - { - "done_when": [ - "won", - "lost" - ], - "enters_as": null, - "handled_by": "project_managers", - "id": "survey-enquiry", - "lands_in": "enquiries", - "steps": [ - { - "alternative": "Get someone to look at a building", - "expect": [ - "Get someone to look at a building" - ], - "fields": [ - { - "label": "Your name", - "name": "name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Email", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Address of the building", - "name": "address", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What's wrong", - "name": "problem", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "For housing boards and private owners with a problem in a building who want us to come and take a look. A project manager reads it and calls you within two working days to agree a time to come.", - "name": "Get someone to look at a building" - }, - { - "description": "For owners who already know what they want built and need drawings, a permit application and a price. A project manager reads it and replies within two working days.", - "name": "Get a price for a build" - }, - { - "description": "For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them. A project manager checks your papers and answers within a week.", - "name": "Join our subcontractor list" - }, - { - "description": "For carpenters and apprentices who want to know if we're hiring. A project manager reads every one and answers within a week.", - "name": "Ask about working with us" - }, - { - "description": "For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials. The safety officer sees it at once.", - "name": "Report something from site" - } - ], - "page": "/", - "question": "What brings you here?" - } - ], - "success": [ - "won" - ], - "wants": "someone from Nordvik Bygg to come and look at the building and tell them what a fix would cost", - "who": "a housing board member or private owner with a problem in a building" - }, - { - "done_when": [ - "won", - "lost" - ], - "enters_as": null, - "handled_by": "project_managers", - "id": "build-price-enquiry", - "lands_in": "enquiries", - "steps": [ - { - "alternative": "Get a price for a build", - "expect": [ - "Get a price for a build" - ], - "fields": [ - { - "label": "Your name", - "name": "name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Email", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Address of the site", - "name": "address", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What you want built", - "name": "project", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "When you'd like to start", - "name": "timeframe", - "optional": false, - "options": [ - "As soon as possible", - "Within a year", - "Just exploring" - ], - "type": "select" - } - ], - "options": [ - { - "description": "For housing boards and private owners with a problem in a building who want us to come and take a look. A project manager reads it and calls you within two working days to agree a time to come.", - "name": "Get someone to look at a building" - }, - { - "description": "For owners who already know what they want built and need drawings, a permit application and a price. A project manager reads it and replies within two working days.", - "name": "Get a price for a build" - }, - { - "description": "For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them. A project manager checks your papers and answers within a week.", - "name": "Join our subcontractor list" - }, - { - "description": "For carpenters and apprentices who want to know if we're hiring. A project manager reads every one and answers within a week.", - "name": "Ask about working with us" - }, - { - "description": "For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials. The safety officer sees it at once.", - "name": "Report something from site" - } - ], - "page": "/", - "question": "What brings you here?" - } - ], - "success": [ - "won" - ], - "wants": "drawings, a permit application and a price for the work", - "who": "an owner who already knows what they want built" - }, - { - "done_when": [ - "approved", - "declined" - ], - "enters_as": null, - "handled_by": "project_managers", - "id": "subcontractor-application", - "lands_in": "subcontractors", - "steps": [ - { - "alternative": "Join our subcontractor list", - "expect": [ - "Join our subcontractor list" - ], - "fields": [ - { - "label": "Company name", - "name": "company_name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Email", - "name": "contact_email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Trade", - "name": "trade", - "optional": false, - "options": [ - "Electrical", - "Plumbing", - "Scaffolding" - ], - "type": "select" - }, - { - "label": "Company registration number", - "name": "registration_number", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Insurance policy details", - "name": "insurance", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Trade approval reference", - "name": "trade_approval", - "optional": true, - "options": [], - "type": "text" - } - ], - "options": [ - { - "description": "For housing boards and private owners with a problem in a building who want us to come and take a look. A project manager reads it and calls you within two working days to agree a time to come.", - "name": "Get someone to look at a building" - }, - { - "description": "For owners who already know what they want built and need drawings, a permit application and a price. A project manager reads it and replies within two working days.", - "name": "Get a price for a build" - }, - { - "description": "For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them. A project manager checks your papers and answers within a week.", - "name": "Join our subcontractor list" - }, - { - "description": "For carpenters and apprentices who want to know if we're hiring. A project manager reads every one and answers within a week.", - "name": "Ask about working with us" - }, - { - "description": "For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials. The safety officer sees it at once.", - "name": "Report something from site" - } - ], - "page": "/", - "question": "What brings you here?" - } - ], - "success": [ - "approved" - ], - "wants": "to get on Nordvik Bygg's list of subcontractors they call for work", - "who": "a trade firm doing electrical, plumbing or scaffolding work" - }, - { - "done_when": [ - "hired", - "declined" - ], - "enters_as": null, - "handled_by": "project_managers", - "id": "job-application", - "lands_in": "applicants", - "steps": [ - { - "alternative": "Ask about working with us", - "expect": [ - "Ask about working with us" - ], - "fields": [ - { - "label": "Your name", - "name": "name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Email", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "What you do", - "name": "role", - "optional": false, - "options": [ - "Carpenter", - "Apprentice carpenter", - "Other" - ], - "type": "select" - }, - { - "label": "Anything else we should know", - "name": "message", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "For housing boards and private owners with a problem in a building who want us to come and take a look. A project manager reads it and calls you within two working days to agree a time to come.", - "name": "Get someone to look at a building" - }, - { - "description": "For owners who already know what they want built and need drawings, a permit application and a price. A project manager reads it and replies within two working days.", - "name": "Get a price for a build" - }, - { - "description": "For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them. A project manager checks your papers and answers within a week.", - "name": "Join our subcontractor list" - }, - { - "description": "For carpenters and apprentices who want to know if we're hiring. A project manager reads every one and answers within a week.", - "name": "Ask about working with us" - }, - { - "description": "For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials. The safety officer sees it at once.", - "name": "Report something from site" - } - ], - "page": "/", - "question": "What brings you here?" - } - ], - "success": [ - "hired" - ], - "wants": "to find out if Nordvik Bygg is hiring and put themselves forward", - "who": "a carpenter or apprentice looking for work" - }, - { - "done_when": [ - "closed" - ], - "enters_as": null, - "handled_by": "safety_officer", - "id": "report-site-issue", - "lands_in": "site_issues", - "steps": [ - { - "alternative": "Report something from site", - "expect": [ - "Report something from site" - ], - "fields": [ - { - "label": "What kind of issue", - "name": "issue_type", - "optional": false, - "options": [ - "Hazard", - "Near miss", - "Wrong materials delivered" - ], - "type": "select" - }, - { - "label": "Where on site", - "name": "location", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What happened", - "name": "details", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "For housing boards and private owners with a problem in a building who want us to come and take a look. A project manager reads it and calls you within two working days to agree a time to come.", - "name": "Get someone to look at a building" - }, - { - "description": "For owners who already know what they want built and need drawings, a permit application and a price. A project manager reads it and replies within two working days.", - "name": "Get a price for a build" - }, - { - "description": "For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them. A project manager checks your papers and answers within a week.", - "name": "Join our subcontractor list" - }, - { - "description": "For carpenters and apprentices who want to know if we're hiring. A project manager reads every one and answers within a week.", - "name": "Ask about working with us" - }, - { - "description": "For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials. The safety officer sees it at once.", - "name": "Report something from site" - } - ], - "page": "/", - "question": "What brings you here?" - } - ], - "success": [ - "closed" - ], - "wants": "to flag a hazard, a near miss or wrong materials fast, from their phone", - "who": "a crew member on site, ours or a subcontractor's" - }, - { - "done_when": [ - "won", - "lost" - ], - "enters_as": "project_managers", - "handled_by": "project_managers", - "id": "log-phone-enquiry", - "lands_in": "enquiries", - "steps": [ - { - "alternative": "Log this enquiry", - "expect": [ - "Log this enquiry" - ], - "fields": [ - { - "label": "Their name", - "name": "caller_name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Phone or email", - "name": "contact", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Address of the building", - "name": "address", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What they told you", - "name": "problem", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "How soon", - "name": "urgency", - "optional": false, - "options": [ - "This week", - "This month", - "No rush" - ], - "type": "select" - } - ], - "options": [ - { - "description": "", - "name": "Log this enquiry" - } - ], - "page": "/desk/phone-enquiry", - "question": "What did they tell you?" - } - ], - "success": [ - "won" - ], - "wants": "to get the enquiry into the system before it gets lost", - "who": "a project manager who just took a call, email or text about a building" - } - ], - "personas": [ - { - "id": "housing-board-cracks", - "need": "survey-enquiry", - "text": "There are cracks running up the outside wall of our building and none of us know if it's serious. We just want someone qualified to come look at it and tell us what we're dealing with." - }, - { - "id": "homeowner-leaking-roof", - "need": "survey-enquiry", - "text": "Water's coming through the ceiling every time it rains. I don't know if it's the roof or something else, I just want someone to come out and have a look before it gets worse." - }, - { - "id": "homeowner-extension", - "need": "build-price-enquiry", - "text": "We want to add a room above the garage. We know roughly what we want, we just need someone to draw it up, sort the paperwork with the municipality, and tell us what it will cost." - }, - { - "id": "owner-basement-conversion", - "need": "build-price-enquiry", - "text": "I'd like to turn the basement into a flat. Need drawings, the permit sorted, and a proper price before I commit to anything." - }, - { - "id": "electrician-more-work", - "need": "subcontractor-application", - "text": "We're a small electrical firm and we'd like to pick up more building work. We're registered and insured, just need to know who to talk to about getting on your books." - }, - { - "id": "scaffolding-firm", - "need": "subcontractor-application", - "text": "We put up and take down scaffolding for building sites. We'd like to be one of the firms you call when a job needs it." - }, - { - "id": "apprentice-asking", - "need": "job-application", - "text": "I'm in my second year as an apprentice carpenter and looking for a firm that'll keep me on after. Are you taking anyone on right now?" - }, - { - "id": "experienced-carpenter", - "need": "job-application", - "text": "I've been doing carpentry for eight years, mostly older buildings. Wondered if you had any openings on site." - }, - { - "id": "crew-loose-scaffold", - "need": "report-site-issue", - "text": "Noticed a scaffold board that's not sitting right, feels loose when you step on it. Wanted to flag it straight away before someone gets hurt, but I've got gloves on and no time for a long form." - }, - { - "id": "subcontractor-wrong-delivery", - "need": "report-site-issue", - "text": "The delivery this morning was the wrong type of insulation, not what was on the drawings. Someone needs to know before it gets used." - } - ] -} diff --git a/vendor/trainer/runs/contractor-2026-09-21/rating/rate-generated.json b/vendor/trainer/runs/contractor-2026-09-21/rating/rate-generated.json deleted file mode 100644 index a1b9725..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/rating/rate-generated.json +++ /dev/null @@ -1,77 +0,0 @@ -{ - "build-price-enquiry": { - "control_ok": true, - "control_which": 0, - "lix": 25.593406593406595, - "options": 5, - "overloaded": false, - "personas": 2, - "required_fields": 5, - "steps": 1, - "understanding": { - "asked": 2, - "next": 0, - "which": 2 - } - }, - "job-application": { - "control_ok": true, - "control_which": 0, - "lix": 26.44899072558647, - "options": 5, - "overloaded": false, - "personas": 2, - "required_fields": 4, - "steps": 1, - "understanding": { - "asked": 2, - "next": 0, - "which": 2 - } - }, - "report-site-issue": { - "control_ok": true, - "control_which": 0, - "lix": 26.557413600891863, - "options": 5, - "overloaded": false, - "personas": 2, - "required_fields": 3, - "steps": 1, - "understanding": { - "asked": 2, - "next": 0, - "which": 2 - } - }, - "subcontractor-application": { - "control_ok": true, - "control_which": 0, - "lix": 30.64138678223185, - "options": 5, - "overloaded": false, - "personas": 2, - "required_fields": 5, - "steps": 1, - "understanding": { - "asked": 2, - "next": 0, - "which": 2 - } - }, - "survey-enquiry": { - "control_ok": true, - "control_which": 0, - "lix": 27.867430441898527, - "options": 5, - "overloaded": false, - "personas": 2, - "required_fields": 4, - "steps": 1, - "understanding": { - "asked": 2, - "next": 0, - "which": 2 - } - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-2026-09-21/rating/rate-says-who-reads-it.json b/vendor/trainer/runs/contractor-2026-09-21/rating/rate-says-who-reads-it.json deleted file mode 100644 index 46cc824..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/rating/rate-says-who-reads-it.json +++ /dev/null @@ -1,77 +0,0 @@ -{ - "build-price-enquiry": { - "control_ok": true, - "control_which": 0, - "lix": 28.462059620596207, - "options": 5, - "overloaded": false, - "personas": 2, - "required_fields": 5, - "steps": 1, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - }, - "job-application": { - "control_ok": true, - "control_which": 0, - "lix": 29.146007816862088, - "options": 5, - "overloaded": false, - "personas": 2, - "required_fields": 4, - "steps": 1, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - }, - "report-site-issue": { - "control_ok": true, - "control_which": 0, - "lix": 29.2562358276644, - "options": 5, - "overloaded": false, - "personas": 2, - "required_fields": 3, - "steps": 1, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - }, - "subcontractor-application": { - "control_ok": true, - "control_which": 0, - "lix": 32.111111111111114, - "options": 5, - "overloaded": false, - "personas": 2, - "required_fields": 5, - "steps": 1, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - }, - "survey-enquiry": { - "control_ok": true, - "control_which": 0, - "lix": 30.151032942490225, - "options": 5, - "overloaded": false, - "personas": 2, - "required_fields": 4, - "steps": 1, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-2026-09-21/simulation/README.md b/vendor/trainer/runs/contractor-2026-09-21/simulation/README.md deleted file mode 100644 index 96495b7..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/simulation/README.md +++ /dev/null @@ -1,44 +0,0 @@ -# Simulating the generated contractor site, 2026-09-21 - -Ten personas, three runs each, on ergo. Version A is the site as -generated (`enquiries: open -> quoted`). Version B adds the stage the -owner described and the generator dropped (`open -> surveyed -> quoted`). - -## What held up - -- **The simulation found a defect the verifier could not.** Reading - the first run's records next to the intake showed the generated - machine had skipped "we go and look at the building". That became - the `stages` field in needs.yaml, which the lint now enforces, so - the same omission fails deterministically from here on. -- **Routing and form-filling are stable.** 0 misroutes and 0 abandoned - forms in 60 cases, once choices were matched by heading (the first - run's "100% misrouted" was the model answering "Heading: description"). -- **One recurring question is a real gap.** Handlers asked about - arranging a site visit seven times. The enquiry forms collect an - email address and nothing about access or when someone can come, - for a business whose first step is a visit. - -## What did not - -- **Letting a model decide outcomes is worthless.** In the first - design qwen3:8b sent every case to its success state; after one - sentence telling it that losing is normal, every enquiry was "lost" - in one touch (`first-design-qwen3-8b/`). Routes are now scripted and - who wins is left to the live bucket. -- **The ask-back rate does not discriminate yet.** With - nemotron-3.5-lightning:30b-a3b as handler, nearly every button drew - a question (4 of 4), including nonsense (a title deed; an email - address the form already requires). A measure stuck at its maximum - cannot rank version A against version B: the A -> B rise in - ask-backs per case (1.7 -> 2.3) is just B having one more button. - -## What it needs before its numbers mean anything - -A control for the instrument: run the handler on a record that is -deliberately complete and on one deliberately stripped. A usable judge -asks on the stripped record and stays quiet on the complete one. Until -a prompt and model pass that, read the questions, not the rates. - -Speed: nemotron on both sides took about nine minutes per 30 cases; -qwen3:8b about two. diff --git a/vendor/trainer/runs/contractor-2026-09-21/simulation/a-open-quoted/cases.jsonl b/vendor/trainer/runs/contractor-2026-09-21/simulation/a-open-quoted/cases.jsonl deleted file mode 100644 index 324d082..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/simulation/a-open-quoted/cases.jsonl +++ /dev/null @@ -1,30 +0,0 @@ -{"persona":"housing-board-cracks","need":"survey-enquiry","run":0,"target":"won","record":{"address":"1200 Maple Avenue, Unit 4B, Springfield","email":"alex.ramirez@email.com","follow_up_1":{"answered":"This is the first time a quote is being requested.","asked":"Has Nordvik Bygg already provided a formal quote for this specific issue, or is this the first time a quote is being requested?"},"follow_up_2":{"answered":"This is the first time a quote is being requested.","asked":"Has Nordvik Bygg already provided a formal quote for this specific issue, or is this the first time a quote is being requested?"},"name":"Alex Ramirez","problem":"There are cracks running up the outside wall of our building. None of us know if it's serious. We just want someone qualified to come look at it and tell us what we're dealing with."},"states":["open","quoted","won"],"pressed":["open -> Quote sent","quoted -> Won"],"touches":4,"ask_backs":[{"state":"open","button":"Quote sent","question":"Has Nordvik Bygg already provided a formal quote for this specific issue, or is this the first time a quote is being requested?","answerable":false},{"state":"quoted","button":"Won","question":"Has Nordvik Bygg already provided a formal quote for this specific issue, or is this the first time a quote is being requested?","answerable":false}],"outcome":{"outcome":"finished","detail":"won"}} -{"persona":"housing-board-cracks","need":"survey-enquiry","run":1,"target":"lost","record":{"address":"Our building, but I don't know the exact address","follow_up_1":{"answered":"I don't have it.","asked":"What is the exact address of the building?"},"name":"Anon","problem":"Cracks running up the outside wall. Don't know if serious."},"states":["open","lost"],"pressed":["open -> Not for us"],"touches":2,"ask_backs":[{"state":"open","button":"Not for us","question":"What is the exact address of the building?","answerable":false}],"outcome":{"outcome":"finished","detail":"lost"}} -{"persona":"housing-board-cracks","need":"survey-enquiry","run":2,"target":"won","record":{"address":"12 Maple Avenue, Apt 3B, Springfield","email":"mia.torres@email.com","follow_up_1":{"answered":"No, I haven't received a quote or price estimate from Nordvik Bygg yet. I'm just hoping someone can come take a look and tell us what's going on first.","asked":"Have you already received a quote or price estimate from Nordvik Bygg for this assessment?"},"follow_up_2":{"answered":"No, we've never had a Nordvik Bygg rep visit. We've been trying to get someone out here to look at the cracks for months.","asked":"Has a Nordvik Bygg representative already visited the site and provided a written assessment and cost estimate?"},"name":"Mia Torres","problem":"There are significant cracks running up the exterior wall of our building. The masonry appears to be deteriorating, and we are unsure if this indicates structural failure or something less serious. We need a qualified professional to assess the cause and provide a report on the severity and necessary repairs."},"states":["open","quoted","won"],"pressed":["open -> Quote sent","quoted -> Won"],"touches":4,"ask_backs":[{"state":"open","button":"Quote sent","question":"Have you already received a quote or price estimate from Nordvik Bygg for this assessment?","answerable":false},{"state":"quoted","button":"Won","question":"Has a Nordvik Bygg representative already visited the site and provided a written assessment and cost estimate?","answerable":true}],"outcome":{"outcome":"finished","detail":"won"}} -{"persona":"homeowner-leaking-roof","need":"survey-enquiry","run":0,"target":"won","record":{"address":"1234 Pine Street, Apartment 5B, Atlanta, GA 30309","email":"spike@southernliving.com","follow_up_1":{"answered":"No, this is the first time anyone has inspected it.","asked":"Has Nordvik Bygg already inspected this property before, or is this the first time?"},"follow_up_2":{"answered":"No, this is the first time anyone has been called out to look at it.","asked":"Can you please confirm if Nordvik Bygg has already inspected this property before, or is this the first time?"},"name":"Water's coming through the ceiling every time it rains. I don't know if it's the roof or something else, I just want someone to come out and have a look before it gets worse.","problem":"Water is leaking through the ceiling every time it rains. I'm not sure if it's the roof or something else. Need someone to inspect it before the damage gets worse."},"states":["open","quoted","won"],"pressed":["open -> Quote sent","quoted -> Won"],"touches":4,"ask_backs":[{"state":"open","button":"Quote sent","question":"Has Nordvik Bygg already inspected this property before, or is this the first time?","answerable":false},{"state":"quoted","button":"Won","question":"Can you please confirm if Nordvik Bygg has already inspected this property before, or is this the first time?","answerable":false}],"outcome":{"outcome":"finished","detail":"won"}} -{"persona":"homeowner-leaking-roof","need":"survey-enquiry","run":1,"target":"lost","record":{"address":"Unknown address","email":"unknown@domain.com","follow_up_1":{"answered":"I don't have that info.","asked":"What is the address of the building?"},"name":"Water's coming through the ceiling every time it rains. I don't know if it's the roof or something else, I just want someone to come out and have a look before it gets worse.","problem":"Water leaking through ceiling during rain. Need inspection to determine if roof or other issue."},"states":["open","lost"],"pressed":["open -> Not for us"],"touches":2,"ask_backs":[{"state":"open","button":"Not for us","question":"What is the address of the building?","answerable":false}],"outcome":{"outcome":"finished","detail":"lost"}} -{"persona":"homeowner-leaking-roof","need":"survey-enquiry","run":2,"target":"won","record":{"address":"37 Orchard Lane, Apartment 4B, Southhill","email":"not_sharing@protonmail.com","follow_up_1":{"answered":"The building is occupied. I live here, so there's always someone around when the rain starts.","asked":"Is the building currently occupied or vacant?"},"follow_up_2":{"answered":"I don't know. I'm not there all the time, and the landlord never told me. I just know the water comes down whenever it rains, and I'm tired of buckets.","asked":"Is the building currently occupied or vacant?"},"name":"Water's coming through the ceiling every time it rains. I don't know if it's the roof or something else, I just want someone to come out and have a look before it gets worse.","problem":"Water's coming through the ceiling every time it rains. I don't know if it's the roof or something else, I just want someone to come out and have a look before it gets worse."},"states":["open","quoted","won"],"pressed":["open -> Quote sent","quoted -> Won"],"touches":4,"ask_backs":[{"state":"open","button":"Quote sent","question":"Is the building currently occupied or vacant?","answerable":true},{"state":"quoted","button":"Won","question":"Is the building currently occupied or vacant?","answerable":false}],"outcome":{"outcome":"finished","detail":"won"}} -{"persona":"homeowner-extension","need":"build-price-enquiry","run":0,"target":"won","record":{"address":"42 Maple Street, Unit 3B, Portland, OR 97201","email":"sarah.chen@email.com","follow_up_1":{"answered":"I don't know if a site visit has been performed, but it's a necessary step to verify existing conditions and structural feasibility before drawing up plans.","asked":"Has a site visit been performed to verify the existing conditions and structural feasibility of the proposed addition?"},"follow_up_2":{"answered":"We require a site visit to verify existing conditions and structural feasibility before any design or cost estimation can proceed.","asked":"Has a site visit been performed to verify the existing conditions and structural feasibility of the proposed addition?"},"name":"Sarah Chen","project":"Addition of a 24' x 16' room above the existing garage. Two-story design with dormer windows. Open floor plan living area with master suite. Budget range: $250,000 - $350,000. Current garage to be converted to workshop/storage.","timeframe":"Within a year"},"states":["open","quoted","won"],"pressed":["open -> Quote sent","quoted -> Won"],"touches":4,"ask_backs":[{"state":"open","button":"Quote sent","question":"Has a site visit been performed to verify the existing conditions and structural feasibility of the proposed addition?","answerable":false},{"state":"quoted","button":"Won","question":"Has a site visit been performed to verify the existing conditions and structural feasibility of the proposed addition?","answerable":false}],"outcome":{"outcome":"finished","detail":"won"}} -{"persona":"homeowner-extension","need":"build-price-enquiry","run":1,"target":"lost","record":{"address":"123 Maple St, Anytown","email":"quickquote@example.com","follow_up_1":{"answered":"Yes, we still want to do it.","asked":"Is this project still a possibility, or have you already decided not to proceed?"},"name":"Quick Quote Bot","project":"Room addition above garage","timeframe":"Just exploring"},"states":["open","lost"],"pressed":["open -> Not for us"],"touches":2,"ask_backs":[{"state":"open","button":"Not for us","question":"Is this project still a possibility, or have you already decided not to proceed?","answerable":true}],"outcome":{"outcome":"finished","detail":"lost"}} -{"persona":"homeowner-extension","need":"build-price-enquiry","run":2,"target":"won","record":{"address":"123 Maple Street, Anytown, State, 12345","email":"jane.smith@email.com","follow_up_1":{"answered":"No, I'm a new client inquiry and haven't received any quote from you yet.","asked":"Can you confirm that the quote has been prepared and sent to Jane Smith?"},"follow_up_2":{"answered":"I don't know. I haven't prepared or sent a quote to Jane Smith, and I have no idea who she is.","asked":"Can you confirm that the quote has been prepared and sent to Jane Smith?"},"name":"Jane Smith","project":"Addition of a 20'x24' room above existing single-car garage. Client has conceptual sketches but requires full architectural drawings, municipal permit set, and cost estimation for structural and MEP integration.","timeframe":"Within a year"},"states":["open","quoted","won"],"pressed":["open -> Quote sent","quoted -> Won"],"touches":4,"ask_backs":[{"state":"open","button":"Quote sent","question":"Can you confirm that the quote has been prepared and sent to Jane Smith?","answerable":false},{"state":"quoted","button":"Won","question":"Can you confirm that the quote has been prepared and sent to Jane Smith?","answerable":true}],"outcome":{"outcome":"finished","detail":"won"}} -{"persona":"owner-basement-conversion","need":"build-price-enquiry","run":0,"target":"won","record":{"address":"123 Maple Street, Apt 4B, Cityville, CA 90210","email":"info@basementflat.arch","follow_up_1":{"answered":"No, I haven't visited the site yet. I'll need to see the space in person before I can give you accurate drawings, permits, or pricing.","asked":"Has a site visit been conducted to verify the current condition of the basement and confirm the proposed layout is feasible?"},"follow_up_2":{"answered":"No site visit has been conducted yet.","asked":"Can you please confirm that a site visit has been conducted to verify the current condition of the basement?"},"name":"I. Architect","project":"Conversion of basement into a residential flat with separate entrance, kitchenette, bathroom, and bedroom. Requires architectural drawings, planning permit application, and detailed cost estimate for client approval prior to commencement.","timeframe":"Within a year"},"states":["open","quoted","won"],"pressed":["open -> Quote sent","quoted -> Won"],"touches":4,"ask_backs":[{"state":"open","button":"Quote sent","question":"Has a site visit been conducted to verify the current condition of the basement and confirm the proposed layout is feasible?","answerable":false},{"state":"quoted","button":"Won","question":"Can you please confirm that a site visit has been conducted to verify the current condition of the basement?","answerable":false}],"outcome":{"outcome":"finished","detail":"won"}} -{"persona":"owner-basement-conversion","need":"build-price-enquiry","run":1,"target":"lost","record":{"address":"123 Basement Lane","email":"me@basement.com","follow_up_1":{"answered":"Still exploring. Let's get the ball rolling.","asked":"Has your project moved forward, or would you still like to explore options?"},"name":"Me","project":"Convert basement into a flat","timeframe":"Just exploring"},"states":["open","lost"],"pressed":["open -> Not for us"],"touches":2,"ask_backs":[{"state":"open","button":"Not for us","question":"Has your project moved forward, or would you still like to explore options?","answerable":true}],"outcome":{"outcome":"finished","detail":"lost"}} -{"persona":"owner-basement-conversion","need":"build-price-enquiry","run":2,"target":"won","record":{"address":"42 Maple Crescent, Basingstoke, RG24 9JX","email":"sarah.jenkins@email.com","follow_up_1":{"answered":"No, I haven't had a site visit yet. I'm waiting to get the project started properly.","asked":"Has a site visit been conducted to verify the existing conditions of the basement and the feasibility of the conversion?"},"follow_up_2":{"answered":"No, I haven't had a site visit yet. The plans I'm working from are based on the original building drawings and a quick look around, but I need someone to actually measure the space, check the ceiling height, and look at the services before I can give you proper drawings or a fixed price.","asked":"Has a site visit been conducted to verify the existing conditions of the basement and the feasibility of the conversion?"},"name":"Sarah Jenkins","project":"Convert existing basement into a one-bedroom flat with kitchenette, bathroom, and living area. Requires full architectural drawings, building regulation approval, and planning permission. Need detailed cost breakdown for structural work, MEP services, and finishes.","timeframe":"Within a year"},"states":["open","quoted","won"],"pressed":["open -> Quote sent","quoted -> Won"],"touches":4,"ask_backs":[{"state":"open","button":"Quote sent","question":"Has a site visit been conducted to verify the existing conditions of the basement and the feasibility of the conversion?","answerable":false},{"state":"quoted","button":"Won","question":"Has a site visit been conducted to verify the existing conditions of the basement and the feasibility of the conversion?","answerable":true}],"outcome":{"outcome":"finished","detail":"won"}} -{"persona":"electrician-more-work","need":"subcontractor-application","run":0,"target":"approved","record":{"company_name":"We're a small electrical firm","contact_email":"contact@weareaelectricalfirm.com","follow_up_1":{"answered":"We don't have a company registration number.","asked":"What is your company registration number?"},"insurance":"We have current public liability cover","registration_number":"We are registered but number not to hand right now","trade":"Electrical","trade_approval":""},"states":["open","approved"],"pressed":["open -> Approve"],"touches":2,"ask_backs":[{"state":"open","button":"Approve","question":"What is your company registration number?","answerable":false}],"outcome":{"outcome":"finished","detail":"approved"}} -{"persona":"electrician-more-work","need":"subcontractor-application","run":1,"target":"declined","record":{"company_name":"We're a small electrical firm and we'd like to pick up more building work. We're registered and insured, just need to know who to talk to about getting on your books.","contact_email":"email@example.com","follow_up_1":{"answered":"I don't know what you're talking about.","asked":"What is your company registration number and insurance provider details?"},"insurance":"Registered and insured, just need to know who to talk to about getting on your books.","registration_number":"Registered and insured, just need to know who to talk to about getting on your books.","trade":"Electrical","trade_approval":""},"states":["open","declined"],"pressed":["open -> Decline"],"touches":2,"ask_backs":[{"state":"open","button":"Decline","question":"What is your company registration number and insurance provider details?","answerable":false}],"outcome":{"outcome":"finished","detail":"declined"}} -{"persona":"electrician-more-work","need":"subcontractor-application","run":2,"target":"approved","record":{"company_name":"C&W Electrical Services Ltd","contact_email":"info@cwelectricalservices.co.uk","follow_up_1":{"answered":"Yes, we have submitted all required insurance certificates and signed the standard subcontractor agreement. We're ready to go.","asked":"Has the company submitted the required insurance certificates and signed the standard subcontractor agreement?"},"insurance":"Public liability insurance held with Hiscox policy number HL-987654, cover limit £2,000,000. Electrical indemnity insurance with Allianz policy number AL-345321, cover limit £1,000,000.","registration_number":"OC345678","trade":"Electrical","trade_approval":"NICEIC approved contractor since 2015"},"states":["open","approved"],"pressed":["open -> Approve"],"touches":2,"ask_backs":[{"state":"open","button":"Approve","question":"Has the company submitted the required insurance certificates and signed the standard subcontractor agreement?","answerable":true}],"outcome":{"outcome":"finished","detail":"approved"}} -{"persona":"scaffolding-firm","need":"subcontractor-application","run":0,"target":"approved","record":{"company_name":"QuickSet Scaffolding Ltd","contact_email":"admin@quickset-scaffold.co.uk","follow_up_1":{"answered":"We are a scaffolding company, not a construction site with assigned operatives. We hire qualified scaffolders as needed, but we do not have CISRS cards for our own staff.","asked":"Do you have a valid and current CISRS card for the operatives assigned to Nordvik Bygg projects?"},"insurance":"Public Liability £5M / Employers Liability £10M","registration_number":"12345678","trade":"Scaffolding","trade_approval":"CISRS Registered - Ref: CIS/2024/001"},"states":["open","approved"],"pressed":["open -> Approve"],"touches":2,"ask_backs":[{"state":"open","button":"Approve","question":"Do you have a valid and current CISRS card for the operatives assigned to Nordvik Bygg projects?","answerable":false}],"outcome":{"outcome":"finished","detail":"approved"}} -{"persona":"scaffolding-firm","need":"subcontractor-application","run":1,"target":"declined","record":{"company_name":"We put up and take down scaffolding for building sites.","contact_email":"contact@scaffoldingco.uk","follow_up_1":{"answered":"I don't have the registration number.","asked":"What is the company's registration number?"},"insurance":"We have public liability cover, policy number available on request.","registration_number":"Would prefer not to share this publicly.","trade":"Scaffolding"},"states":["open","declined"],"pressed":["open -> Decline"],"touches":2,"ask_backs":[{"state":"open","button":"Decline","question":"What is the company's registration number?","answerable":false}],"outcome":{"outcome":"finished","detail":"declined"}} -{"persona":"scaffolding-firm","need":"subcontractor-application","run":2,"target":"approved","record":{"company_name":"Rapid Response Scaffolding Ltd","contact_email":"admin@rapidresponse-scaffold.co.uk","follow_up_1":{"answered":"No, I'm just a person writing a message on your behalf. You'll need to check with the actual scaffolding company about their certifications.","asked":"Do you have a valid and current scaffolding-specific certification (e.g., PASMA, CISRS) or relevant trade accreditation for the work you perform?"},"insurance":"Public Liability £5M; Employers Liability £10M; Certificate current to 31/12/2025","registration_number":"OC327489","trade":"Scaffolding","trade_approval":"N/A"},"states":["open","approved"],"pressed":["open -> Approve"],"touches":2,"ask_backs":[{"state":"open","button":"Approve","question":"Do you have a valid and current scaffolding-specific certification (e.g., PASMA, CISRS) or relevant trade accreditation for the work you perform?","answerable":true}],"outcome":{"outcome":"finished","detail":"approved"}} -{"persona":"apprentice-asking","need":"job-application","run":0,"target":"hired","record":{"follow_up_1":{"answered":"206-555-0199","asked":"What is your phone number?"},"follow_up_2":{"answered":"I'm applying for an apprentice position.","asked":"Which specific carpentry role are you applying for (e.g., apprentice, journeyman, project lead)?"},"message":"I'm in my second year as an apprentice carpenter and looking for a firm that'll keep me on after the apprenticeship. Are you taking anyone on right now?","name":"Jordan","role":"Apprentice carpenter"},"states":["open","interviewing","hired"],"pressed":["open -> Invite to interview","interviewing -> Hire"],"touches":4,"ask_backs":[{"state":"open","button":"Invite to interview","question":"What is your phone number?","answerable":true},{"state":"interviewing","button":"Hire","question":"Which specific carpentry role are you applying for (e.g., apprentice, journeyman, project lead)?","answerable":true}],"outcome":{"outcome":"finished","detail":"hired"}} -{"persona":"apprentice-asking","need":"job-application","run":1,"target":"declined","record":{"email":"","follow_up_1":{"answered":"I don't know it.","asked":"What is your email address?"},"message":"I'm in my second year as an apprentice carpenter and looking for a firm that'll keep me on after.","name":"I'm in my second year as an apprentice carpenter and looking for a firm that'll keep me on after.","role":"Apprentice carpenter"},"states":["open","declined"],"pressed":["open -> Decline"],"touches":2,"ask_backs":[{"state":"open","button":"Decline","question":"What is your email address?","answerable":false}],"outcome":{"outcome":"finished","detail":"declined"}} -{"persona":"apprentice-asking","need":"job-application","run":2,"target":"hired","record":{"follow_up_1":{"answered":"it's me@email.com","asked":"What is your email address?"},"follow_up_2":{"answered":"I'm not taking anyone on right now. I'm finishing up a job and sorting out my own schedule for next season. I don't have the time to train a new apprentice while I'm trying to keep my own crew running. If you're serious, ask me again in a few months when things settle down.","asked":"Do you want to proceed with hiring this applicant?"},"message":"I'm currently in my second year of carpentry apprenticeship and looking for a firm that will take me on permanently after I complete my training. I have hands-on experience with framing, finish work, and tool maintenance, and I'm eager to find a workplace where I can grow long-term.","name":"I'm in my second year as an apprentice carpenter and looking for a firm that'll keep me on after.","role":"Apprentice carpenter"},"states":["open","interviewing","hired"],"pressed":["open -> Invite to interview","interviewing -> Hire"],"touches":4,"ask_backs":[{"state":"open","button":"Invite to interview","question":"What is your email address?","answerable":true},{"state":"interviewing","button":"Hire","question":"Do you want to proceed with hiring this applicant?","answerable":false}],"outcome":{"outcome":"finished","detail":"hired"}} -{"persona":"experienced-carpenter","need":"job-application","run":0,"target":"hired","record":{"email":"alex.miller@example.com","follow_up_1":{"answered":"925-555-0198","asked":"What is your phone number?"},"follow_up_2":{"answered":"I'm available on the 15th, but I need to know the start time. I have a morning job that day, so I can only make it in after 10 AM.","asked":"Can you come in for an interview on [Date]?"},"message":"Eight years experience specializing in older buildings. I have hand tools for precise joinery and familiarity with period materials. Available for site work.","name":"Alex Miller","role":"Carpenter"},"states":["open","interviewing","hired"],"pressed":["open -> Invite to interview","interviewing -> Hire"],"touches":4,"ask_backs":[{"state":"open","button":"Invite to interview","question":"What is your phone number?","answerable":true},{"state":"interviewing","button":"Hire","question":"Can you come in for an interview on [Date]?","answerable":true}],"outcome":{"outcome":"finished","detail":"hired"}} -{"persona":"experienced-carpenter","need":"job-application","run":1,"target":"declined","record":{"email":"eli.carpenter8@protonmail.com","message":"Eight years in older buildings. Prefer hand tools, lime mortar, and keeping things standing.","name":"Eli","role":"Carpenter"},"states":["open","declined"],"pressed":["open -> Decline"],"touches":1,"ask_backs":[],"outcome":{"outcome":"finished","detail":"declined"}} -{"persona":"experienced-carpenter","need":"job-application","run":2,"target":"hired","record":{"email":"james.miller@example.com","follow_up_1":{"answered":"I'm a carpenter, not a citizen. I just have a passport.","asked":"Do you have the legal right to work in the country where Nordvik Bygg operates?"},"message":"I'm James, an experienced carpenter with eight years specializing in older buildings. I have a strong background in structural restoration, period joinery, and working with reclaimed materials. I'm looking for a position where I can apply my skills to heritage projects and continue learning from experienced craftsmen.","name":"James Miller","role":"Carpenter"},"states":["open","interviewing","hired"],"pressed":["open -> Invite to interview","interviewing -> Hire"],"touches":3,"ask_backs":[{"state":"interviewing","button":"Hire","question":"Do you have the legal right to work in the country where Nordvik Bygg operates?","answerable":true}],"outcome":{"outcome":"finished","detail":"hired"}} -{"persona":"crew-loose-scaffold","need":"report-site-issue","run":0,"target":"closed","record":{"details":"Board feels loose under weight; gloves on, no time for detailed investigation","follow_up_1":{"answered":"First name's Mark, I'm a labourer on site. No time for faffing about.","asked":"What is your full name and role (e.g., employee or subcontractor) so I can assign the follow-up correctly?"},"follow_up_2":{"answered":"the crew member who flagged it","asked":"Which person marked this as fixed: the crew member who flagged it, or the subcontractor's worker?"},"issue_type":"Hazard","location":"Scaffold walkway near Zone 3"},"states":["open","in_hand","closed"],"pressed":["open -> Look into it","in_hand -> Mark fixed"],"touches":4,"ask_backs":[{"state":"open","button":"Look into it","question":"What is your full name and role (e.g., employee or subcontractor) so I can assign the follow-up correctly?","answerable":true},{"state":"in_hand","button":"Mark fixed","question":"Which person marked this as fixed: the crew member who flagged it, or the subcontractor's worker?","answerable":true}],"outcome":{"outcome":"finished","detail":"closed"}} -{"persona":"crew-loose-scaffold","need":"report-site-issue","run":1,"target":"closed","record":{"details":"Board feels loose under weight, gloves on, needs checking","follow_up_1":{"answered":"No, I was stepping on it.","asked":"Has a visual inspection of the scaffold board near main entrance been completed?"},"follow_up_2":{"answered":"No, I just noticed it.","asked":"Has a visual inspection of the scaffold board near main entrance been completed?"},"issue_type":"Hazard","location":"Scaffold board near main entrance"},"states":["open","in_hand","closed"],"pressed":["open -> Look into it","in_hand -> Mark fixed"],"touches":4,"ask_backs":[{"state":"open","button":"Look into it","question":"Has a visual inspection of the scaffold board near main entrance been completed?","answerable":false},{"state":"in_hand","button":"Mark fixed","question":"Has a visual inspection of the scaffold board near main entrance been completed?","answerable":false}],"outcome":{"outcome":"finished","detail":"closed"}} -{"persona":"crew-loose-scaffold","need":"report-site-issue","run":2,"target":"closed","record":{"details":"Scaffold board feels loose and unstable under foot. Gloves on, time limited. Board not sitting right, risk of slip or fall if stepped on. Flagging immediately to prevent injury.","follow_up_1":{"answered":"Scaffold bay 4, Level 3. The board is over the walkway. It's still in use, no cordon up yet. I just stepped on it and it dipped.","asked":"Can you confirm the exact location of the scaffold board issue? For example, which specific scaffold bay or level, and the current status of the area (e.g., is the scaffold still in use or has it been cordoned off)?"},"follow_up_2":{"answered":"Board is still up, no cordon up yet. I stepped on it to test it, wobbled a bit, then got off. Didn't tie it off or rope it off because I was in a rush and just wanted to warn the boss. Gonna go back with proper gear later to fix it for real.","asked":"Has the scaffold board been secured or removed, and has the area been cordoned off to prevent further use?"},"issue_type":"Hazard","location":"Scaffold area, near main entrance"},"states":["open","in_hand","closed"],"pressed":["open -> Look into it","in_hand -> Mark fixed"],"touches":4,"ask_backs":[{"state":"open","button":"Look into it","question":"Can you confirm the exact location of the scaffold board issue? For example, which specific scaffold bay or level, and the current status of the area (e.g., is the scaffold still in use or has it been cordoned off)?","answerable":true},{"state":"in_hand","button":"Mark fixed","question":"Has the scaffold board been secured or removed, and has the area been cordoned off to prevent further use?","answerable":true}],"outcome":{"outcome":"finished","detail":"closed"}} -{"persona":"subcontractor-wrong-delivery","need":"report-site-issue","run":0,"target":"closed","record":{"details":"Delivery this morning arrived with standard fiberglass batts instead of the specified mineral wool board. Packaging labels match the delivery note but not the structural drawings. Awaiting confirmation on whether to reject the shipment or hold for exchange.","follow_up_1":{"answered":"Counted 25 rolls of fiberglass batts against the spec for mineral wool. I only noticed because I cross-referenced the truck tag against the manifest before unloading.","asked":"What is the quantity of wrong materials delivered?"},"follow_up_2":{"answered":"Left on the truck. I haven't unloaded it yet, waiting for clarification before proceeding.","asked":"How has the wrong material been handled since delivery? (e.g., moved to quarantine, used in work, left in the storage area)"},"issue_type":"Wrong materials delivered","location":"Storage area, Zone B"},"states":["open","in_hand","closed"],"pressed":["open -> Look into it","in_hand -> Mark fixed"],"touches":4,"ask_backs":[{"state":"open","button":"Look into it","question":"What is the quantity of wrong materials delivered?","answerable":true},{"state":"in_hand","button":"Mark fixed","question":"How has the wrong material been handled since delivery? (e.g., moved to quarantine, used in work, left in the storage area)","answerable":true}],"outcome":{"outcome":"finished","detail":"closed"}} -{"persona":"subcontractor-wrong-delivery","need":"report-site-issue","run":1,"target":"closed","record":{"details":"Wrong type of insulation delivered this morning. Not what was on the drawings.","follow_up_1":{"answered":"No, the wrong insulation is still on site.","asked":"Has the wrong insulation been removed or replaced with the correct type?"},"issue_type":"Wrong materials delivered","location":"Main entrance staging area"},"states":["open","in_hand","closed"],"pressed":["open -> Look into it","in_hand -> Mark fixed"],"touches":3,"ask_backs":[{"state":"in_hand","button":"Mark fixed","question":"Has the wrong insulation been removed or replaced with the correct type?","answerable":false}],"outcome":{"outcome":"finished","detail":"closed"}} -{"persona":"subcontractor-wrong-delivery","need":"report-site-issue","run":2,"target":"closed","record":{"details":"The delivery arrived this morning. I was expecting the blue fiberglass batts shown on the project drawings, but the delivery contained mineral wool boards instead. The packaging was labeled for a different job number. I stopped the crew from offloading it. Someone needs to verify the correct material before it gets installed, as the R-value and fit are different from what's specified. I don't have the delivery ticket number handy, but the driver said it was a substitute from the supplier's stock.","follow_up_1":{"answered":"Yes, I have the delivery ticket number from the manifest on the pallet, but the supplier's contact details are just the generic office number on the invoice, not a specific representative. I can read the ticket number off the label if you need me to verify the substitution details.","asked":"Do you have the delivery ticket number or the supplier's contact details to verify the substitution?"},"follow_up_2":{"answered":"I don't have the delivery ticket or the label in front of me right now, so I can't read the number off the pallet. I need someone to physically check the pallet tag or look up the shipment record in the system to get that number and confirm what was actually delivered versus what was specified on the drawings.","asked":"Can you read the delivery ticket number from the label on the pallet to verify the substitution details?"},"issue_type":"Wrong materials delivered","location":"Warehouse staging area, Bay 4"},"states":["open","in_hand","closed"],"pressed":["open -> Look into it","in_hand -> Mark fixed"],"touches":4,"ask_backs":[{"state":"open","button":"Look into it","question":"Do you have the delivery ticket number or the supplier's contact details to verify the substitution?","answerable":true},{"state":"in_hand","button":"Mark fixed","question":"Can you read the delivery ticket number from the label on the pallet to verify the substitution details?","answerable":false}],"outcome":{"outcome":"finished","detail":"closed"}} diff --git a/vendor/trainer/runs/contractor-2026-09-21/simulation/a-open-quoted/model.json b/vendor/trainer/runs/contractor-2026-09-21/simulation/a-open-quoted/model.json deleted file mode 100644 index ee84705..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/simulation/a-open-quoted/model.json +++ /dev/null @@ -1,706 +0,0 @@ -{ - "buckets": { - "applicants": { - "desks": [ - { - "group": "project_managers", - "moves": [ - { - "from": "open", - "label": "Invite to interview", - "to": "interviewing" - }, - { - "from": "open", - "label": "Decline", - "to": "declined" - }, - { - "from": "interviewing", - "label": "Hire", - "to": "hired" - }, - { - "from": "interviewing", - "label": "Decline", - "to": "declined" - } - ], - "page": "/desk" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "interviewing": [ - "hired", - "declined" - ], - "open": [ - "interviewing", - "declined" - ] - } - }, - "enquiries": { - "desks": [ - { - "group": "project_managers", - "moves": [ - { - "from": "open", - "label": "Quote sent", - "to": "quoted" - }, - { - "from": "open", - "label": "Not for us", - "to": "lost" - }, - { - "from": "quoted", - "label": "Won", - "to": "won" - }, - { - "from": "quoted", - "label": "Lost", - "to": "lost" - } - ], - "page": "/desk" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "quoted", - "lost" - ], - "quoted": [ - "won", - "lost" - ] - } - }, - "site_issues": { - "desks": [ - { - "group": "safety_officer", - "moves": [ - { - "from": "open", - "label": "Look into it", - "to": "in_hand" - }, - { - "from": "in_hand", - "label": "Mark fixed", - "to": "closed" - } - ], - "page": "/safety" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "in_hand": [ - "closed" - ], - "open": [ - "in_hand" - ] - } - }, - "subcontractors": { - "desks": [ - { - "group": "project_managers", - "moves": [ - { - "from": "open", - "label": "Ask for missing papers", - "to": "awaiting_papers" - }, - { - "from": "open", - "label": "Approve", - "to": "approved" - }, - { - "from": "open", - "label": "Decline", - "to": "declined" - }, - { - "from": "awaiting_papers", - "label": "Approve", - "to": "approved" - }, - { - "from": "awaiting_papers", - "label": "Decline", - "to": "declined" - } - ], - "page": "/desk" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "awaiting_papers": [ - "approved", - "declined" - ], - "open": [ - "awaiting_papers", - "approved", - "declined" - ] - } - } - }, - "needs": [ - { - "done_when": [ - "won", - "lost" - ], - "enters_as": null, - "handled_by": "project_managers", - "id": "survey-enquiry", - "lands_in": "enquiries", - "steps": [ - { - "alternative": "Get someone to look at a building", - "expect": [ - "Get someone to look at a building" - ], - "fields": [ - { - "label": "Your name", - "name": "name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Email", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Address of the building", - "name": "address", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What's wrong", - "name": "problem", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "For housing boards and private owners with a problem in a building who want us to come and take a look.", - "name": "Get someone to look at a building" - }, - { - "description": "For owners who already know what they want built and need drawings, a permit application and a price.", - "name": "Get a price for a build" - }, - { - "description": "For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.", - "name": "Join our subcontractor list" - }, - { - "description": "For carpenters and apprentices who want to know if we're hiring.", - "name": "Ask about working with us" - }, - { - "description": "For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials.", - "name": "Report something from site" - } - ], - "page": "/", - "question": "What brings you here?" - } - ], - "success": [ - "won" - ], - "wants": "someone from Nordvik Bygg to come and look at the building and tell them what a fix would cost", - "who": "a housing board member or private owner with a problem in a building" - }, - { - "done_when": [ - "won", - "lost" - ], - "enters_as": null, - "handled_by": "project_managers", - "id": "build-price-enquiry", - "lands_in": "enquiries", - "steps": [ - { - "alternative": "Get a price for a build", - "expect": [ - "Get a price for a build" - ], - "fields": [ - { - "label": "Your name", - "name": "name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Email", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Address of the site", - "name": "address", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What you want built", - "name": "project", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "When you'd like to start", - "name": "timeframe", - "optional": false, - "options": [ - "As soon as possible", - "Within a year", - "Just exploring" - ], - "type": "select" - } - ], - "options": [ - { - "description": "For housing boards and private owners with a problem in a building who want us to come and take a look.", - "name": "Get someone to look at a building" - }, - { - "description": "For owners who already know what they want built and need drawings, a permit application and a price.", - "name": "Get a price for a build" - }, - { - "description": "For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.", - "name": "Join our subcontractor list" - }, - { - "description": "For carpenters and apprentices who want to know if we're hiring.", - "name": "Ask about working with us" - }, - { - "description": "For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials.", - "name": "Report something from site" - } - ], - "page": "/", - "question": "What brings you here?" - } - ], - "success": [ - "won" - ], - "wants": "drawings, a permit application and a price for the work", - "who": "an owner who already knows what they want built" - }, - { - "done_when": [ - "approved", - "declined" - ], - "enters_as": null, - "handled_by": "project_managers", - "id": "subcontractor-application", - "lands_in": "subcontractors", - "steps": [ - { - "alternative": "Join our subcontractor list", - "expect": [ - "Join our subcontractor list" - ], - "fields": [ - { - "label": "Company name", - "name": "company_name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Email", - "name": "contact_email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Trade", - "name": "trade", - "optional": false, - "options": [ - "Electrical", - "Plumbing", - "Scaffolding" - ], - "type": "select" - }, - { - "label": "Company registration number", - "name": "registration_number", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Insurance policy details", - "name": "insurance", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Trade approval reference", - "name": "trade_approval", - "optional": true, - "options": [], - "type": "text" - } - ], - "options": [ - { - "description": "For housing boards and private owners with a problem in a building who want us to come and take a look.", - "name": "Get someone to look at a building" - }, - { - "description": "For owners who already know what they want built and need drawings, a permit application and a price.", - "name": "Get a price for a build" - }, - { - "description": "For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.", - "name": "Join our subcontractor list" - }, - { - "description": "For carpenters and apprentices who want to know if we're hiring.", - "name": "Ask about working with us" - }, - { - "description": "For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials.", - "name": "Report something from site" - } - ], - "page": "/", - "question": "What brings you here?" - } - ], - "success": [ - "approved" - ], - "wants": "to get on Nordvik Bygg's list of subcontractors they call for work", - "who": "a trade firm doing electrical, plumbing or scaffolding work" - }, - { - "done_when": [ - "hired", - "declined" - ], - "enters_as": null, - "handled_by": "project_managers", - "id": "job-application", - "lands_in": "applicants", - "steps": [ - { - "alternative": "Ask about working with us", - "expect": [ - "Ask about working with us" - ], - "fields": [ - { - "label": "Your name", - "name": "name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Email", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "What you do", - "name": "role", - "optional": false, - "options": [ - "Carpenter", - "Apprentice carpenter", - "Other" - ], - "type": "select" - }, - { - "label": "Anything else we should know", - "name": "message", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "For housing boards and private owners with a problem in a building who want us to come and take a look.", - "name": "Get someone to look at a building" - }, - { - "description": "For owners who already know what they want built and need drawings, a permit application and a price.", - "name": "Get a price for a build" - }, - { - "description": "For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.", - "name": "Join our subcontractor list" - }, - { - "description": "For carpenters and apprentices who want to know if we're hiring.", - "name": "Ask about working with us" - }, - { - "description": "For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials.", - "name": "Report something from site" - } - ], - "page": "/", - "question": "What brings you here?" - } - ], - "success": [ - "hired" - ], - "wants": "to find out if Nordvik Bygg is hiring and put themselves forward", - "who": "a carpenter or apprentice looking for work" - }, - { - "done_when": [ - "closed" - ], - "enters_as": null, - "handled_by": "safety_officer", - "id": "report-site-issue", - "lands_in": "site_issues", - "steps": [ - { - "alternative": "Report something from site", - "expect": [ - "Report something from site" - ], - "fields": [ - { - "label": "What kind of issue", - "name": "issue_type", - "optional": false, - "options": [ - "Hazard", - "Near miss", - "Wrong materials delivered" - ], - "type": "select" - }, - { - "label": "Where on site", - "name": "location", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What happened", - "name": "details", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "For housing boards and private owners with a problem in a building who want us to come and take a look.", - "name": "Get someone to look at a building" - }, - { - "description": "For owners who already know what they want built and need drawings, a permit application and a price.", - "name": "Get a price for a build" - }, - { - "description": "For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.", - "name": "Join our subcontractor list" - }, - { - "description": "For carpenters and apprentices who want to know if we're hiring.", - "name": "Ask about working with us" - }, - { - "description": "For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials.", - "name": "Report something from site" - } - ], - "page": "/", - "question": "What brings you here?" - } - ], - "success": [ - "closed" - ], - "wants": "to flag a hazard, a near miss or wrong materials fast, from their phone", - "who": "a crew member on site, ours or a subcontractor's" - }, - { - "done_when": [ - "won", - "lost" - ], - "enters_as": "project_managers", - "handled_by": "project_managers", - "id": "log-phone-enquiry", - "lands_in": "enquiries", - "steps": [ - { - "alternative": "Log this enquiry", - "expect": [ - "Log this enquiry" - ], - "fields": [ - { - "label": "Their name", - "name": "caller_name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Phone or email", - "name": "contact", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Address of the building", - "name": "address", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What they told you", - "name": "problem", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "How soon", - "name": "urgency", - "optional": false, - "options": [ - "This week", - "This month", - "No rush" - ], - "type": "select" - } - ], - "options": [ - { - "description": "", - "name": "Log this enquiry" - } - ], - "page": "/desk/phone-enquiry", - "question": "What did they tell you?" - } - ], - "success": [ - "won" - ], - "wants": "to get the enquiry into the system before it gets lost", - "who": "a project manager who just took a call, email or text about a building" - } - ], - "personas": [ - { - "id": "housing-board-cracks", - "need": "survey-enquiry", - "text": "There are cracks running up the outside wall of our building and none of us know if it's serious. We just want someone qualified to come look at it and tell us what we're dealing with." - }, - { - "id": "homeowner-leaking-roof", - "need": "survey-enquiry", - "text": "Water's coming through the ceiling every time it rains. I don't know if it's the roof or something else, I just want someone to come out and have a look before it gets worse." - }, - { - "id": "homeowner-extension", - "need": "build-price-enquiry", - "text": "We want to add a room above the garage. We know roughly what we want, we just need someone to draw it up, sort the paperwork with the municipality, and tell us what it will cost." - }, - { - "id": "owner-basement-conversion", - "need": "build-price-enquiry", - "text": "I'd like to turn the basement into a flat. Need drawings, the permit sorted, and a proper price before I commit to anything." - }, - { - "id": "electrician-more-work", - "need": "subcontractor-application", - "text": "We're a small electrical firm and we'd like to pick up more building work. We're registered and insured, just need to know who to talk to about getting on your books." - }, - { - "id": "scaffolding-firm", - "need": "subcontractor-application", - "text": "We put up and take down scaffolding for building sites. We'd like to be one of the firms you call when a job needs it." - }, - { - "id": "apprentice-asking", - "need": "job-application", - "text": "I'm in my second year as an apprentice carpenter and looking for a firm that'll keep me on after. Are you taking anyone on right now?" - }, - { - "id": "experienced-carpenter", - "need": "job-application", - "text": "I've been doing carpentry for eight years, mostly older buildings. Wondered if you had any openings on site." - }, - { - "id": "crew-loose-scaffold", - "need": "report-site-issue", - "text": "Noticed a scaffold board that's not sitting right, feels loose when you step on it. Wanted to flag it straight away before someone gets hurt, but I've got gloves on and no time for a long form." - }, - { - "id": "subcontractor-wrong-delivery", - "need": "report-site-issue", - "text": "The delivery this morning was the wrong type of insulation, not what was on the drawings. Someone needs to know before it gets used." - } - ] -} \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-2026-09-21/simulation/a-open-quoted/score.json b/vendor/trainer/runs/contractor-2026-09-21/simulation/a-open-quoted/score.json deleted file mode 100644 index cee40c0..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/simulation/a-open-quoted/score.json +++ /dev/null @@ -1,409 +0,0 @@ -{ - "build-price-enquiry": { - "cases": 6, - "finished": 6, - "stuck": 0, - "misrouted": 0, - "abandoned": 0, - "touches": 20, - "ask_backs": 10, - "unanswerable": 6, - "asked": [ - { - "state": "open", - "button": "Quote sent", - "question": "Has a site visit been performed to verify the existing conditions and structural feasibility of the proposed addition?", - "answerable": false - }, - { - "state": "quoted", - "button": "Won", - "question": "Has a site visit been performed to verify the existing conditions and structural feasibility of the proposed addition?", - "answerable": false - }, - { - "state": "open", - "button": "Not for us", - "question": "Is this project still a possibility, or have you already decided not to proceed?", - "answerable": true - }, - { - "state": "open", - "button": "Quote sent", - "question": "Can you confirm that the quote has been prepared and sent to Jane Smith?", - "answerable": false - }, - { - "state": "quoted", - "button": "Won", - "question": "Can you confirm that the quote has been prepared and sent to Jane Smith?", - "answerable": true - }, - { - "state": "open", - "button": "Quote sent", - "question": "Has a site visit been conducted to verify the current condition of the basement and confirm the proposed layout is feasible?", - "answerable": false - }, - { - "state": "quoted", - "button": "Won", - "question": "Can you please confirm that a site visit has been conducted to verify the current condition of the basement?", - "answerable": false - }, - { - "state": "open", - "button": "Not for us", - "question": "Has your project moved forward, or would you still like to explore options?", - "answerable": true - }, - { - "state": "open", - "button": "Quote sent", - "question": "Has a site visit been conducted to verify the existing conditions of the basement and the feasibility of the conversion?", - "answerable": false - }, - { - "state": "quoted", - "button": "Won", - "question": "Has a site visit been conducted to verify the existing conditions of the basement and the feasibility of the conversion?", - "answerable": true - } - ], - "buttons": { - "open -> Not for us": [ - 2, - 2 - ], - "open -> Quote sent": [ - 4, - 4 - ], - "quoted -> Won": [ - 4, - 4 - ] - }, - "stuck_at": [], - "misroutes": [], - "abandon_reasons": [] - }, - "job-application": { - "cases": 6, - "finished": 6, - "stuck": 0, - "misrouted": 0, - "abandoned": 0, - "touches": 18, - "ask_backs": 8, - "unanswerable": 2, - "asked": [ - { - "state": "open", - "button": "Invite to interview", - "question": "What is your phone number?", - "answerable": true - }, - { - "state": "interviewing", - "button": "Hire", - "question": "Which specific carpentry role are you applying for (e.g., apprentice, journeyman, project lead)?", - "answerable": true - }, - { - "state": "open", - "button": "Decline", - "question": "What is your email address?", - "answerable": false - }, - { - "state": "open", - "button": "Invite to interview", - "question": "What is your email address?", - "answerable": true - }, - { - "state": "interviewing", - "button": "Hire", - "question": "Do you want to proceed with hiring this applicant?", - "answerable": false - }, - { - "state": "open", - "button": "Invite to interview", - "question": "What is your phone number?", - "answerable": true - }, - { - "state": "interviewing", - "button": "Hire", - "question": "Can you come in for an interview on [Date]?", - "answerable": true - }, - { - "state": "interviewing", - "button": "Hire", - "question": "Do you have the legal right to work in the country where Nordvik Bygg operates?", - "answerable": true - } - ], - "buttons": { - "interviewing -> Hire": [ - 4, - 4 - ], - "open -> Decline": [ - 2, - 1 - ], - "open -> Invite to interview": [ - 4, - 3 - ] - }, - "stuck_at": [], - "misroutes": [], - "abandon_reasons": [] - }, - "report-site-issue": { - "cases": 6, - "finished": 6, - "stuck": 0, - "misrouted": 0, - "abandoned": 0, - "touches": 23, - "ask_backs": 11, - "unanswerable": 4, - "asked": [ - { - "state": "open", - "button": "Look into it", - "question": "What is your full name and role (e.g., employee or subcontractor) so I can assign the follow-up correctly?", - "answerable": true - }, - { - "state": "in_hand", - "button": "Mark fixed", - "question": "Which person marked this as fixed: the crew member who flagged it, or the subcontractor's worker?", - "answerable": true - }, - { - "state": "open", - "button": "Look into it", - "question": "Has a visual inspection of the scaffold board near main entrance been completed?", - "answerable": false - }, - { - "state": "in_hand", - "button": "Mark fixed", - "question": "Has a visual inspection of the scaffold board near main entrance been completed?", - "answerable": false - }, - { - "state": "open", - "button": "Look into it", - "question": "Can you confirm the exact location of the scaffold board issue? For example, which specific scaffold bay or level, and the current status of the area (e.g., is the scaffold still in use or has it been cordoned off)?", - "answerable": true - }, - { - "state": "in_hand", - "button": "Mark fixed", - "question": "Has the scaffold board been secured or removed, and has the area been cordoned off to prevent further use?", - "answerable": true - }, - { - "state": "open", - "button": "Look into it", - "question": "What is the quantity of wrong materials delivered?", - "answerable": true - }, - { - "state": "in_hand", - "button": "Mark fixed", - "question": "How has the wrong material been handled since delivery? (e.g., moved to quarantine, used in work, left in the storage area)", - "answerable": true - }, - { - "state": "in_hand", - "button": "Mark fixed", - "question": "Has the wrong insulation been removed or replaced with the correct type?", - "answerable": false - }, - { - "state": "open", - "button": "Look into it", - "question": "Do you have the delivery ticket number or the supplier's contact details to verify the substitution?", - "answerable": true - }, - { - "state": "in_hand", - "button": "Mark fixed", - "question": "Can you read the delivery ticket number from the label on the pallet to verify the substitution details?", - "answerable": false - } - ], - "buttons": { - "in_hand -> Mark fixed": [ - 6, - 6 - ], - "open -> Look into it": [ - 6, - 5 - ] - }, - "stuck_at": [], - "misroutes": [], - "abandon_reasons": [] - }, - "subcontractor-application": { - "cases": 6, - "finished": 6, - "stuck": 0, - "misrouted": 0, - "abandoned": 0, - "touches": 12, - "ask_backs": 6, - "unanswerable": 4, - "asked": [ - { - "state": "open", - "button": "Approve", - "question": "What is your company registration number?", - "answerable": false - }, - { - "state": "open", - "button": "Decline", - "question": "What is your company registration number and insurance provider details?", - "answerable": false - }, - { - "state": "open", - "button": "Approve", - "question": "Has the company submitted the required insurance certificates and signed the standard subcontractor agreement?", - "answerable": true - }, - { - "state": "open", - "button": "Approve", - "question": "Do you have a valid and current CISRS card for the operatives assigned to Nordvik Bygg projects?", - "answerable": false - }, - { - "state": "open", - "button": "Decline", - "question": "What is the company's registration number?", - "answerable": false - }, - { - "state": "open", - "button": "Approve", - "question": "Do you have a valid and current scaffolding-specific certification (e.g., PASMA, CISRS) or relevant trade accreditation for the work you perform?", - "answerable": true - } - ], - "buttons": { - "open -> Approve": [ - 4, - 4 - ], - "open -> Decline": [ - 2, - 2 - ] - }, - "stuck_at": [], - "misroutes": [], - "abandon_reasons": [] - }, - "survey-enquiry": { - "cases": 6, - "finished": 6, - "stuck": 0, - "misrouted": 0, - "abandoned": 0, - "touches": 20, - "ask_backs": 10, - "unanswerable": 8, - "asked": [ - { - "state": "open", - "button": "Quote sent", - "question": "Has Nordvik Bygg already provided a formal quote for this specific issue, or is this the first time a quote is being requested?", - "answerable": false - }, - { - "state": "quoted", - "button": "Won", - "question": "Has Nordvik Bygg already provided a formal quote for this specific issue, or is this the first time a quote is being requested?", - "answerable": false - }, - { - "state": "open", - "button": "Not for us", - "question": "What is the exact address of the building?", - "answerable": false - }, - { - "state": "open", - "button": "Quote sent", - "question": "Have you already received a quote or price estimate from Nordvik Bygg for this assessment?", - "answerable": false - }, - { - "state": "quoted", - "button": "Won", - "question": "Has a Nordvik Bygg representative already visited the site and provided a written assessment and cost estimate?", - "answerable": true - }, - { - "state": "open", - "button": "Quote sent", - "question": "Has Nordvik Bygg already inspected this property before, or is this the first time?", - "answerable": false - }, - { - "state": "quoted", - "button": "Won", - "question": "Can you please confirm if Nordvik Bygg has already inspected this property before, or is this the first time?", - "answerable": false - }, - { - "state": "open", - "button": "Not for us", - "question": "What is the address of the building?", - "answerable": false - }, - { - "state": "open", - "button": "Quote sent", - "question": "Is the building currently occupied or vacant?", - "answerable": true - }, - { - "state": "quoted", - "button": "Won", - "question": "Is the building currently occupied or vacant?", - "answerable": false - } - ], - "buttons": { - "open -> Not for us": [ - 2, - 2 - ], - "open -> Quote sent": [ - 4, - 4 - ], - "quoted -> Won": [ - 4, - 4 - ] - }, - "stuck_at": [], - "misroutes": [], - "abandon_reasons": [] - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-2026-09-21/simulation/b-with-surveyed/cases.jsonl b/vendor/trainer/runs/contractor-2026-09-21/simulation/b-with-surveyed/cases.jsonl deleted file mode 100644 index 97951dc..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/simulation/b-with-surveyed/cases.jsonl +++ /dev/null @@ -1,30 +0,0 @@ -{"persona":"housing-board-cracks","need":"survey-enquiry","run":0,"target":"won","record":{"address":"1200 Maple Avenue, Unit 4B, Springfield","email":"alex.ramirez@email.com","follow_up_1":{"answered":"We have a master key in the office, but the current caretaker is on leave until Tuesday. I can arrange access then, or you can coordinate with the building manager for an earlier time.","asked":"Do you have access to the building right now, or can you arrange for someone to let me in?"},"follow_up_2":{"answered":"The property manager is available on weekdays between 9am and 4pm. Please coordinate a specific time slot.","asked":"Are you or the building manager available to grant access to the property for a site visit?"},"follow_up_3":{"answered":"I can send a specific time slot for the site visit once you provide your availability. I typically request the building manager's preferred date and time, then confirm with the structural engineer's schedule before finalizing. I can usually accommodate a visit within 3-5 business days, depending on urgency and engineer availability.","asked":"Can you coordinate a specific time for a site visit that works for the building manager or property manager?"},"name":"Alex Ramirez","problem":"There are cracks running up the outside wall of our building. None of us know if it's serious. We just want someone qualified to come look at it and tell us what we're dealing with."},"states":["open","surveyed","quoted","won"],"pressed":["open -> Looked at the building","surveyed -> Quote sent","quoted -> Won"],"touches":6,"ask_backs":[{"state":"open","button":"Looked at the building","question":"Do you have access to the building right now, or can you arrange for someone to let me in?","answerable":true},{"state":"surveyed","button":"Quote sent","question":"Are you or the building manager available to grant access to the property for a site visit?","answerable":true},{"state":"quoted","button":"Won","question":"Can you coordinate a specific time for a site visit that works for the building manager or property manager?","answerable":true}],"outcome":{"outcome":"finished","detail":"won"}} -{"persona":"housing-board-cracks","need":"survey-enquiry","run":1,"target":"lost","record":{"address":"Our building, but I don't know the exact address","follow_up_1":{"answered":"I don't have it.","asked":"What is the exact address of the building?"},"name":"Anon","problem":"Cracks running up the outside wall. Don't know if serious."},"states":["open","lost"],"pressed":["open -> Not for us"],"touches":2,"ask_backs":[{"state":"open","button":"Not for us","question":"What is the exact address of the building?","answerable":false}],"outcome":{"outcome":"finished","detail":"lost"}} -{"persona":"housing-board-cracks","need":"survey-enquiry","run":2,"target":"won","record":{"address":"12 Maple Avenue, Apt 3B, Springfield","email":"mia.torres@email.com","follow_up_1":{"answered":"We are occupied. It's a mixed-use building with retail on the ground floor and apartments above. Nobody has moved out, and we're all still here hoping this isn't something catastrophic.","asked":"Is the building currently occupied or vacant?"},"follow_up_2":{"answered":"I don't have a calendar or scheduling system. You'll need to check the voicemail or ask the office staff for available slots.","asked":"Can you provide a convenient time for a site visit?"},"follow_up_3":{"answered":"Yes, I have a convenient time tomorrow afternoon after 2 PM. Please send someone qualified to assess the structural integrity of the building.","asked":"Do you have a convenient time for a site visit?"},"name":"Mia Torres","problem":"There are significant cracks running up the exterior wall of our building. The masonry appears to be deteriorating, and we are unsure if this indicates structural failure or something less serious. We need a qualified professional to assess the cause and provide a report on the severity and necessary repairs."},"states":["open","surveyed","quoted","won"],"pressed":["open -> Looked at the building","surveyed -> Quote sent","quoted -> Won"],"touches":6,"ask_backs":[{"state":"open","button":"Looked at the building","question":"Is the building currently occupied or vacant?","answerable":true},{"state":"surveyed","button":"Quote sent","question":"Can you provide a convenient time for a site visit?","answerable":false},{"state":"quoted","button":"Won","question":"Do you have a convenient time for a site visit?","answerable":true}],"outcome":{"outcome":"finished","detail":"won"}} -{"persona":"homeowner-leaking-roof","need":"survey-enquiry","run":0,"target":"won","record":{"address":"1234 Pine Street, Apartment 5B, Atlanta, GA 30309","email":"spike@southernliving.com","follow_up_1":{"answered":"No, I don't have access right now. I work full-time and the building is locked. I can do evenings or weekends if that works.","asked":"Do you have access to the building right now, or would you need to schedule an appointment?"},"follow_up_2":{"answered":"I'm at work during the day, so a morning appointment would be best.","asked":"Could you grant access to the building or schedule an appointment for us to inspect the leak?"},"follow_up_3":{"answered":"Yes, that works. I'll ensure someone is there.","asked":"Can you grant access to the building for an inspection during a morning appointment?"},"name":"Water's coming through the ceiling every time it rains. I don't know if it's the roof or something else, I just want someone to come out and have a look before it gets worse.","problem":"Water is leaking through the ceiling every time it rains. I'm not sure if it's the roof or something else. Need someone to inspect it before the damage gets worse."},"states":["open","surveyed","quoted","won"],"pressed":["open -> Looked at the building","surveyed -> Quote sent","quoted -> Won"],"touches":6,"ask_backs":[{"state":"open","button":"Looked at the building","question":"Do you have access to the building right now, or would you need to schedule an appointment?","answerable":true},{"state":"surveyed","button":"Quote sent","question":"Could you grant access to the building or schedule an appointment for us to inspect the leak?","answerable":true},{"state":"quoted","button":"Won","question":"Can you grant access to the building for an inspection during a morning appointment?","answerable":true}],"outcome":{"outcome":"finished","detail":"won"}} -{"persona":"homeowner-leaking-roof","need":"survey-enquiry","run":1,"target":"lost","record":{"address":"Unknown address","email":"unknown@domain.com","follow_up_1":{"answered":"I don't have that info.","asked":"What is the address of the building?"},"name":"Water's coming through the ceiling every time it rains. I don't know if it's the roof or something else, I just want someone to come out and have a look before it gets worse.","problem":"Water leaking through ceiling during rain. Need inspection to determine if roof or other issue."},"states":["open","lost"],"pressed":["open -> Not for us"],"touches":2,"ask_backs":[{"state":"open","button":"Not for us","question":"What is the address of the building?","answerable":false}],"outcome":{"outcome":"finished","detail":"lost"}} -{"persona":"homeowner-leaking-roof","need":"survey-enquiry","run":2,"target":"won","record":{"address":"37 Orchard Lane, Apartment 4B, Southhill","email":"not_sharing@protonmail.com","follow_up_1":{"answered":"212 Oakridge Avenue, Apartment 4B","asked":"Could you confirm the exact address of the building, including the street number and apartment/unit number?"},"follow_up_2":{"answered":"I don't have the exact address or unit number written down in front of me, but I know the building is on Maple Avenue and it's the third floor on the left side.","asked":"Can you confirm the exact address of the building, including the street number and apartment/unit number?"},"follow_up_3":{"answered":"123 Maple Avenue, Apt 4B","asked":"Can you provide the exact street number and apartment/unit number for the address?"},"name":"Water's coming through the ceiling every time it rains. I don't know if it's the roof or something else, I just want someone to come out and have a look before it gets worse.","problem":"Water's coming through the ceiling every time it rains. I don't know if it's the roof or something else, I just want someone to come out and have a look before it gets worse."},"states":["open","surveyed","quoted","won"],"pressed":["open -> Looked at the building","surveyed -> Quote sent","quoted -> Won"],"touches":6,"ask_backs":[{"state":"open","button":"Looked at the building","question":"Could you confirm the exact address of the building, including the street number and apartment/unit number?","answerable":true},{"state":"surveyed","button":"Quote sent","question":"Can you confirm the exact address of the building, including the street number and apartment/unit number?","answerable":false},{"state":"quoted","button":"Won","question":"Can you provide the exact street number and apartment/unit number for the address?","answerable":true}],"outcome":{"outcome":"finished","detail":"won"}} -{"persona":"homeowner-extension","need":"build-price-enquiry","run":0,"target":"won","record":{"address":"42 Maple Street, Unit 3B, Portland, OR 97201","email":"sarah.chen@email.com","follow_up_1":{"answered":"Go ahead. I'm expecting you.","asked":"Can I have your permission to visit the property at 42 Maple Street, Unit 3B, Portland, OR 97201 to take measurements and assess the existing structure?"},"follow_up_2":{"answered":"Site visit is mandatory. I need to verify ceiling height, roof pitch, and load-bearing walls before drawing anything.","asked":"Is the owner available for a site visit to take measurements and assess the existing structure?"},"follow_up_3":{"answered":"No, they haven't signed the contract or submitted the deposit.","asked":"Has the owner signed the contract and submitted the deposit?"},"name":"Sarah Chen","project":"Addition of a 24' x 16' room above the existing garage. Two-story design with dormer windows. Open floor plan living area with master suite. Budget range: $250,000 - $350,000. Current garage to be converted to workshop/storage.","timeframe":"Within a year"},"states":["open","surveyed","quoted","won"],"pressed":["open -> Looked at the building","surveyed -> Quote sent","quoted -> Won"],"touches":6,"ask_backs":[{"state":"open","button":"Looked at the building","question":"Can I have your permission to visit the property at 42 Maple Street, Unit 3B, Portland, OR 97201 to take measurements and assess the existing structure?","answerable":true},{"state":"surveyed","button":"Quote sent","question":"Is the owner available for a site visit to take measurements and assess the existing structure?","answerable":true},{"state":"quoted","button":"Won","question":"Has the owner signed the contract and submitted the deposit?","answerable":false}],"outcome":{"outcome":"finished","detail":"won"}} -{"persona":"homeowner-extension","need":"build-price-enquiry","run":1,"target":"lost","record":{"address":"123 Maple St, Anytown","email":"quickquote@example.com","follow_up_1":{"answered":"Yes, we still want to do it.","asked":"Is this project still a possibility, or have you already decided not to proceed?"},"name":"Quick Quote Bot","project":"Room addition above garage","timeframe":"Just exploring"},"states":["open","lost"],"pressed":["open -> Not for us"],"touches":2,"ask_backs":[{"state":"open","button":"Not for us","question":"Is this project still a possibility, or have you already decided not to proceed?","answerable":true}],"outcome":{"outcome":"finished","detail":"lost"}} -{"persona":"homeowner-extension","need":"build-price-enquiry","run":2,"target":"won","record":{"address":"123 Maple Street, Anytown, State, 12345","email":"jane.smith@email.com","follow_up_1":{"answered":null,"asked":"What is the current condition of the existing garage structure and the site (soil, grade, access) that would need to be surveyed?"},"follow_up_2":{"answered":"I don't have access to your property or the garage. You'll need to hire a surveyor or structural engineer to document the existing conditions, soil, and grade before any drawings can be done.","asked":"Can you provide the current condition of the existing garage structure and the site (soil, grade, access) that would need to be surveyed?"},"follow_up_3":{"answered":"No, we haven't hired a surveyor or structural engineer yet. We were hoping you could handle the design and coordinate those as part of the project, or at least tell us who to call and what order things need to happen in.","asked":"Has the surveyor or structural engineer been hired and completed the documentation of the existing conditions, soil, and grade?"},"name":"Jane Smith","project":"Addition of a 20'x24' room above existing single-car garage. Client has conceptual sketches but requires full architectural drawings, municipal permit set, and cost estimation for structural and MEP integration.","timeframe":"Within a year"},"states":["open","surveyed","quoted","won"],"pressed":["open -> Looked at the building","surveyed -> Quote sent","quoted -> Won"],"touches":6,"ask_backs":[{"state":"open","button":"Looked at the building","question":"What is the current condition of the existing garage structure and the site (soil, grade, access) that would need to be surveyed?","answerable":true},{"state":"surveyed","button":"Quote sent","question":"Can you provide the current condition of the existing garage structure and the site (soil, grade, access) that would need to be surveyed?","answerable":false},{"state":"quoted","button":"Won","question":"Has the surveyor or structural engineer been hired and completed the documentation of the existing conditions, soil, and grade?","answerable":true}],"outcome":{"outcome":"finished","detail":"won"}} -{"persona":"owner-basement-conversion","need":"build-price-enquiry","run":0,"target":"won","record":{"address":"123 Maple Street, Apt 4B, Cityville, CA 90210","email":"info@basementflat.arch","follow_up_1":{"answered":"Currently unoccupied, but the lock needs changing before access can be granted.","asked":"Can we proceed with a site visit, or is the basement currently occupied/locked?"},"follow_up_2":{"answered":"No site visit has been conducted yet.","asked":"Has the site been visited to assess the current condition and verify the lock status?"},"follow_up_3":{"answered":"No, but I have the original blueprints and a full condition report from the previous owner.","asked":"Has a site visit been conducted to verify the lock status and current condition of the basement?"},"name":"I. Architect","project":"Conversion of basement into a residential flat with separate entrance, kitchenette, bathroom, and bedroom. Requires architectural drawings, planning permit application, and detailed cost estimate for client approval prior to commencement.","timeframe":"Within a year"},"states":["open","surveyed","quoted","won"],"pressed":["open -> Looked at the building","surveyed -> Quote sent","quoted -> Won"],"touches":6,"ask_backs":[{"state":"open","button":"Looked at the building","question":"Can we proceed with a site visit, or is the basement currently occupied/locked?","answerable":true},{"state":"surveyed","button":"Quote sent","question":"Has the site been visited to assess the current condition and verify the lock status?","answerable":false},{"state":"quoted","button":"Won","question":"Has a site visit been conducted to verify the lock status and current condition of the basement?","answerable":false}],"outcome":{"outcome":"finished","detail":"won"}} -{"persona":"owner-basement-conversion","need":"build-price-enquiry","run":1,"target":"lost","record":{"address":"123 Basement Lane","email":"me@basement.com","follow_up_1":{"answered":"Still exploring. Let's get the ball rolling.","asked":"Has your project moved forward, or would you still like to explore options?"},"name":"Me","project":"Convert basement into a flat","timeframe":"Just exploring"},"states":["open","lost"],"pressed":["open -> Not for us"],"touches":2,"ask_backs":[{"state":"open","button":"Not for us","question":"Has your project moved forward, or would you still like to explore options?","answerable":true}],"outcome":{"outcome":"finished","detail":"lost"}} -{"persona":"owner-basement-conversion","need":"build-price-enquiry","run":2,"target":"won","record":{"address":"42 Maple Crescent, Basingstoke, RG24 9JX","email":"sarah.jenkins@email.com","follow_up_1":{"answered":"No, I don't have the title deed. I'm just looking to turn the basement into a flat, so I haven't sorted out the paperwork yet.","asked":"Do you have a valid title deed or proof of ownership for the property at 42 Maple Crescent, RG24 9JX?"},"follow_up_2":{"answered":"No, I do not have a valid title deed or proof of ownership for the property at 42 Maple Crescent, RG24 9JX. I'm currently renting the basement or looking to convert it, but I haven't secured the legal paperwork yet.","asked":"Do you have a valid title deed or proof of ownership for the property at 42 Maple Crescent, RG24 9JX?"},"follow_up_3":{"answered":"No, I don't have a valid title deed or proof of ownership for the property at 42 Maple Crescent, RG24 9JX. I'm hoping to get one sorted before I proceed with the basement conversion, but right now I'm just the person wanting to turn it into a flat. I need to sort out the legal paperwork first.","asked":"Do you have a valid title deed or proof of ownership for the property at 42 Maple Crescent, RG24 9JX?"},"name":"Sarah Jenkins","project":"Convert existing basement into a one-bedroom flat with kitchenette, bathroom, and living area. Requires full architectural drawings, building regulation approval, and planning permission. Need detailed cost breakdown for structural work, MEP services, and finishes.","timeframe":"Within a year"},"states":["open","surveyed","quoted","won"],"pressed":["open -> Looked at the building","surveyed -> Quote sent","quoted -> Won"],"touches":6,"ask_backs":[{"state":"open","button":"Looked at the building","question":"Do you have a valid title deed or proof of ownership for the property at 42 Maple Crescent, RG24 9JX?","answerable":false},{"state":"surveyed","button":"Quote sent","question":"Do you have a valid title deed or proof of ownership for the property at 42 Maple Crescent, RG24 9JX?","answerable":true},{"state":"quoted","button":"Won","question":"Do you have a valid title deed or proof of ownership for the property at 42 Maple Crescent, RG24 9JX?","answerable":true}],"outcome":{"outcome":"finished","detail":"won"}} -{"persona":"electrician-more-work","need":"subcontractor-application","run":0,"target":"approved","record":{"company_name":"We're a small electrical firm","contact_email":"contact@weareaelectricalfirm.com","follow_up_1":{"answered":"We don't have a company registration number.","asked":"What is your company registration number?"},"insurance":"We have current public liability cover","registration_number":"We are registered but number not to hand right now","trade":"Electrical","trade_approval":""},"states":["open","approved"],"pressed":["open -> Approve"],"touches":2,"ask_backs":[{"state":"open","button":"Approve","question":"What is your company registration number?","answerable":false}],"outcome":{"outcome":"finished","detail":"approved"}} -{"persona":"electrician-more-work","need":"subcontractor-application","run":1,"target":"declined","record":{"company_name":"We're a small electrical firm and we'd like to pick up more building work. We're registered and insured, just need to know who to talk to about getting on your books.","contact_email":"email@example.com","follow_up_1":{"answered":"I don't know what you're talking about.","asked":"What is your company registration number and insurance provider details?"},"insurance":"Registered and insured, just need to know who to talk to about getting on your books.","registration_number":"Registered and insured, just need to know who to talk to about getting on your books.","trade":"Electrical","trade_approval":""},"states":["open","declined"],"pressed":["open -> Decline"],"touches":2,"ask_backs":[{"state":"open","button":"Decline","question":"What is your company registration number and insurance provider details?","answerable":false}],"outcome":{"outcome":"finished","detail":"declined"}} -{"persona":"electrician-more-work","need":"subcontractor-application","run":2,"target":"approved","record":{"company_name":"C&W Electrical Services Ltd","contact_email":"info@cwelectricalservices.co.uk","follow_up_1":{"answered":"Yes, we have submitted all required insurance certificates and signed the standard subcontractor agreement. We're ready to go.","asked":"Has the company submitted the required insurance certificates and signed the standard subcontractor agreement?"},"insurance":"Public liability insurance held with Hiscox policy number HL-987654, cover limit £2,000,000. Electrical indemnity insurance with Allianz policy number AL-345321, cover limit £1,000,000.","registration_number":"OC345678","trade":"Electrical","trade_approval":"NICEIC approved contractor since 2015"},"states":["open","approved"],"pressed":["open -> Approve"],"touches":2,"ask_backs":[{"state":"open","button":"Approve","question":"Has the company submitted the required insurance certificates and signed the standard subcontractor agreement?","answerable":true}],"outcome":{"outcome":"finished","detail":"approved"}} -{"persona":"scaffolding-firm","need":"subcontractor-application","run":0,"target":"approved","record":{"company_name":"QuickSet Scaffolding Ltd","contact_email":"admin@quickset-scaffold.co.uk","follow_up_1":{"answered":"We are a scaffolding company, not a construction site with assigned operatives. We hire qualified scaffolders as needed, but we do not have CISRS cards for our own staff.","asked":"Do you have a valid and current CISRS card for the operatives assigned to Nordvik Bygg projects?"},"insurance":"Public Liability £5M / Employers Liability £10M","registration_number":"12345678","trade":"Scaffolding","trade_approval":"CISRS Registered - Ref: CIS/2024/001"},"states":["open","approved"],"pressed":["open -> Approve"],"touches":2,"ask_backs":[{"state":"open","button":"Approve","question":"Do you have a valid and current CISRS card for the operatives assigned to Nordvik Bygg projects?","answerable":false}],"outcome":{"outcome":"finished","detail":"approved"}} -{"persona":"scaffolding-firm","need":"subcontractor-application","run":1,"target":"declined","record":{"company_name":"We put up and take down scaffolding for building sites.","contact_email":"contact@scaffoldingco.uk","follow_up_1":{"answered":"I don't have the registration number.","asked":"What is the company's registration number?"},"insurance":"We have public liability cover, policy number available on request.","registration_number":"Would prefer not to share this publicly.","trade":"Scaffolding"},"states":["open","declined"],"pressed":["open -> Decline"],"touches":2,"ask_backs":[{"state":"open","button":"Decline","question":"What is the company's registration number?","answerable":false}],"outcome":{"outcome":"finished","detail":"declined"}} -{"persona":"scaffolding-firm","need":"subcontractor-application","run":2,"target":"approved","record":{"company_name":"Rapid Response Scaffolding Ltd","contact_email":"admin@rapidresponse-scaffold.co.uk","follow_up_1":{"answered":"No, I'm just a person writing a message on your behalf. You'll need to check with the actual scaffolding company about their certifications.","asked":"Do you have a valid and current scaffolding-specific certification (e.g., PASMA, CISRS) or relevant trade accreditation for the work you perform?"},"insurance":"Public Liability £5M; Employers Liability £10M; Certificate current to 31/12/2025","registration_number":"OC327489","trade":"Scaffolding","trade_approval":"N/A"},"states":["open","approved"],"pressed":["open -> Approve"],"touches":2,"ask_backs":[{"state":"open","button":"Approve","question":"Do you have a valid and current scaffolding-specific certification (e.g., PASMA, CISRS) or relevant trade accreditation for the work you perform?","answerable":true}],"outcome":{"outcome":"finished","detail":"approved"}} -{"persona":"apprentice-asking","need":"job-application","run":0,"target":"hired","record":{"follow_up_1":{"answered":"206-555-0199","asked":"What is your phone number?"},"follow_up_2":{"answered":"I'm applying for an apprentice position.","asked":"Which specific carpentry role are you applying for (e.g., apprentice, journeyman, project lead)?"},"message":"I'm in my second year as an apprentice carpenter and looking for a firm that'll keep me on after the apprenticeship. Are you taking anyone on right now?","name":"Jordan","role":"Apprentice carpenter"},"states":["open","interviewing","hired"],"pressed":["open -> Invite to interview","interviewing -> Hire"],"touches":4,"ask_backs":[{"state":"open","button":"Invite to interview","question":"What is your phone number?","answerable":true},{"state":"interviewing","button":"Hire","question":"Which specific carpentry role are you applying for (e.g., apprentice, journeyman, project lead)?","answerable":true}],"outcome":{"outcome":"finished","detail":"hired"}} -{"persona":"apprentice-asking","need":"job-application","run":1,"target":"declined","record":{"email":"","follow_up_1":{"answered":"I don't know it.","asked":"What is your email address?"},"message":"I'm in my second year as an apprentice carpenter and looking for a firm that'll keep me on after.","name":"I'm in my second year as an apprentice carpenter and looking for a firm that'll keep me on after.","role":"Apprentice carpenter"},"states":["open","declined"],"pressed":["open -> Decline"],"touches":2,"ask_backs":[{"state":"open","button":"Decline","question":"What is your email address?","answerable":false}],"outcome":{"outcome":"finished","detail":"declined"}} -{"persona":"apprentice-asking","need":"job-application","run":2,"target":"hired","record":{"follow_up_1":{"answered":"it's me@email.com","asked":"What is your email address?"},"follow_up_2":{"answered":"I'm not taking anyone on right now. I'm finishing up a job and sorting out my own schedule for next season. I don't have the time to train a new apprentice while I'm trying to keep my own crew running. If you're serious, ask me again in a few months when things settle down.","asked":"Do you want to proceed with hiring this applicant?"},"message":"I'm currently in my second year of carpentry apprenticeship and looking for a firm that will take me on permanently after I complete my training. I have hands-on experience with framing, finish work, and tool maintenance, and I'm eager to find a workplace where I can grow long-term.","name":"I'm in my second year as an apprentice carpenter and looking for a firm that'll keep me on after.","role":"Apprentice carpenter"},"states":["open","interviewing","hired"],"pressed":["open -> Invite to interview","interviewing -> Hire"],"touches":4,"ask_backs":[{"state":"open","button":"Invite to interview","question":"What is your email address?","answerable":true},{"state":"interviewing","button":"Hire","question":"Do you want to proceed with hiring this applicant?","answerable":false}],"outcome":{"outcome":"finished","detail":"hired"}} -{"persona":"experienced-carpenter","need":"job-application","run":0,"target":"hired","record":{"email":"alex.miller@example.com","follow_up_1":{"answered":"925-555-0198","asked":"What is your phone number?"},"follow_up_2":{"answered":"I'm available on the 15th, but I need to know the start time. I have a morning job that day, so I can only make it in after 10 AM.","asked":"Can you come in for an interview on [Date]?"},"message":"Eight years experience specializing in older buildings. I have hand tools for precise joinery and familiarity with period materials. Available for site work.","name":"Alex Miller","role":"Carpenter"},"states":["open","interviewing","hired"],"pressed":["open -> Invite to interview","interviewing -> Hire"],"touches":4,"ask_backs":[{"state":"open","button":"Invite to interview","question":"What is your phone number?","answerable":true},{"state":"interviewing","button":"Hire","question":"Can you come in for an interview on [Date]?","answerable":true}],"outcome":{"outcome":"finished","detail":"hired"}} -{"persona":"experienced-carpenter","need":"job-application","run":1,"target":"declined","record":{"email":"eli.carpenter8@protonmail.com","message":"Eight years in older buildings. Prefer hand tools, lime mortar, and keeping things standing.","name":"Eli","role":"Carpenter"},"states":["open","declined"],"pressed":["open -> Decline"],"touches":1,"ask_backs":[],"outcome":{"outcome":"finished","detail":"declined"}} -{"persona":"experienced-carpenter","need":"job-application","run":2,"target":"hired","record":{"email":"james.miller@example.com","follow_up_1":{"answered":"I'm a carpenter, not a citizen. I just have a passport.","asked":"Do you have the legal right to work in the country where Nordvik Bygg operates?"},"message":"I'm James, an experienced carpenter with eight years specializing in older buildings. I have a strong background in structural restoration, period joinery, and working with reclaimed materials. I'm looking for a position where I can apply my skills to heritage projects and continue learning from experienced craftsmen.","name":"James Miller","role":"Carpenter"},"states":["open","interviewing","hired"],"pressed":["open -> Invite to interview","interviewing -> Hire"],"touches":3,"ask_backs":[{"state":"interviewing","button":"Hire","question":"Do you have the legal right to work in the country where Nordvik Bygg operates?","answerable":true}],"outcome":{"outcome":"finished","detail":"hired"}} -{"persona":"crew-loose-scaffold","need":"report-site-issue","run":0,"target":"closed","record":{"details":"Board feels loose under weight; gloves on, no time for detailed investigation","follow_up_1":{"answered":"First name's Mark, I'm a labourer on site. No time for faffing about.","asked":"What is your full name and role (e.g., employee or subcontractor) so I can assign the follow-up correctly?"},"follow_up_2":{"answered":"the crew member who flagged it","asked":"Which person marked this as fixed: the crew member who flagged it, or the subcontractor's worker?"},"issue_type":"Hazard","location":"Scaffold walkway near Zone 3"},"states":["open","in_hand","closed"],"pressed":["open -> Look into it","in_hand -> Mark fixed"],"touches":4,"ask_backs":[{"state":"open","button":"Look into it","question":"What is your full name and role (e.g., employee or subcontractor) so I can assign the follow-up correctly?","answerable":true},{"state":"in_hand","button":"Mark fixed","question":"Which person marked this as fixed: the crew member who flagged it, or the subcontractor's worker?","answerable":true}],"outcome":{"outcome":"finished","detail":"closed"}} -{"persona":"crew-loose-scaffold","need":"report-site-issue","run":1,"target":"closed","record":{"details":"Board feels loose under weight, gloves on, needs checking","follow_up_1":{"answered":"No, I was stepping on it.","asked":"Has a visual inspection of the scaffold board near main entrance been completed?"},"follow_up_2":{"answered":"No, I just noticed it.","asked":"Has a visual inspection of the scaffold board near main entrance been completed?"},"issue_type":"Hazard","location":"Scaffold board near main entrance"},"states":["open","in_hand","closed"],"pressed":["open -> Look into it","in_hand -> Mark fixed"],"touches":4,"ask_backs":[{"state":"open","button":"Look into it","question":"Has a visual inspection of the scaffold board near main entrance been completed?","answerable":false},{"state":"in_hand","button":"Mark fixed","question":"Has a visual inspection of the scaffold board near main entrance been completed?","answerable":false}],"outcome":{"outcome":"finished","detail":"closed"}} -{"persona":"crew-loose-scaffold","need":"report-site-issue","run":2,"target":"closed","record":{"details":"Scaffold board feels loose and unstable under foot. Gloves on, time limited. Board not sitting right, risk of slip or fall if stepped on. Flagging immediately to prevent injury.","follow_up_1":{"answered":"Scaffold bay 4, Level 3. The board is over the walkway. It's still in use, no cordon up yet. I just stepped on it and it dipped.","asked":"Can you confirm the exact location of the scaffold board issue? For example, which specific scaffold bay or level, and the current status of the area (e.g., is the scaffold still in use or has it been cordoned off)?"},"follow_up_2":{"answered":"Board is still up, no cordon up yet. I stepped on it to test it, wobbled a bit, then got off. Didn't tie it off or rope it off because I was in a rush and just wanted to warn the boss. Gonna go back with proper gear later to fix it for real.","asked":"Has the scaffold board been secured or removed, and has the area been cordoned off to prevent further use?"},"issue_type":"Hazard","location":"Scaffold area, near main entrance"},"states":["open","in_hand","closed"],"pressed":["open -> Look into it","in_hand -> Mark fixed"],"touches":4,"ask_backs":[{"state":"open","button":"Look into it","question":"Can you confirm the exact location of the scaffold board issue? For example, which specific scaffold bay or level, and the current status of the area (e.g., is the scaffold still in use or has it been cordoned off)?","answerable":true},{"state":"in_hand","button":"Mark fixed","question":"Has the scaffold board been secured or removed, and has the area been cordoned off to prevent further use?","answerable":true}],"outcome":{"outcome":"finished","detail":"closed"}} -{"persona":"subcontractor-wrong-delivery","need":"report-site-issue","run":0,"target":"closed","record":{"details":"Delivery this morning arrived with standard fiberglass batts instead of the specified mineral wool board. Packaging labels match the delivery note but not the structural drawings. Awaiting confirmation on whether to reject the shipment or hold for exchange.","follow_up_1":{"answered":"Counted 25 rolls of fiberglass batts against the spec for mineral wool. I only noticed because I cross-referenced the truck tag against the manifest before unloading.","asked":"What is the quantity of wrong materials delivered?"},"follow_up_2":{"answered":"Left on the truck. I haven't unloaded it yet, waiting for clarification before proceeding.","asked":"How has the wrong material been handled since delivery? (e.g., moved to quarantine, used in work, left in the storage area)"},"issue_type":"Wrong materials delivered","location":"Storage area, Zone B"},"states":["open","in_hand","closed"],"pressed":["open -> Look into it","in_hand -> Mark fixed"],"touches":4,"ask_backs":[{"state":"open","button":"Look into it","question":"What is the quantity of wrong materials delivered?","answerable":true},{"state":"in_hand","button":"Mark fixed","question":"How has the wrong material been handled since delivery? (e.g., moved to quarantine, used in work, left in the storage area)","answerable":true}],"outcome":{"outcome":"finished","detail":"closed"}} -{"persona":"subcontractor-wrong-delivery","need":"report-site-issue","run":1,"target":"closed","record":{"details":"Wrong type of insulation delivered this morning. Not what was on the drawings.","follow_up_1":{"answered":"No, the wrong insulation is still on site.","asked":"Has the wrong insulation been removed or replaced with the correct type?"},"issue_type":"Wrong materials delivered","location":"Main entrance staging area"},"states":["open","in_hand","closed"],"pressed":["open -> Look into it","in_hand -> Mark fixed"],"touches":3,"ask_backs":[{"state":"in_hand","button":"Mark fixed","question":"Has the wrong insulation been removed or replaced with the correct type?","answerable":false}],"outcome":{"outcome":"finished","detail":"closed"}} -{"persona":"subcontractor-wrong-delivery","need":"report-site-issue","run":2,"target":"closed","record":{"details":"The delivery arrived this morning. I was expecting the blue fiberglass batts shown on the project drawings, but the delivery contained mineral wool boards instead. The packaging was labeled for a different job number. I stopped the crew from offloading it. Someone needs to verify the correct material before it gets installed, as the R-value and fit are different from what's specified. I don't have the delivery ticket number handy, but the driver said it was a substitute from the supplier's stock.","follow_up_1":{"answered":"Yes, I have the delivery ticket number from the manifest on the pallet, but the supplier's contact details are just the generic office number on the invoice, not a specific representative. I can read the ticket number off the label if you need me to verify the substitution details.","asked":"Do you have the delivery ticket number or the supplier's contact details to verify the substitution?"},"follow_up_2":{"answered":"I don't have the delivery ticket or the label in front of me right now, so I can't read the number off the pallet. I need someone to physically check the pallet tag or look up the shipment record in the system to get that number and confirm what was actually delivered versus what was specified on the drawings.","asked":"Can you read the delivery ticket number from the label on the pallet to verify the substitution details?"},"issue_type":"Wrong materials delivered","location":"Warehouse staging area, Bay 4"},"states":["open","in_hand","closed"],"pressed":["open -> Look into it","in_hand -> Mark fixed"],"touches":4,"ask_backs":[{"state":"open","button":"Look into it","question":"Do you have the delivery ticket number or the supplier's contact details to verify the substitution?","answerable":true},{"state":"in_hand","button":"Mark fixed","question":"Can you read the delivery ticket number from the label on the pallet to verify the substitution details?","answerable":false}],"outcome":{"outcome":"finished","detail":"closed"}} diff --git a/vendor/trainer/runs/contractor-2026-09-21/simulation/b-with-surveyed/model.json b/vendor/trainer/runs/contractor-2026-09-21/simulation/b-with-surveyed/model.json deleted file mode 100644 index 28fb0ea..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/simulation/b-with-surveyed/model.json +++ /dev/null @@ -1,720 +0,0 @@ -{ - "buckets": { - "applicants": { - "desks": [ - { - "group": "project_managers", - "moves": [ - { - "from": "open", - "label": "Invite to interview", - "to": "interviewing" - }, - { - "from": "open", - "label": "Decline", - "to": "declined" - }, - { - "from": "interviewing", - "label": "Hire", - "to": "hired" - }, - { - "from": "interviewing", - "label": "Decline", - "to": "declined" - } - ], - "page": "/desk" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "interviewing": [ - "hired", - "declined" - ], - "open": [ - "interviewing", - "declined" - ] - } - }, - "enquiries": { - "desks": [ - { - "group": "project_managers", - "moves": [ - { - "from": "open", - "label": "Looked at the building", - "to": "surveyed" - }, - { - "from": "surveyed", - "label": "Quote sent", - "to": "quoted" - }, - { - "from": "surveyed", - "label": "Not worth quoting", - "to": "lost" - }, - { - "from": "open", - "label": "Not for us", - "to": "lost" - }, - { - "from": "quoted", - "label": "Won", - "to": "won" - }, - { - "from": "quoted", - "label": "Lost", - "to": "lost" - } - ], - "page": "/desk" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "surveyed", - "lost" - ], - "quoted": [ - "won", - "lost" - ], - "surveyed": [ - "quoted", - "lost" - ] - } - }, - "site_issues": { - "desks": [ - { - "group": "safety_officer", - "moves": [ - { - "from": "open", - "label": "Look into it", - "to": "in_hand" - }, - { - "from": "in_hand", - "label": "Mark fixed", - "to": "closed" - } - ], - "page": "/safety" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "in_hand": [ - "closed" - ], - "open": [ - "in_hand" - ] - } - }, - "subcontractors": { - "desks": [ - { - "group": "project_managers", - "moves": [ - { - "from": "open", - "label": "Ask for missing papers", - "to": "awaiting_papers" - }, - { - "from": "open", - "label": "Approve", - "to": "approved" - }, - { - "from": "open", - "label": "Decline", - "to": "declined" - }, - { - "from": "awaiting_papers", - "label": "Approve", - "to": "approved" - }, - { - "from": "awaiting_papers", - "label": "Decline", - "to": "declined" - } - ], - "page": "/desk" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "awaiting_papers": [ - "approved", - "declined" - ], - "open": [ - "awaiting_papers", - "approved", - "declined" - ] - } - } - }, - "needs": [ - { - "done_when": [ - "won", - "lost" - ], - "enters_as": null, - "handled_by": "project_managers", - "id": "survey-enquiry", - "lands_in": "enquiries", - "steps": [ - { - "alternative": "Get someone to look at a building", - "expect": [ - "Get someone to look at a building" - ], - "fields": [ - { - "label": "Your name", - "name": "name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Email", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Address of the building", - "name": "address", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What's wrong", - "name": "problem", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "For housing boards and private owners with a problem in a building who want us to come and take a look.", - "name": "Get someone to look at a building" - }, - { - "description": "For owners who already know what they want built and need drawings, a permit application and a price.", - "name": "Get a price for a build" - }, - { - "description": "For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.", - "name": "Join our subcontractor list" - }, - { - "description": "For carpenters and apprentices who want to know if we're hiring.", - "name": "Ask about working with us" - }, - { - "description": "For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials.", - "name": "Report something from site" - } - ], - "page": "/", - "question": "What brings you here?" - } - ], - "success": [ - "won" - ], - "wants": "someone from Nordvik Bygg to come and look at the building and tell them what a fix would cost", - "who": "a housing board member or private owner with a problem in a building" - }, - { - "done_when": [ - "won", - "lost" - ], - "enters_as": null, - "handled_by": "project_managers", - "id": "build-price-enquiry", - "lands_in": "enquiries", - "steps": [ - { - "alternative": "Get a price for a build", - "expect": [ - "Get a price for a build" - ], - "fields": [ - { - "label": "Your name", - "name": "name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Email", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Address of the site", - "name": "address", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What you want built", - "name": "project", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "When you'd like to start", - "name": "timeframe", - "optional": false, - "options": [ - "As soon as possible", - "Within a year", - "Just exploring" - ], - "type": "select" - } - ], - "options": [ - { - "description": "For housing boards and private owners with a problem in a building who want us to come and take a look.", - "name": "Get someone to look at a building" - }, - { - "description": "For owners who already know what they want built and need drawings, a permit application and a price.", - "name": "Get a price for a build" - }, - { - "description": "For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.", - "name": "Join our subcontractor list" - }, - { - "description": "For carpenters and apprentices who want to know if we're hiring.", - "name": "Ask about working with us" - }, - { - "description": "For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials.", - "name": "Report something from site" - } - ], - "page": "/", - "question": "What brings you here?" - } - ], - "success": [ - "won" - ], - "wants": "drawings, a permit application and a price for the work", - "who": "an owner who already knows what they want built" - }, - { - "done_when": [ - "approved", - "declined" - ], - "enters_as": null, - "handled_by": "project_managers", - "id": "subcontractor-application", - "lands_in": "subcontractors", - "steps": [ - { - "alternative": "Join our subcontractor list", - "expect": [ - "Join our subcontractor list" - ], - "fields": [ - { - "label": "Company name", - "name": "company_name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Email", - "name": "contact_email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Trade", - "name": "trade", - "optional": false, - "options": [ - "Electrical", - "Plumbing", - "Scaffolding" - ], - "type": "select" - }, - { - "label": "Company registration number", - "name": "registration_number", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Insurance policy details", - "name": "insurance", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Trade approval reference", - "name": "trade_approval", - "optional": true, - "options": [], - "type": "text" - } - ], - "options": [ - { - "description": "For housing boards and private owners with a problem in a building who want us to come and take a look.", - "name": "Get someone to look at a building" - }, - { - "description": "For owners who already know what they want built and need drawings, a permit application and a price.", - "name": "Get a price for a build" - }, - { - "description": "For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.", - "name": "Join our subcontractor list" - }, - { - "description": "For carpenters and apprentices who want to know if we're hiring.", - "name": "Ask about working with us" - }, - { - "description": "For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials.", - "name": "Report something from site" - } - ], - "page": "/", - "question": "What brings you here?" - } - ], - "success": [ - "approved" - ], - "wants": "to get on Nordvik Bygg's list of subcontractors they call for work", - "who": "a trade firm doing electrical, plumbing or scaffolding work" - }, - { - "done_when": [ - "hired", - "declined" - ], - "enters_as": null, - "handled_by": "project_managers", - "id": "job-application", - "lands_in": "applicants", - "steps": [ - { - "alternative": "Ask about working with us", - "expect": [ - "Ask about working with us" - ], - "fields": [ - { - "label": "Your name", - "name": "name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Email", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "What you do", - "name": "role", - "optional": false, - "options": [ - "Carpenter", - "Apprentice carpenter", - "Other" - ], - "type": "select" - }, - { - "label": "Anything else we should know", - "name": "message", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "For housing boards and private owners with a problem in a building who want us to come and take a look.", - "name": "Get someone to look at a building" - }, - { - "description": "For owners who already know what they want built and need drawings, a permit application and a price.", - "name": "Get a price for a build" - }, - { - "description": "For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.", - "name": "Join our subcontractor list" - }, - { - "description": "For carpenters and apprentices who want to know if we're hiring.", - "name": "Ask about working with us" - }, - { - "description": "For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials.", - "name": "Report something from site" - } - ], - "page": "/", - "question": "What brings you here?" - } - ], - "success": [ - "hired" - ], - "wants": "to find out if Nordvik Bygg is hiring and put themselves forward", - "who": "a carpenter or apprentice looking for work" - }, - { - "done_when": [ - "closed" - ], - "enters_as": null, - "handled_by": "safety_officer", - "id": "report-site-issue", - "lands_in": "site_issues", - "steps": [ - { - "alternative": "Report something from site", - "expect": [ - "Report something from site" - ], - "fields": [ - { - "label": "What kind of issue", - "name": "issue_type", - "optional": false, - "options": [ - "Hazard", - "Near miss", - "Wrong materials delivered" - ], - "type": "select" - }, - { - "label": "Where on site", - "name": "location", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What happened", - "name": "details", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "For housing boards and private owners with a problem in a building who want us to come and take a look.", - "name": "Get someone to look at a building" - }, - { - "description": "For owners who already know what they want built and need drawings, a permit application and a price.", - "name": "Get a price for a build" - }, - { - "description": "For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.", - "name": "Join our subcontractor list" - }, - { - "description": "For carpenters and apprentices who want to know if we're hiring.", - "name": "Ask about working with us" - }, - { - "description": "For crew on site, ours or a subcontractor's, who've spotted a hazard, a near miss or the wrong materials.", - "name": "Report something from site" - } - ], - "page": "/", - "question": "What brings you here?" - } - ], - "success": [ - "closed" - ], - "wants": "to flag a hazard, a near miss or wrong materials fast, from their phone", - "who": "a crew member on site, ours or a subcontractor's" - }, - { - "done_when": [ - "won", - "lost" - ], - "enters_as": "project_managers", - "handled_by": "project_managers", - "id": "log-phone-enquiry", - "lands_in": "enquiries", - "steps": [ - { - "alternative": "Log this enquiry", - "expect": [ - "Log this enquiry" - ], - "fields": [ - { - "label": "Their name", - "name": "caller_name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Phone or email", - "name": "contact", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Address of the building", - "name": "address", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What they told you", - "name": "problem", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "How soon", - "name": "urgency", - "optional": false, - "options": [ - "This week", - "This month", - "No rush" - ], - "type": "select" - } - ], - "options": [ - { - "description": "", - "name": "Log this enquiry" - } - ], - "page": "/desk/phone-enquiry", - "question": "What did they tell you?" - } - ], - "success": [ - "won" - ], - "wants": "to get the enquiry into the system before it gets lost", - "who": "a project manager who just took a call, email or text about a building" - } - ], - "personas": [ - { - "id": "housing-board-cracks", - "need": "survey-enquiry", - "text": "There are cracks running up the outside wall of our building and none of us know if it's serious. We just want someone qualified to come look at it and tell us what we're dealing with." - }, - { - "id": "homeowner-leaking-roof", - "need": "survey-enquiry", - "text": "Water's coming through the ceiling every time it rains. I don't know if it's the roof or something else, I just want someone to come out and have a look before it gets worse." - }, - { - "id": "homeowner-extension", - "need": "build-price-enquiry", - "text": "We want to add a room above the garage. We know roughly what we want, we just need someone to draw it up, sort the paperwork with the municipality, and tell us what it will cost." - }, - { - "id": "owner-basement-conversion", - "need": "build-price-enquiry", - "text": "I'd like to turn the basement into a flat. Need drawings, the permit sorted, and a proper price before I commit to anything." - }, - { - "id": "electrician-more-work", - "need": "subcontractor-application", - "text": "We're a small electrical firm and we'd like to pick up more building work. We're registered and insured, just need to know who to talk to about getting on your books." - }, - { - "id": "scaffolding-firm", - "need": "subcontractor-application", - "text": "We put up and take down scaffolding for building sites. We'd like to be one of the firms you call when a job needs it." - }, - { - "id": "apprentice-asking", - "need": "job-application", - "text": "I'm in my second year as an apprentice carpenter and looking for a firm that'll keep me on after. Are you taking anyone on right now?" - }, - { - "id": "experienced-carpenter", - "need": "job-application", - "text": "I've been doing carpentry for eight years, mostly older buildings. Wondered if you had any openings on site." - }, - { - "id": "crew-loose-scaffold", - "need": "report-site-issue", - "text": "Noticed a scaffold board that's not sitting right, feels loose when you step on it. Wanted to flag it straight away before someone gets hurt, but I've got gloves on and no time for a long form." - }, - { - "id": "subcontractor-wrong-delivery", - "need": "report-site-issue", - "text": "The delivery this morning was the wrong type of insulation, not what was on the drawings. Someone needs to know before it gets used." - } - ] -} \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-2026-09-21/simulation/b-with-surveyed/score.json b/vendor/trainer/runs/contractor-2026-09-21/simulation/b-with-surveyed/score.json deleted file mode 100644 index c01326e..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/simulation/b-with-surveyed/score.json +++ /dev/null @@ -1,465 +0,0 @@ -{ - "build-price-enquiry": { - "cases": 6, - "finished": 6, - "stuck": 0, - "misrouted": 0, - "abandoned": 0, - "touches": 28, - "ask_backs": 14, - "unanswerable": 5, - "asked": [ - { - "state": "open", - "button": "Looked at the building", - "question": "Can I have your permission to visit the property at 42 Maple Street, Unit 3B, Portland, OR 97201 to take measurements and assess the existing structure?", - "answerable": true - }, - { - "state": "surveyed", - "button": "Quote sent", - "question": "Is the owner available for a site visit to take measurements and assess the existing structure?", - "answerable": true - }, - { - "state": "quoted", - "button": "Won", - "question": "Has the owner signed the contract and submitted the deposit?", - "answerable": false - }, - { - "state": "open", - "button": "Not for us", - "question": "Is this project still a possibility, or have you already decided not to proceed?", - "answerable": true - }, - { - "state": "open", - "button": "Looked at the building", - "question": "What is the current condition of the existing garage structure and the site (soil, grade, access) that would need to be surveyed?", - "answerable": true - }, - { - "state": "surveyed", - "button": "Quote sent", - "question": "Can you provide the current condition of the existing garage structure and the site (soil, grade, access) that would need to be surveyed?", - "answerable": false - }, - { - "state": "quoted", - "button": "Won", - "question": "Has the surveyor or structural engineer been hired and completed the documentation of the existing conditions, soil, and grade?", - "answerable": true - }, - { - "state": "open", - "button": "Looked at the building", - "question": "Can we proceed with a site visit, or is the basement currently occupied/locked?", - "answerable": true - }, - { - "state": "surveyed", - "button": "Quote sent", - "question": "Has the site been visited to assess the current condition and verify the lock status?", - "answerable": false - }, - { - "state": "quoted", - "button": "Won", - "question": "Has a site visit been conducted to verify the lock status and current condition of the basement?", - "answerable": false - }, - { - "state": "open", - "button": "Not for us", - "question": "Has your project moved forward, or would you still like to explore options?", - "answerable": true - }, - { - "state": "open", - "button": "Looked at the building", - "question": "Do you have a valid title deed or proof of ownership for the property at 42 Maple Crescent, RG24 9JX?", - "answerable": false - }, - { - "state": "surveyed", - "button": "Quote sent", - "question": "Do you have a valid title deed or proof of ownership for the property at 42 Maple Crescent, RG24 9JX?", - "answerable": true - }, - { - "state": "quoted", - "button": "Won", - "question": "Do you have a valid title deed or proof of ownership for the property at 42 Maple Crescent, RG24 9JX?", - "answerable": true - } - ], - "buttons": { - "open -> Looked at the building": [ - 4, - 4 - ], - "open -> Not for us": [ - 2, - 2 - ], - "quoted -> Won": [ - 4, - 4 - ], - "surveyed -> Quote sent": [ - 4, - 4 - ] - }, - "stuck_at": [], - "misroutes": [], - "abandon_reasons": [] - }, - "job-application": { - "cases": 6, - "finished": 6, - "stuck": 0, - "misrouted": 0, - "abandoned": 0, - "touches": 18, - "ask_backs": 8, - "unanswerable": 2, - "asked": [ - { - "state": "open", - "button": "Invite to interview", - "question": "What is your phone number?", - "answerable": true - }, - { - "state": "interviewing", - "button": "Hire", - "question": "Which specific carpentry role are you applying for (e.g., apprentice, journeyman, project lead)?", - "answerable": true - }, - { - "state": "open", - "button": "Decline", - "question": "What is your email address?", - "answerable": false - }, - { - "state": "open", - "button": "Invite to interview", - "question": "What is your email address?", - "answerable": true - }, - { - "state": "interviewing", - "button": "Hire", - "question": "Do you want to proceed with hiring this applicant?", - "answerable": false - }, - { - "state": "open", - "button": "Invite to interview", - "question": "What is your phone number?", - "answerable": true - }, - { - "state": "interviewing", - "button": "Hire", - "question": "Can you come in for an interview on [Date]?", - "answerable": true - }, - { - "state": "interviewing", - "button": "Hire", - "question": "Do you have the legal right to work in the country where Nordvik Bygg operates?", - "answerable": true - } - ], - "buttons": { - "interviewing -> Hire": [ - 4, - 4 - ], - "open -> Decline": [ - 2, - 1 - ], - "open -> Invite to interview": [ - 4, - 3 - ] - }, - "stuck_at": [], - "misroutes": [], - "abandon_reasons": [] - }, - "report-site-issue": { - "cases": 6, - "finished": 6, - "stuck": 0, - "misrouted": 0, - "abandoned": 0, - "touches": 23, - "ask_backs": 11, - "unanswerable": 4, - "asked": [ - { - "state": "open", - "button": "Look into it", - "question": "What is your full name and role (e.g., employee or subcontractor) so I can assign the follow-up correctly?", - "answerable": true - }, - { - "state": "in_hand", - "button": "Mark fixed", - "question": "Which person marked this as fixed: the crew member who flagged it, or the subcontractor's worker?", - "answerable": true - }, - { - "state": "open", - "button": "Look into it", - "question": "Has a visual inspection of the scaffold board near main entrance been completed?", - "answerable": false - }, - { - "state": "in_hand", - "button": "Mark fixed", - "question": "Has a visual inspection of the scaffold board near main entrance been completed?", - "answerable": false - }, - { - "state": "open", - "button": "Look into it", - "question": "Can you confirm the exact location of the scaffold board issue? For example, which specific scaffold bay or level, and the current status of the area (e.g., is the scaffold still in use or has it been cordoned off)?", - "answerable": true - }, - { - "state": "in_hand", - "button": "Mark fixed", - "question": "Has the scaffold board been secured or removed, and has the area been cordoned off to prevent further use?", - "answerable": true - }, - { - "state": "open", - "button": "Look into it", - "question": "What is the quantity of wrong materials delivered?", - "answerable": true - }, - { - "state": "in_hand", - "button": "Mark fixed", - "question": "How has the wrong material been handled since delivery? (e.g., moved to quarantine, used in work, left in the storage area)", - "answerable": true - }, - { - "state": "in_hand", - "button": "Mark fixed", - "question": "Has the wrong insulation been removed or replaced with the correct type?", - "answerable": false - }, - { - "state": "open", - "button": "Look into it", - "question": "Do you have the delivery ticket number or the supplier's contact details to verify the substitution?", - "answerable": true - }, - { - "state": "in_hand", - "button": "Mark fixed", - "question": "Can you read the delivery ticket number from the label on the pallet to verify the substitution details?", - "answerable": false - } - ], - "buttons": { - "in_hand -> Mark fixed": [ - 6, - 6 - ], - "open -> Look into it": [ - 6, - 5 - ] - }, - "stuck_at": [], - "misroutes": [], - "abandon_reasons": [] - }, - "subcontractor-application": { - "cases": 6, - "finished": 6, - "stuck": 0, - "misrouted": 0, - "abandoned": 0, - "touches": 12, - "ask_backs": 6, - "unanswerable": 4, - "asked": [ - { - "state": "open", - "button": "Approve", - "question": "What is your company registration number?", - "answerable": false - }, - { - "state": "open", - "button": "Decline", - "question": "What is your company registration number and insurance provider details?", - "answerable": false - }, - { - "state": "open", - "button": "Approve", - "question": "Has the company submitted the required insurance certificates and signed the standard subcontractor agreement?", - "answerable": true - }, - { - "state": "open", - "button": "Approve", - "question": "Do you have a valid and current CISRS card for the operatives assigned to Nordvik Bygg projects?", - "answerable": false - }, - { - "state": "open", - "button": "Decline", - "question": "What is the company's registration number?", - "answerable": false - }, - { - "state": "open", - "button": "Approve", - "question": "Do you have a valid and current scaffolding-specific certification (e.g., PASMA, CISRS) or relevant trade accreditation for the work you perform?", - "answerable": true - } - ], - "buttons": { - "open -> Approve": [ - 4, - 4 - ], - "open -> Decline": [ - 2, - 2 - ] - }, - "stuck_at": [], - "misroutes": [], - "abandon_reasons": [] - }, - "survey-enquiry": { - "cases": 6, - "finished": 6, - "stuck": 0, - "misrouted": 0, - "abandoned": 0, - "touches": 28, - "ask_backs": 14, - "unanswerable": 4, - "asked": [ - { - "state": "open", - "button": "Looked at the building", - "question": "Do you have access to the building right now, or can you arrange for someone to let me in?", - "answerable": true - }, - { - "state": "surveyed", - "button": "Quote sent", - "question": "Are you or the building manager available to grant access to the property for a site visit?", - "answerable": true - }, - { - "state": "quoted", - "button": "Won", - "question": "Can you coordinate a specific time for a site visit that works for the building manager or property manager?", - "answerable": true - }, - { - "state": "open", - "button": "Not for us", - "question": "What is the exact address of the building?", - "answerable": false - }, - { - "state": "open", - "button": "Looked at the building", - "question": "Is the building currently occupied or vacant?", - "answerable": true - }, - { - "state": "surveyed", - "button": "Quote sent", - "question": "Can you provide a convenient time for a site visit?", - "answerable": false - }, - { - "state": "quoted", - "button": "Won", - "question": "Do you have a convenient time for a site visit?", - "answerable": true - }, - { - "state": "open", - "button": "Looked at the building", - "question": "Do you have access to the building right now, or would you need to schedule an appointment?", - "answerable": true - }, - { - "state": "surveyed", - "button": "Quote sent", - "question": "Could you grant access to the building or schedule an appointment for us to inspect the leak?", - "answerable": true - }, - { - "state": "quoted", - "button": "Won", - "question": "Can you grant access to the building for an inspection during a morning appointment?", - "answerable": true - }, - { - "state": "open", - "button": "Not for us", - "question": "What is the address of the building?", - "answerable": false - }, - { - "state": "open", - "button": "Looked at the building", - "question": "Could you confirm the exact address of the building, including the street number and apartment/unit number?", - "answerable": true - }, - { - "state": "surveyed", - "button": "Quote sent", - "question": "Can you confirm the exact address of the building, including the street number and apartment/unit number?", - "answerable": false - }, - { - "state": "quoted", - "button": "Won", - "question": "Can you provide the exact street number and apartment/unit number for the address?", - "answerable": true - } - ], - "buttons": { - "open -> Looked at the building": [ - 4, - 4 - ], - "open -> Not for us": [ - 2, - 2 - ], - "quoted -> Won": [ - 4, - 4 - ], - "surveyed -> Quote sent": [ - 4, - 4 - ] - }, - "stuck_at": [], - "misroutes": [], - "abandon_reasons": [] - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-2026-09-21/simulation/first-design-qwen3-8b/score-after-prompt-change.json b/vendor/trainer/runs/contractor-2026-09-21/simulation/first-design-qwen3-8b/score-after-prompt-change.json deleted file mode 100644 index 0580df1..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/simulation/first-design-qwen3-8b/score-after-prompt-change.json +++ /dev/null @@ -1,93 +0,0 @@ -{ - "build-price-enquiry": { - "cases": 10, - "finished": 10, - "success": 0, - "stuck": 0, - "misrouted": 0, - "abandoned": 0, - "touches": 10, - "ask_backs": 0, - "asked": [], - "stuck_at": [], - "misroutes": [], - "abandon_reasons": [], - "ended_in": { - "lost": 10 - } - }, - "job-application": { - "cases": 10, - "finished": 10, - "success": 0, - "stuck": 0, - "misrouted": 0, - "abandoned": 0, - "touches": 10, - "ask_backs": 0, - "asked": [], - "stuck_at": [], - "misroutes": [], - "abandon_reasons": [], - "ended_in": { - "declined": 10 - } - }, - "report-site-issue": { - "cases": 10, - "finished": 10, - "success": 10, - "stuck": 0, - "misrouted": 0, - "abandoned": 0, - "touches": 21, - "ask_backs": 1, - "asked": [ - [ - "in_hand", - "Can you confirm if the wrong insulation was delivered to the Main site entrance and if it's still on site?" - ] - ], - "stuck_at": [], - "misroutes": [], - "abandon_reasons": [], - "ended_in": { - "closed": 10 - } - }, - "subcontractor-application": { - "cases": 10, - "finished": 10, - "success": 5, - "stuck": 0, - "misrouted": 0, - "abandoned": 0, - "touches": 19, - "ask_backs": 0, - "asked": [], - "stuck_at": [], - "misroutes": [], - "abandon_reasons": [], - "ended_in": { - "approved": 5, - "declined": 5 - } - }, - "survey-enquiry": { - "cases": 10, - "finished": 10, - "success": 0, - "stuck": 0, - "misrouted": 0, - "abandoned": 0, - "touches": 10, - "ask_backs": 0, - "asked": [], - "stuck_at": [], - "misroutes": [], - "abandon_reasons": [], - "ended_in": { - "lost": 10 - } - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-2026-09-21/simulation/first-design-qwen3-8b/score-before-prompt-change.json b/vendor/trainer/runs/contractor-2026-09-21/simulation/first-design-qwen3-8b/score-before-prompt-change.json deleted file mode 100644 index 07b5cff..0000000 --- a/vendor/trainer/runs/contractor-2026-09-21/simulation/first-design-qwen3-8b/score-before-prompt-change.json +++ /dev/null @@ -1,98 +0,0 @@ -{ - "build-price-enquiry": { - "cases": 6, - "finished": 5, - "success": 5, - "stuck": 0, - "misrouted": 1, - "abandoned": 0, - "touches": 10, - "ask_backs": 0, - "asked": [], - "stuck_at": [], - "misroutes": [ - "owner-basement-conversion: Get a price for a build: For owners who already know what they want built and need drawings, a permit application and a price." - ], - "abandon_reasons": [], - "ended_in": { - "won": 5 - } - }, - "job-application": { - "cases": 6, - "finished": 0, - "success": 0, - "stuck": 0, - "misrouted": 6, - "abandoned": 0, - "touches": 0, - "ask_backs": 0, - "asked": [], - "stuck_at": [], - "misroutes": [ - "apprentice-asking: Ask about working with us: For carpenters and apprentices who want to know if we're hiring.", - "apprentice-asking: Ask about working with us: For carpenters and apprentices who want to know if we're hiring.", - "apprentice-asking: Ask about working with us: For carpenters and apprentices who want to know if we're hiring.", - "experienced-carpenter: Ask about working with us: For carpenters and apprentices who want to know if we're hiring.", - "experienced-carpenter: Ask about working with us: For carpenters and apprentices who want to know if we're hiring.", - "experienced-carpenter: Ask about working with us: For carpenters and apprentices who want to know if we're hiring." - ], - "abandon_reasons": [], - "ended_in": {} - }, - "report-site-issue": { - "cases": 6, - "finished": 6, - "success": 6, - "stuck": 0, - "misrouted": 0, - "abandoned": 0, - "touches": 12, - "ask_backs": 0, - "asked": [], - "stuck_at": [], - "misroutes": [], - "abandon_reasons": [], - "ended_in": { - "closed": 6 - } - }, - "subcontractor-application": { - "cases": 6, - "finished": 3, - "success": 3, - "stuck": 0, - "misrouted": 3, - "abandoned": 0, - "touches": 6, - "ask_backs": 0, - "asked": [], - "stuck_at": [], - "misroutes": [ - "scaffolding-firm: Join our subcontractor list: For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.", - "scaffolding-firm: Join our subcontractor list: For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them.", - "scaffolding-firm: Join our subcontractor list: For electrical, plumbing and scaffolding firms who want to be one of the firms we call when a job needs them." - ], - "abandon_reasons": [], - "ended_in": { - "approved": 3 - } - }, - "survey-enquiry": { - "cases": 6, - "finished": 6, - "success": 6, - "stuck": 0, - "misrouted": 0, - "abandoned": 0, - "touches": 12, - "ask_backs": 0, - "asked": [], - "stuck_at": [], - "misroutes": [], - "abandon_reasons": [], - "ended_in": { - "won": 6 - } - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/a-full.jsonl b/vendor/trainer/runs/contractor-build-2026-09-21/a-full.jsonl deleted file mode 100644 index a964019..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/a-full.jsonl +++ /dev/null @@ -1,8 +0,0 @@ -{"id":"housing-board-damp@/","choice":"Get a professional building survey","confidence":0.95} -{"id":"buyer-before-purchase@/","choice":"Get a professional building survey","confidence":0.95} -{"id":"attic-conversion@/","choice":"Plan your building project with us","confidence":0.95} -{"id":"shop-to-flat@/","choice":"Plan your building project with us","confidence":0.95} -{"id":"electrician-firm@/","choice":"Become a trusted subcontractor","confidence":0.95} -{"id":"scaffolder@/","choice":"Become a trusted subcontractor","confidence":0.95} -{"id":"carpenter-jobseeker@/","choice":"Join our carpentry team","confidence":0.95} -{"id":"apprentice@/","choice":"Join our carpentry team","confidence":0.95} diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/a-skim.jsonl b/vendor/trainer/runs/contractor-build-2026-09-21/a-skim.jsonl deleted file mode 100644 index a964019..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/a-skim.jsonl +++ /dev/null @@ -1,8 +0,0 @@ -{"id":"housing-board-damp@/","choice":"Get a professional building survey","confidence":0.95} -{"id":"buyer-before-purchase@/","choice":"Get a professional building survey","confidence":0.95} -{"id":"attic-conversion@/","choice":"Plan your building project with us","confidence":0.95} -{"id":"shop-to-flat@/","choice":"Plan your building project with us","confidence":0.95} -{"id":"electrician-firm@/","choice":"Become a trusted subcontractor","confidence":0.95} -{"id":"scaffolder@/","choice":"Become a trusted subcontractor","confidence":0.95} -{"id":"carpenter-jobseeker@/","choice":"Join our carpentry team","confidence":0.95} -{"id":"apprentice@/","choice":"Join our carpentry team","confidence":0.95} diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/aggregates.yaml b/vendor/trainer/runs/contractor-build-2026-09-21/aggregates.yaml deleted file mode 100644 index 07fe78f..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/aggregates.yaml +++ /dev/null @@ -1,75 +0,0 @@ -aggregates: -- bucket: applicants - initial: open - states: - declined: - event: declined - hired: - event: hired - interviewing: - event: interviewing - open: - event: received - transitions: - interviewing: - - hired - - declined - open: - - interviewing - - declined -- bucket: enquiries - initial: open - states: - lost: - event: lost - open: - event: received - quoted: - event: quoted - surveyed: - event: surveyed - won: - event: won - transitions: - open: - - surveyed - - lost - quoted: - - won - - lost - surveyed: - - quoted - - lost -- bucket: site_issues - initial: open - states: - closed: - event: closed - in_hand: - event: in_hand - open: - event: received - transitions: - in_hand: - - closed - open: - - in_hand -- bucket: subcontractors - initial: open - states: - approved: - event: approved - awaiting_papers: - event: awaiting_papers - declined: - event: declined - open: - event: received - transitions: - awaiting_papers: - - approved - - declined - open: - - awaiting_papers - - approved - - declined diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/needs.yaml b/vendor/trainer/runs/contractor-build-2026-09-21/needs.yaml deleted file mode 100644 index 8d86929..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/needs.yaml +++ /dev/null @@ -1,149 +0,0 @@ -needs: -- done_when: - - won - - lost - enters: / - handled_by: project_managers - id: survey-enquiry - lands_in: enquiries - max_fields: 4 - max_steps: 1 - stages: - - open - - surveyed - - quoted - - won - - lost - success: - - won - via: Get a professional building survey - wants: someone qualified to come and look at it and say what it takes - who: a housing board or private owner with a problem in a building -- done_when: - - won - - lost - enters: / - handled_by: project_managers - id: build-enquiry - lands_in: enquiries - max_fields: 5 - max_steps: 1 - stages: - - open - - surveyed - - quoted - - won - - lost - success: - - won - via: Plan your building project with us - wants: drawings, a permit application and a price - who: an owner who already knows what they want built or changed -- done_when: - - won - - lost - enters: /project_managers/log-phone-enquiry - enters_as: project_managers - handled_by: project_managers - id: log-phone-enquiry - lands_in: enquiries - max_fields: 4 - max_steps: 1 - stages: - - open - - surveyed - - quoted - - won - - lost - success: - - won - via: Log a phone enquiry - wants: the enquiry written down before it gets lost - who: a project manager who just took a call or a text about a building -- done_when: - - approved - - declined - enters: / - handled_by: project_managers - id: subcontractor-application - lands_in: subcontractors - max_fields: 5 - max_steps: 1 - stages: - - open - - awaiting_papers - - approved - - declined - success: - - approved - via: Become a trusted subcontractor - wants: to be approved once, and then be called when a job needs them - who: a trade firm doing electrical, plumbing or scaffolding work -- done_when: - - hired - - declined - enters: / - handled_by: project_managers - id: job-application - lands_in: applicants - max_fields: 3 - max_steps: 1 - stages: - - open - - interviewing - - hired - - declined - success: - - hired - via: Join our carpentry team - wants: to be considered, without writing a letter - who: a carpenter, bricklayer or apprentice looking for work -- done_when: - - closed - enters: /crew/report-site-issue - enters_as: crew - handled_by: safety_officer - id: report-site-issue - lands_in: site_issues - max_fields: 3 - max_steps: 1 - stages: - - open - - in_hand - - closed - success: - - closed - via: Report a safety issue on site - wants: to report a hazard, a near miss or wrong materials before they forget - who: anyone on site, ours or a subcontractor's, on a phone with gloves on -personas: -- id: housing-board-damp - need: survey-enquiry - text: I chair the board of a housing cooperative from the seventies. Two ground-floor flats have damp in the walls and we don't know if it's drainage or the facade. We need someone to tell us. -- id: buyer-before-purchase - need: survey-enquiry - text: We are about to buy an old timber house. Before we sign we want a professional to go through it and tell us what is wrong with it. -- id: attic-conversion - need: build-enquiry - text: We want to turn our attic into two bedrooms and a bathroom. We need drawings and someone who handles the application to the municipality. -- id: shop-to-flat - need: build-enquiry - text: I own a former shop on the ground floor and want to make it a flat. I have no idea what is allowed. Can you sort that out and give me a price? -- id: electrician-firm - need: subcontractor-application - text: We are a four-person electrical firm, fully certified. We would like to get on your list so you call us when you need electricians. -- id: scaffolder - need: subcontractor-application - text: I run a scaffolding company. How do I get to do jobs for you? -- id: carpenter-jobseeker - need: job-application - text: I'm a certified carpenter with eight years on rehabilitation jobs. Are you hiring? -- id: apprentice - need: job-application - text: I finish vocational school this spring and need an apprenticeship as a bricklayer. -- id: loose-railing - need: report-site-issue - text: The railing on the third level of the scaffold on the north side is loose. Nobody got hurt but someone will. -- id: wrong-membrane - need: report-site-issue - text: The bathroom membrane delivered today is not the one in the specification. We stopped work on it. diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/questions/crew/_section.yaml b/vendor/trainer/runs/contractor-build-2026-09-21/questions/crew/_section.yaml deleted file mode 100644 index 1f962a5..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/questions/crew/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: crew diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/questions/crew/index.yaml b/vendor/trainer/runs/contractor-build-2026-09-21/questions/crew/index.yaml deleted file mode 100644 index 7e3fa29..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/questions/crew/index.yaml +++ /dev/null @@ -1,11 +0,0 @@ -alternatives: -- action: /crew/report-site-issue - consequence: - - Report issue - description: Write down a hazard, near miss or wrong materials from the site. - name: Report a site issue -description: A desk for the project managers and safety officer. Move cases through stages, approve subs, and log issues. -name: What do you need to do today? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/questions/crew/report-site-issue-sent.yaml b/vendor/trainer/runs/contractor-build-2026-09-21/questions/crew/report-site-issue-sent.yaml deleted file mode 100644 index 1159716..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/questions/crew/report-site-issue-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: A safety officer will assess the issue and assign it to the right person. - name: What happens next -- action: /crew - consequence: - - Back to form - description: '' - name: Back to form -description: Your report has been received. We will review it and get back to you. -name: What type of issue did you report? diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/questions/crew/report-site-issue.yaml b/vendor/trainer/runs/contractor-build-2026-09-21/questions/crew/report-site-issue.yaml deleted file mode 100644 index ba1c02a..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/questions/crew/report-site-issue.yaml +++ /dev/null @@ -1,30 +0,0 @@ -alternatives: -- action: /crew/report-site-issue-sent - consequence: - - Send report - description: Use this form to report a safety issue, near miss, or wrong materials while on site. - features: - - name: Report a site issue - requirements: - - label: Issue type - name: kind - options: - - Hazard - - Near miss - - Wrong materials - - Other - type: select - - label: Where on site - name: where - type: text - - label: What happened - name: what_happened - type: textarea - name: Report a safety issue on site - record_as: site_issues -description: Report hazards, near misses, or wrong materials so they can be fixed. -followup: false -name: What happened on site? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/questions/index.yaml b/vendor/trainer/runs/contractor-build-2026-09-21/questions/index.yaml deleted file mode 100644 index 20b3ae2..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/questions/index.yaml +++ /dev/null @@ -1,123 +0,0 @@ -alternatives: -- action: /received/survey-enquiry - consequence: - - Book a survey - description: We visit, assess and give you a quote for the repair work. - features: - - name: Survey enquiry - requirements: - - label: Your name - name: name - type: text - - label: Phone number - name: phone - type: tel - - label: Building address - name: address - type: text - - label: Describe the problem - name: problem - type: textarea - - label: Site access - name: access - optional: true - type: text - name: Get a professional building survey - record_as: enquiries -- action: /received/build-enquiry - consequence: - - Start project - description: We handle drawings, permits and price for your building plans. - features: - - name: Building project - requirements: - - label: Your name - name: name - type: text - - label: Phone number - name: phone - type: tel - - label: Project address - name: address - type: text - - label: Project description - name: project - type: textarea - - label: When do you want it done - name: timeframe - options: - - This year - - Next year - - No fixed date - type: select - name: Plan your building project with us - record_as: enquiries -- action: /received/subcontractor-application - consequence: - - Apply now - description: Register your trade firm so we can call you for jobs. - features: - - name: Subcontractor sign-up - requirements: - - label: Company name - name: company - type: text - - label: Org number - name: registration_number - type: text - - label: Your trade - name: trade - options: - - Electrical - - Plumbing - - Scaffolding - - Sheet metal - - Other - type: select - - label: Contact email - name: contact_email - type: email - - label: Insurance confirmed - name: insurance_confirmed - options: - - Yes - - Not yet - type: select - - label: Trade approval - name: trade_approval - optional: true - type: text - name: Become a trusted subcontractor - record_as: subcontractors -- action: /received/job-application - consequence: - - Apply for work - description: Share your trade and skills so we can find you a job. - features: - - name: Job application - requirements: - - label: Your name - name: name - type: text - - label: Phone number - name: phone - type: tel - - label: Your trade - name: trade - options: - - Carpenter - - Bricklayer - - Apprentice - - Other - type: select - - label: Your experience - name: experience - optional: true - type: textarea - name: Join our carpentry team - record_as: applicants -description: 'Pick what you need: a building check, a new project, or joining the team.' -name: What brings you to Nordvik Bygg today? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/questions/project_managers/_section.yaml b/vendor/trainer/runs/contractor-build-2026-09-21/questions/project_managers/_section.yaml deleted file mode 100644 index d8acdff..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/questions/project_managers/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: project_managers diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/questions/project_managers/index.yaml b/vendor/trainer/runs/contractor-build-2026-09-21/questions/project_managers/index.yaml deleted file mode 100644 index 0d55d8e..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/questions/project_managers/index.yaml +++ /dev/null @@ -1,98 +0,0 @@ -alternatives: -- action: /project_managers - consequence: - - Continue - description: A carpenter, bricklayer or apprentice looking for their next job can be added here. The team reviews their skills and experience. - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: applicants - kind: kv - transitions: - - from: interviewing - label: Hired - to: hired - - from: interviewing - label: Declined - to: declined - - from: open - label: Start interview - to: interviewing - - from: open - label: Declined - to: declined - name: Job applicants -- action: /project_managers - consequence: - - Continue - description: A housing board or private owner with a building problem, or an owner who wants something built or changed. Track the case from first contact to final result. - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: enquiries - kind: kv - transitions: - - from: open - label: Start survey - to: surveyed - - from: open - label: Mark lost - to: lost - - from: quoted - label: Won - to: won - - from: quoted - label: Mark lost - to: lost - - from: surveyed - label: Make quote - to: quoted - - from: surveyed - label: Mark lost - to: lost - name: Building enquiries -- action: /project_managers - consequence: - - Continue - description: A trade firm doing electrical, plumbing or scaffolding work can be approved once and then called when a job needs them. - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: subcontractors - kind: kv - transitions: - - from: awaiting_papers - label: Approve - to: approved - - from: awaiting_papers - label: Decline - to: declined - - from: open - label: Await papers - to: awaiting_papers - - from: open - label: Approve - to: approved - - from: open - label: Decline - to: declined - name: Subcontractors -- action: /project_managers/log-phone-enquiry - consequence: - - Log call - description: Write down a phone call or text about a building issue before it gets lost. - name: Log phone enquiry -description: Use the buckets below to move cases through their stages. Each bucket is a list of jobs waiting for action. -name: What needs doing today? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/questions/project_managers/log-phone-enquiry-sent.yaml b/vendor/trainer/runs/contractor-build-2026-09-21/questions/project_managers/log-phone-enquiry-sent.yaml deleted file mode 100644 index 0f8b8cc..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/questions/project_managers/log-phone-enquiry-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Ingrid and the team will review the details and get back to you within one business day. - name: What happens next -- action: /project_managers - consequence: - - Back to form - description: '' - name: Back to form -description: Your phone call or text has been recorded. It will not be forgotten. -name: Did the message go through? diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/questions/project_managers/log-phone-enquiry.yaml b/vendor/trainer/runs/contractor-build-2026-09-21/questions/project_managers/log-phone-enquiry.yaml deleted file mode 100644 index 105297c..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/questions/project_managers/log-phone-enquiry.yaml +++ /dev/null @@ -1,28 +0,0 @@ -alternatives: -- action: /project_managers/log-phone-enquiry-sent - consequence: - - Log phone call - description: Write down the enquiry before it gets lost. - features: - - name: Log phone enquiry - requirements: - - label: Your name - name: caller - type: text - - label: Phone number - name: phone - type: tel - - label: Address - name: address - type: text - - label: What happened? - name: problem - type: textarea - name: Log a phone enquiry - record_as: enquiries -description: Quickly record a building enquiry from a phone call or text. -followup: false -name: What happened on the phone? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/questions/received/build-enquiry.yaml b/vendor/trainer/runs/contractor-build-2026-09-21/questions/received/build-enquiry.yaml deleted file mode 100644 index 6a369bb..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/questions/received/build-enquiry.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: We will contact you within two business days to discuss your project and send a quote. - name: 'Next steps: quote and timeline' -- action: / - consequence: - - Back to form - description: '' - name: Back to form -description: Your build enquiry has been received. A project manager will review it. -name: What happens next? diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/questions/received/job-application.yaml b/vendor/trainer/runs/contractor-build-2026-09-21/questions/received/job-application.yaml deleted file mode 100644 index 73f94e9..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/questions/received/job-application.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Project managers will review your profile and contact you if they want to interview. - name: Next steps -- action: / - consequence: - - Back to form - description: '' - name: Back to form -description: Your job application has been received. -name: What are you looking for? diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/questions/received/subcontractor-application.yaml b/vendor/trainer/runs/contractor-build-2026-09-21/questions/received/subcontractor-application.yaml deleted file mode 100644 index e7220c4..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/questions/received/subcontractor-application.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Once approved, you will be added to our approved subcontractor list and contacted when relevant projects arise. - name: Approved and added to list -- action: / - consequence: - - Back to form - description: '' - name: Back to form -description: Subcontractor applications are reviewed by our project managers to verify credentials and suitability before approval. -name: What is your trade? diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/questions/received/survey-enquiry.yaml b/vendor/trainer/runs/contractor-build-2026-09-21/questions/received/survey-enquiry.yaml deleted file mode 100644 index e2eaa00..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/questions/received/survey-enquiry.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: A project manager will review the details and contact you to schedule a site visit. - name: 'Next: Site survey' -- action: / - consequence: - - Back to form - description: '' - name: Back to form -description: You sent a survey enquiry. This page tells you who will handle it and what happens next. -name: Who will handle your enquiry? diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/questions/safety_officer/_section.yaml b/vendor/trainer/runs/contractor-build-2026-09-21/questions/safety_officer/_section.yaml deleted file mode 100644 index d7ea7a1..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/questions/safety_officer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: safety_officer diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/questions/safety_officer/index.yaml b/vendor/trainer/runs/contractor-build-2026-09-21/questions/safety_officer/index.yaml deleted file mode 100644 index 989b8f3..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/questions/safety_officer/index.yaml +++ /dev/null @@ -1,26 +0,0 @@ -alternatives: -- action: /safety_officer - consequence: - - Submit - description: Report hazards, near misses, or wrong materials before you forget them. - features: - - description: '' - name: '' - resource: - requires_group: safety_officer - source: - bucket: site_issues - kind: kv - transitions: - - from: in_hand - label: Mark as closed - to: closed - - from: open - label: Report issue - to: in_hand - name: Report a site issue -description: Log a safety concern or material issue from the site. -name: What issue do you need to report? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/rate.json b/vendor/trainer/runs/contractor-build-2026-09-21/rate.json deleted file mode 100644 index 60398c9..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/rate.json +++ /dev/null @@ -1,77 +0,0 @@ -{ - "build-enquiry": { - "control_ok": true, - "control_which": 0, - "lix": 27.477272727272727, - "options": 4, - "overloaded": false, - "personas": 2, - "required_fields": 5, - "steps": 1, - "understanding": { - "asked": 2, - "next": 0, - "which": 2 - } - }, - "job-application": { - "control_ok": true, - "control_which": 0, - "lix": 23.909090909090907, - "options": 4, - "overloaded": false, - "personas": 2, - "required_fields": 3, - "steps": 1, - "understanding": { - "asked": 2, - "next": 0, - "which": 2 - } - }, - "report-site-issue": { - "control_ok": true, - "control_which": 0, - "lix": 15.618181818181819, - "options": 1, - "overloaded": false, - "personas": 2, - "required_fields": 3, - "steps": 1, - "understanding": { - "asked": 2, - "next": 0, - "which": 1 - } - }, - "subcontractor-application": { - "control_ok": true, - "control_which": 0, - "lix": 29.01581027667984, - "options": 4, - "overloaded": false, - "personas": 2, - "required_fields": 5, - "steps": 1, - "understanding": { - "asked": 2, - "next": 0, - "which": 2 - } - }, - "survey-enquiry": { - "control_ok": true, - "control_which": 0, - "lix": 27.92885375494071, - "options": 4, - "overloaded": false, - "personas": 2, - "required_fields": 4, - "steps": 1, - "understanding": { - "asked": 2, - "next": 0, - "which": 2 - } - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/rescore-2026-09-22/README.md b/vendor/trainer/runs/contractor-build-2026-09-21/rescore-2026-09-22/README.md deleted file mode 100644 index 1a13539..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/rescore-2026-09-22/README.md +++ /dev/null @@ -1,45 +0,0 @@ -# The same site, re-scored with the per-task answerer - -The site is the one in the directory above, built 2026-09-21 and -untouched. Visitor: qwen3:8b on ergo's Ollama, one call per task, -options shuffled per task, seeded from the task id. question_lint -from portal at d7f60ea. - -| Visitor could read | 2026-09-21, all tasks in one prompt | 2026-09-22, one task per call | -|---|---|---| -| Headings and descriptions | 8 of 8 | 8 of 8 | -| Headings only | 8 of 8 | 7 of 8 | - -The one misroute: the apprentice ("I finish vocational school this -spring and need an apprenticeship as a bricklayer") reads the four -headings alone and picks "Get a professional building survey" at -0.85, over "Join our carpentry team". Read as a bricklayer would, the -heading names a trade that is not theirs, and nothing on the page -says the team hires bricklayers or apprentices. That is a heading -defect the batched answerer did not find, because with all eight -personas in one prompt the model had two obvious jobseekers and one -obvious jobs heading. - -`rate`, on the same site, with the followup page shown and every -question controlled against the gutted twin: - -| need | LIX | which | asked | next | twin says | -|---|---|---|---|---|---| -| survey-enquiry | 25 | 2/2 | 2/2 | 2/2 | 0/0/0 | -| build-enquiry | 26 | 2/2 | 2/2 | 2/2 | 0/0/0 | -| subcontractor-application | 35 | 2/2 | 2/2 | 2/2 | 0/0/0 | -| job-application | 27 | 1/2 | 2/2 | 2/2 | 0/0/0 | -| report-site-issue | 18 | 2/2 | 2/2 | 2/2 | 0/0/0 | - -- "next" was 0 of 2 everywhere on 2026-09-21 because the front door - was rated without its followup page. With the followup read from - the repo it is 2 of 2, and 0 on the twin: the followup pages do say - what happens. -- "asked" was 2 of 2 on the twin as well, at first, when the twin - listed "Field 1, Field 2, Field 3": the count alone got a yes. The - twin now has no form line, and the control passes. -- LIX rose from 16-29 to 18-35 once headings and labels were left out - of the count; the subcontractor page is the one that reads "easy" - rather than "very easy". -- The 1 of 2 on job-application is the apprentice, the same persona - the answerer misroutes on headings alone. diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/rescore-2026-09-22/answers-full.jsonl b/vendor/trainer/runs/contractor-build-2026-09-21/rescore-2026-09-22/answers-full.jsonl deleted file mode 100644 index ffd7eef..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/rescore-2026-09-22/answers-full.jsonl +++ /dev/null @@ -1,8 +0,0 @@ -{"choice":"Get a professional building survey","confidence":0.95,"id":"housing-board-damp@/"} -{"choice":"Get a professional building survey","confidence":0.95,"id":"buyer-before-purchase@/"} -{"choice":"Plan your building project with us","confidence":0.95,"id":"attic-conversion@/"} -{"choice":"Plan your building project with us","confidence":0.95,"id":"shop-to-flat@/"} -{"choice":"Become a trusted subcontractor","confidence":0.95,"id":"electrician-firm@/"} -{"choice":"Become a trusted subcontractor","confidence":0.95,"id":"scaffolder@/"} -{"choice":"Join our carpentry team","confidence":0.95,"id":"carpenter-jobseeker@/"} -{"choice":"Join our carpentry team","confidence":0.95,"id":"apprentice@/"} diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/rescore-2026-09-22/answers-skim.jsonl b/vendor/trainer/runs/contractor-build-2026-09-21/rescore-2026-09-22/answers-skim.jsonl deleted file mode 100644 index 3b0a8ef..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/rescore-2026-09-22/answers-skim.jsonl +++ /dev/null @@ -1,8 +0,0 @@ -{"choice":"Get a professional building survey","confidence":0.95,"id":"housing-board-damp@/"} -{"choice":"Get a professional building survey","confidence":0.95,"id":"buyer-before-purchase@/"} -{"choice":"Plan your building project with us","confidence":0.95,"id":"attic-conversion@/"} -{"choice":"Plan your building project with us","confidence":0.95,"id":"shop-to-flat@/"} -{"choice":"Become a trusted subcontractor","confidence":0.95,"id":"electrician-firm@/"} -{"choice":"Become a trusted subcontractor","confidence":0.95,"id":"scaffolder@/"} -{"choice":"Join our carpentry team","confidence":0.95,"id":"carpenter-jobseeker@/"} -{"choice":"Get a professional building survey","confidence":0.85,"id":"apprentice@/"} diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/rescore-2026-09-22/rate.json b/vendor/trainer/runs/contractor-build-2026-09-21/rescore-2026-09-22/rate.json deleted file mode 100644 index ff20a26..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/rescore-2026-09-22/rate.json +++ /dev/null @@ -1,102 +0,0 @@ -{ - "build-enquiry": { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 26.25, - "options": 4, - "overloaded": false, - "personas": 2, - "required_fields": 5, - "steps": 1, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - }, - "job-application": { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 26.952380952380956, - "options": 4, - "overloaded": false, - "personas": 2, - "required_fields": 3, - "steps": 1, - "understanding": { - "asked": 2, - "next": 2, - "which": 1 - } - }, - "report-site-issue": { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 17.933333333333334, - "options": 1, - "overloaded": false, - "personas": 2, - "required_fields": 3, - "steps": 1, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - }, - "subcontractor-application": { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 34.61904761904762, - "options": 4, - "overloaded": false, - "personas": 2, - "required_fields": 5, - "steps": 1, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - }, - "survey-enquiry": { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 24.785714285714285, - "options": 4, - "overloaded": false, - "personas": 2, - "required_fields": 4, - "steps": 1, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/run.log b/vendor/trainer/runs/contractor-build-2026-09-21/run.log deleted file mode 100644 index 5284c59..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/run.log +++ /dev/null @@ -1,22 +0,0 @@ -content repo written to /tmp/claude-1000/-home-bl-repos-portal/b7802cea-728f-42d2-a751-680a973ba17d/scratchpad/det/nemotron2 -OK: 12 question(s), 5 aggregate(s) valid -need "survey-enquiry": / [Get a professional building survey] -> "enquiries" -need "build-enquiry": / [Plan your building project with us] -> "enquiries" -need "log-phone-enquiry": /project_managers/log-phone-enquiry [Log a phone enquiry] -> "enquiries" -need "subcontractor-application": / [Become a trusted subcontractor] -> "subcontractors" -need "job-application": / [Join our carpentry team] -> "applicants" -need "report-site-issue": /crew/report-site-issue [Report a safety issue on site] -> "site_issues" -OK: 6 need(s) structurally met, 0 planned, 10 persona(s) -BUILD_EXIT=0 in 130s -=== held-out personas, qwen3:8b, full === -wording: 8/8 routed right (100%) -=== held-out personas, qwen3:8b, skim === -wording: 8/8 routed right (100%) -=== rate === -need LIX which asked next gutted twin says page load -survey-enquiry 28 very easy 2/2 2/2 0/2 0/2 ok 4 options, 4 required -build-enquiry 27 very easy 2/2 2/2 0/2 0/2 ok 4 options, 5 required -subcontractor-application 29 very easy 2/2 2/2 0/2 0/2 ok 4 options, 5 required -job-application 24 very easy 2/2 2/2 0/2 0/2 ok 4 options, 3 required -report-site-issue 16 very easy 1/2 2/2 0/2 0/2 ok 1 options, 3 required -ALL_DONE diff --git a/vendor/trainer/runs/contractor-build-2026-09-21/site.yaml b/vendor/trainer/runs/contractor-build-2026-09-21/site.yaml deleted file mode 100644 index 17b5f54..0000000 --- a/vendor/trainer/runs/contractor-build-2026-09-21/site.yaml +++ /dev/null @@ -1,2 +0,0 @@ -lang: en -title: Nordvik Bygg diff --git a/vendor/trainer/runs/contractor-full-2026-09-21/README.md b/vendor/trainer/runs/contractor-full-2026-09-21/README.md deleted file mode 100644 index 1562115..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-21/README.md +++ /dev/null @@ -1,44 +0,0 @@ -# The whole operation: 13 needs, 6 roles, 10 aggregates, overlapping - -Plan: `plans/contractor-full.yaml`. Built with no model, walked dry -(every route of every aggregate), and replayed through portal's real -aggregate engine on a throwaway NATS. - -| | | -|---|---| -| Verifier | 13 of 13 needs met, 28 pages, by construction | -| Routes walked | 40, of which 6 are relays between roles | -| Real engine | 40 aggregates created, 78 transitions accepted, 0 refused, 118 events | - -Who holds buttons on what, as built: - -- `enquiries`: project managers (6), site managers (mark surveyed; otherwise watch) -- `claims`: site managers inspect and fix, project managers accept or reject -- `change_orders`: project managers price, **the client approves or - declines through their own link**, site managers complete -- `material_orders`: site managers order, the crew confirms delivery -- `site_issues`: site managers or the safety officer take in hand, only - the safety officer closes; project managers watch -- `job_requests`: project managers award; **subcontractors watch**, - which is how they see what there is to bid on - -What this plan exposed, none of it fixed yet: - -1. **The project managers' desk is one page with 9 aggregates and 32 - buttons.** The builder puts every aggregate a role touches on one - desk page. Past a handful it has to tier: a hub that lists the - aggregates with what is waiting in each, and a page per aggregate. -2. **The front door offers 6 alternatives**, one over the page-load - limit. It wants a first question ("a building of yours", "work with - us", "a site of ours next door") and a second page under each. -3. **Aggregates do not know about each other.** A bid names its job in - a free-text field; a change request names its job by address. - Nothing says "a bid belongs to a job request" or "a change order - exists only while an enquiry is won". That is the tiering between - state machines still to be designed: a need that arises when a - record elsewhere reaches a state, and carries its id. -4. **A shared button is walked by one role only.** Where two roles both - hold `open -> surveyed`, the dry run presses it as the first of them. -5. **Anyone in `clients` opens the change-request form**, and portal - has no per-record ownership beyond the submitter's link, so a - client group sees nothing of its own cases afterwards. diff --git a/vendor/trainer/runs/contractor-full-2026-09-21/routes.jsonl b/vendor/trainer/runs/contractor-full-2026-09-21/routes.jsonl deleted file mode 100644 index dc0e404..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-21/routes.jsonl +++ /dev/null @@ -1,40 +0,0 @@ -{"persona":"route","need":"survey-enquiry","run":0,"target":"won","record":{"note":"dry run"},"states":["open","surveyed","quoted","won"],"pressed":["open -> Surveyed","surveyed -> Quoted","quoted -> Won"],"moved_by":["project_managers","project_managers","project_managers"],"touches":3,"ask_backs":[],"outcome":{"outcome":"finished","detail":"won"}} -{"persona":"route","need":"survey-enquiry","run":1,"target":"lost","record":{"note":"dry run"},"states":["open","surveyed","quoted","lost"],"pressed":["open -> Surveyed","surveyed -> Quoted","quoted -> Lost"],"moved_by":["project_managers","project_managers","project_managers"],"touches":3,"ask_backs":[],"outcome":{"outcome":"finished","detail":"lost"}} -{"persona":"route","need":"survey-enquiry","run":2,"target":"lost","record":{"note":"dry run"},"states":["open","surveyed","lost"],"pressed":["open -> Surveyed","surveyed -> Lost"],"moved_by":["project_managers","project_managers"],"touches":2,"ask_backs":[],"outcome":{"outcome":"finished","detail":"lost"}} -{"persona":"route","need":"survey-enquiry","run":3,"target":"lost","record":{"note":"dry run"},"states":["open","lost"],"pressed":["open -> Lost"],"moved_by":["project_managers"],"touches":1,"ask_backs":[],"outcome":{"outcome":"finished","detail":"lost"}} -{"persona":"route","need":"build-enquiry","run":0,"target":"won","record":{"note":"dry run"},"states":["open","surveyed","quoted","won"],"pressed":["open -> Surveyed","surveyed -> Quoted","quoted -> Won"],"moved_by":["project_managers","project_managers","project_managers"],"touches":3,"ask_backs":[],"outcome":{"outcome":"finished","detail":"won"}} -{"persona":"route","need":"build-enquiry","run":1,"target":"lost","record":{"note":"dry run"},"states":["open","surveyed","quoted","lost"],"pressed":["open -> Surveyed","surveyed -> Quoted","quoted -> Lost"],"moved_by":["project_managers","project_managers","project_managers"],"touches":3,"ask_backs":[],"outcome":{"outcome":"finished","detail":"lost"}} -{"persona":"route","need":"build-enquiry","run":2,"target":"lost","record":{"note":"dry run"},"states":["open","surveyed","lost"],"pressed":["open -> Surveyed","surveyed -> Lost"],"moved_by":["project_managers","project_managers"],"touches":2,"ask_backs":[],"outcome":{"outcome":"finished","detail":"lost"}} -{"persona":"route","need":"build-enquiry","run":3,"target":"lost","record":{"note":"dry run"},"states":["open","lost"],"pressed":["open -> Lost"],"moved_by":["project_managers"],"touches":1,"ask_backs":[],"outcome":{"outcome":"finished","detail":"lost"}} -{"persona":"route","need":"warranty-claim","run":0,"target":"rejected","record":{"note":"dry run"},"states":["open","rejected"],"pressed":["open -> Rejected"],"moved_by":["project_managers"],"touches":1,"ask_backs":[],"outcome":{"outcome":"finished","detail":"rejected"}} -{"persona":"route","need":"warranty-claim","run":1,"target":"rejected","record":{"note":"dry run"},"states":["open","inspected","accepted","rejected"],"pressed":["open -> Inspected","inspected -> Accepted","accepted -> Rejected"],"moved_by":["site_managers","project_managers","project_managers"],"touches":3,"ask_backs":[],"outcome":{"outcome":"finished","detail":"rejected"}} -{"persona":"route","need":"warranty-claim","run":2,"target":"fixed","record":{"note":"dry run"},"states":["open","inspected","accepted","fixed"],"pressed":["open -> Inspected","inspected -> Accepted","accepted -> Fixed"],"moved_by":["site_managers","project_managers","site_managers"],"touches":3,"ask_backs":[],"outcome":{"outcome":"finished","detail":"fixed"}} -{"persona":"route","need":"warranty-claim","run":3,"target":"rejected","record":{"note":"dry run"},"states":["open","inspected","rejected"],"pressed":["open -> Inspected","inspected -> Rejected"],"moved_by":["site_managers","project_managers"],"touches":2,"ask_backs":[],"outcome":{"outcome":"finished","detail":"rejected"}} -{"persona":"route","need":"neighbour-complaint","run":0,"target":"answered","record":{"note":"dry run"},"states":["open","answered"],"pressed":["open -> Answered"],"moved_by":["site_managers"],"touches":1,"ask_backs":[],"outcome":{"outcome":"finished","detail":"answered"}} -{"persona":"route","need":"subcontractor-application","run":0,"target":"approved","record":{"note":"dry run"},"states":["open","awaiting_papers","approved"],"pressed":["open -> Awaiting papers","awaiting_papers -> Approved"],"moved_by":["project_managers","project_managers"],"touches":2,"ask_backs":[],"outcome":{"outcome":"finished","detail":"approved"}} -{"persona":"route","need":"subcontractor-application","run":1,"target":"declined","record":{"note":"dry run"},"states":["open","awaiting_papers","declined"],"pressed":["open -> Awaiting papers","awaiting_papers -> Declined"],"moved_by":["project_managers","project_managers"],"touches":2,"ask_backs":[],"outcome":{"outcome":"finished","detail":"declined"}} -{"persona":"route","need":"subcontractor-application","run":2,"target":"approved","record":{"note":"dry run"},"states":["open","approved"],"pressed":["open -> Approved"],"moved_by":["project_managers"],"touches":1,"ask_backs":[],"outcome":{"outcome":"finished","detail":"approved"}} -{"persona":"route","need":"subcontractor-application","run":3,"target":"declined","record":{"note":"dry run"},"states":["open","declined"],"pressed":["open -> Declined"],"moved_by":["project_managers"],"touches":1,"ask_backs":[],"outcome":{"outcome":"finished","detail":"declined"}} -{"persona":"route","need":"job-application","run":0,"target":"hired","record":{"note":"dry run"},"states":["open","interviewing","offered","hired"],"pressed":["open -> Interviewing","interviewing -> Offered","offered -> Hired"],"moved_by":["project_managers","project_managers","project_managers"],"touches":3,"ask_backs":[],"outcome":{"outcome":"finished","detail":"hired"}} -{"persona":"route","need":"job-application","run":1,"target":"declined","record":{"note":"dry run"},"states":["open","interviewing","offered","declined"],"pressed":["open -> Interviewing","interviewing -> Offered","offered -> Declined"],"moved_by":["project_managers","project_managers","project_managers"],"touches":3,"ask_backs":[],"outcome":{"outcome":"finished","detail":"declined"}} -{"persona":"route","need":"job-application","run":2,"target":"declined","record":{"note":"dry run"},"states":["open","interviewing","declined"],"pressed":["open -> Interviewing","interviewing -> Declined"],"moved_by":["project_managers","project_managers"],"touches":2,"ask_backs":[],"outcome":{"outcome":"finished","detail":"declined"}} -{"persona":"route","need":"job-application","run":3,"target":"declined","record":{"note":"dry run"},"states":["open","declined"],"pressed":["open -> Declined"],"moved_by":["project_managers"],"touches":1,"ask_backs":[],"outcome":{"outcome":"finished","detail":"declined"}} -{"persona":"route","need":"change-request","run":0,"target":"declined","record":{"note":"dry run"},"states":["open","priced","declined"],"pressed":["open -> Priced","priced -> Declined"],"moved_by":["project_managers","project_managers"],"touches":2,"ask_backs":[],"outcome":{"outcome":"finished","detail":"declined"}} -{"persona":"route","need":"change-request","run":1,"target":"declined","record":{"note":"dry run"},"states":["open","priced","approved","declined"],"pressed":["open -> Priced","priced -> their own link","approved -> Declined"],"moved_by":["project_managers","submitter","project_managers"],"touches":3,"ask_backs":[],"outcome":{"outcome":"finished","detail":"declined"}} -{"persona":"route","need":"change-request","run":2,"target":"completed","record":{"note":"dry run"},"states":["open","priced","approved","completed"],"pressed":["open -> Priced","priced -> their own link","approved -> Completed"],"moved_by":["project_managers","submitter","site_managers"],"touches":3,"ask_backs":[],"outcome":{"outcome":"finished","detail":"completed"}} -{"persona":"route","need":"change-request","run":3,"target":"declined","record":{"note":"dry run"},"states":["open","declined"],"pressed":["open -> Declined"],"moved_by":["project_managers"],"touches":1,"ask_backs":[],"outcome":{"outcome":"finished","detail":"declined"}} -{"persona":"route","need":"log-phone-enquiry","run":0,"target":"won","record":{"note":"dry run"},"states":["open","surveyed","quoted","won"],"pressed":["open -> Surveyed","surveyed -> Quoted","quoted -> Won"],"moved_by":["project_managers","project_managers","project_managers"],"touches":3,"ask_backs":[],"outcome":{"outcome":"finished","detail":"won"}} -{"persona":"route","need":"log-phone-enquiry","run":1,"target":"lost","record":{"note":"dry run"},"states":["open","surveyed","quoted","lost"],"pressed":["open -> Surveyed","surveyed -> Quoted","quoted -> Lost"],"moved_by":["project_managers","project_managers","project_managers"],"touches":3,"ask_backs":[],"outcome":{"outcome":"finished","detail":"lost"}} -{"persona":"route","need":"log-phone-enquiry","run":2,"target":"lost","record":{"note":"dry run"},"states":["open","surveyed","lost"],"pressed":["open -> Surveyed","surveyed -> Lost"],"moved_by":["project_managers","project_managers"],"touches":2,"ask_backs":[],"outcome":{"outcome":"finished","detail":"lost"}} -{"persona":"route","need":"log-phone-enquiry","run":3,"target":"lost","record":{"note":"dry run"},"states":["open","lost"],"pressed":["open -> Lost"],"moved_by":["project_managers"],"touches":1,"ask_backs":[],"outcome":{"outcome":"finished","detail":"lost"}} -{"persona":"route","need":"post-job-request","run":0,"target":"awarded","record":{"note":"dry run"},"states":["open","awarded"],"pressed":["open -> Awarded"],"moved_by":["project_managers"],"touches":1,"ask_backs":[],"outcome":{"outcome":"finished","detail":"awarded"}} -{"persona":"route","need":"post-job-request","run":1,"target":"withdrawn","record":{"note":"dry run"},"states":["open","withdrawn"],"pressed":["open -> Withdrawn"],"moved_by":["project_managers"],"touches":1,"ask_backs":[],"outcome":{"outcome":"finished","detail":"withdrawn"}} -{"persona":"route","need":"submit-bid","run":0,"target":"accepted","record":{"note":"dry run"},"states":["open","shortlisted","accepted"],"pressed":["open -> Shortlisted","shortlisted -> Accepted"],"moved_by":["project_managers","project_managers"],"touches":2,"ask_backs":[],"outcome":{"outcome":"finished","detail":"accepted"}} -{"persona":"route","need":"submit-bid","run":1,"target":"declined","record":{"note":"dry run"},"states":["open","shortlisted","declined"],"pressed":["open -> Shortlisted","shortlisted -> Declined"],"moved_by":["project_managers","project_managers"],"touches":2,"ask_backs":[],"outcome":{"outcome":"finished","detail":"declined"}} -{"persona":"route","need":"submit-bid","run":2,"target":"accepted","record":{"note":"dry run"},"states":["open","accepted"],"pressed":["open -> Accepted"],"moved_by":["project_managers"],"touches":1,"ask_backs":[],"outcome":{"outcome":"finished","detail":"accepted"}} -{"persona":"route","need":"submit-bid","run":3,"target":"declined","record":{"note":"dry run"},"states":["open","declined"],"pressed":["open -> Declined"],"moved_by":["project_managers"],"touches":1,"ask_backs":[],"outcome":{"outcome":"finished","detail":"declined"}} -{"persona":"route","need":"report-site-issue","run":0,"target":"closed","record":{"note":"dry run"},"states":["open","in_hand","closed"],"pressed":["open -> In hand","in_hand -> Closed"],"moved_by":["safety_officer","safety_officer"],"touches":2,"ask_backs":[],"outcome":{"outcome":"finished","detail":"closed"}} -{"persona":"route","need":"order-materials","run":0,"target":"delivered","record":{"note":"dry run"},"states":["open","ordered","delivered"],"pressed":["open -> Ordered","ordered -> Delivered"],"moved_by":["site_managers","crew"],"touches":2,"ask_backs":[],"outcome":{"outcome":"finished","detail":"delivered"}} -{"persona":"route","need":"order-materials","run":1,"target":"refused","record":{"note":"dry run"},"states":["open","ordered","refused"],"pressed":["open -> Ordered","ordered -> Refused"],"moved_by":["site_managers","site_managers"],"touches":2,"ask_backs":[],"outcome":{"outcome":"finished","detail":"refused"}} -{"persona":"route","need":"order-materials","run":2,"target":"refused","record":{"note":"dry run"},"states":["open","refused"],"pressed":["open -> Refused"],"moved_by":["site_managers"],"touches":1,"ask_backs":[],"outcome":{"outcome":"finished","detail":"refused"}} -{"persona":"route","need":"safety-round-finding","run":0,"target":"closed","record":{"note":"dry run"},"states":["open","in_hand","closed"],"pressed":["open -> In hand","in_hand -> Closed"],"moved_by":["safety_officer","safety_officer"],"touches":2,"ask_backs":[],"outcome":{"outcome":"finished","detail":"closed"}} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/README.md b/vendor/trainer/runs/contractor-full-2026-09-22/README.md deleted file mode 100644 index 15fc050..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/README.md +++ /dev/null @@ -1,43 +0,0 @@ -# The whole contractor, tiered behind three doors, worded and scored - -`plans/contractor-full.yaml` as restructured on 2026-09-22: the six -public needs behind `your-building` (survey, build, warranty claim) -and `work-with-us` (subcontractor, job), with the neighbour's -complaint straight on the front door. Thirteen needs, six roles, -thirty pages. Built with nemotron-3.5-lightning:30b-a3b writing the -words, all pages worded, verifier green by construction (the earlier -dry build of the same plan, before doors, is in -`../contractor-full-2026-09-21/`). Visitor: qwen3:8b, one task per -call. Twenty held-out personas, twenty-two tasks. - -| Visitor could read | Routed right | -|---|---| -| Headings and descriptions | 18 of 22 | -| Headings only | 15 of 22 | - -- **One page, two headings that mean the same thing.** Behind - `work-with-us` nemotron wrote "Apply to work with us" for the - subcontractor form and "Find a job with us" for the job form. All - four personas crossed over on headings alone: both firms chose - "Find a job", both jobseekers chose "Apply to work with us". Two of - the four still crossed with descriptions. This is the clearest case - of the copy rule in the whole set: two alternatives separable only by - a distinction the business makes (a firm on a contract, a person on - the payroll) and the visitor does not. The heading has to say - "firm" and "carpenter", not "apply" and "job". -- **"Your building project" does not cover a problem.** On headings - alone, the housing board with damp and the customer with a leaking - bathroom both chose "Neighbour complaint" over "Your building - project": neither has a project, both have a complaint about a - building. The door's description rescues them; the heading fails. -- **The electrical firm chose the building door** both times, from - "Your building project" reading as the general door. -- **A warranty claim and a building problem** are one thing to the - customer with cracked render, and the page offers both. - -The two doors did their job: nobody was lost on the front door for -lack of a door. What went wrong is the wording on the pages behind -them, and the plan's own split of warranty from survey, which the -customer does not make. - -`rate.txt` is the page-by-page rate; see `rate.json`. diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/aggregates.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/aggregates.yaml deleted file mode 100644 index 35d39d4..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/aggregates.yaml +++ /dev/null @@ -1,186 +0,0 @@ -aggregates: -- bucket: applicants - initial: open - states: - declined: - event: declined - hired: - event: hired - interviewing: - event: interviewing - offered: - event: offered - open: - event: received - transitions: - interviewing: - - offered - - declined - offered: - - hired - - declined - open: - - interviewing - - declined -- bucket: bids - initial: open - states: - accepted: - event: accepted - declined: - event: declined - open: - event: received - shortlisted: - event: shortlisted - transitions: - open: - - shortlisted - - accepted - - declined - shortlisted: - - accepted - - declined -- bucket: change_orders - initial: open - states: - approved: - event: approved - completed: - event: completed - declined: - event: declined - open: - event: received - priced: - event: priced - transitions: - approved: - - completed - - declined - open: - - priced - - declined - priced: - - approved - - declined -- bucket: claims - initial: open - states: - accepted: - event: accepted - fixed: - event: fixed - inspected: - event: inspected - open: - event: received - rejected: - event: rejected - transitions: - accepted: - - fixed - - rejected - inspected: - - accepted - - rejected - open: - - inspected - - rejected -- bucket: complaints - initial: open - states: - answered: - event: answered - open: - event: received - transitions: - open: - - answered -- bucket: enquiries - initial: open - states: - lost: - event: lost - open: - event: received - quoted: - event: quoted - surveyed: - event: surveyed - won: - event: won - transitions: - open: - - surveyed - - lost - quoted: - - won - - lost - surveyed: - - quoted - - lost -- bucket: job_requests - initial: open - states: - awarded: - event: awarded - open: - event: received - withdrawn: - event: withdrawn - transitions: - open: - - awarded - - withdrawn -- bucket: material_orders - initial: open - states: - delivered: - event: delivered - open: - event: received - ordered: - event: ordered - refused: - event: refused - transitions: - open: - - ordered - - refused - ordered: - - delivered - - refused -- bucket: site_issues - initial: open - states: - closed: - event: closed - in_hand: - event: in_hand - open: - event: received - transitions: - in_hand: - - closed - open: - - in_hand -- bucket: subcontractors - initial: open - states: - approved: - event: approved - awaiting_papers: - event: awaiting_papers - declined: - event: declined - open: - event: received - transitions: - awaiting_papers: - - approved - - declined - open: - - awaiting_papers - - approved - - declined diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/answers-full.jsonl b/vendor/trainer/runs/contractor-full-2026-09-22/answers-full.jsonl deleted file mode 100644 index 6974f0d..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/answers-full.jsonl +++ /dev/null @@ -1,22 +0,0 @@ -{"choice":"Your building project","confidence":0.95,"id":"housing-board-damp@/"} -{"choice":"Report a building problem","confidence":0.95,"id":"housing-board-damp@/your-building"} -{"choice":"Your building project","confidence":0.95,"id":"buyer-before-purchase@/"} -{"choice":"Report a building problem","confidence":0.95,"id":"buyer-before-purchase@/your-building"} -{"choice":"Your building project","confidence":0.95,"id":"attic-conversion@/"} -{"choice":"Tell us about your building project","confidence":0.95,"id":"attic-conversion@/your-building"} -{"choice":"Your building project","confidence":0.95,"id":"shop-to-flat@/"} -{"choice":"Tell us about your building project","confidence":0.95,"id":"shop-to-flat@/your-building"} -{"choice":"Your building project","confidence":0.95,"id":"leaking-bathroom@/"} -{"choice":"Report a fault in our work","confidence":0.95,"id":"leaking-bathroom@/your-building"} -{"choice":"Your building project","confidence":0.95,"id":"cracked-render@/"} -{"choice":"Report a building problem","confidence":0.95,"id":"cracked-render@/your-building"} -{"choice":"Neighbour complaint","confidence":0.95,"id":"noisy-mornings@/"} -{"choice":"Neighbour complaint","confidence":0.95,"id":"blocked-driveway@/"} -{"choice":"Your building project","confidence":0.95,"id":"electrician-firm@/"} -{"choice":"Find a job with us","confidence":0.95,"id":"electrician-firm@/work-with-us"} -{"choice":"Work with Nordvik Bygg","confidence":0.95,"id":"scaffolder@/"} -{"choice":"Find a job with us","confidence":0.95,"id":"scaffolder@/work-with-us"} -{"choice":"Work with Nordvik Bygg","confidence":0.95,"id":"carpenter-jobseeker@/"} -{"choice":"Find a job with us","confidence":0.95,"id":"carpenter-jobseeker@/work-with-us"} -{"choice":"Work with Nordvik Bygg","confidence":0.95,"id":"apprentice@/"} -{"choice":"Find a job with us","confidence":0.95,"id":"apprentice@/work-with-us"} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/answers-skim.jsonl b/vendor/trainer/runs/contractor-full-2026-09-22/answers-skim.jsonl deleted file mode 100644 index 834fe95..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/answers-skim.jsonl +++ /dev/null @@ -1,22 +0,0 @@ -{"choice":"Neighbour complaint","confidence":0.95,"id":"housing-board-damp@/"} -{"choice":"Report a building problem","confidence":0.95,"id":"housing-board-damp@/your-building"} -{"choice":"Your building project","confidence":0.95,"id":"buyer-before-purchase@/"} -{"choice":"Report a building problem","confidence":0.95,"id":"buyer-before-purchase@/your-building"} -{"choice":"Your building project","confidence":0.95,"id":"attic-conversion@/"} -{"choice":"Tell us about your building project","confidence":0.95,"id":"attic-conversion@/your-building"} -{"choice":"Your building project","confidence":0.95,"id":"shop-to-flat@/"} -{"choice":"Tell us about your building project","confidence":0.95,"id":"shop-to-flat@/your-building"} -{"choice":"Neighbour complaint","confidence":0.95,"id":"leaking-bathroom@/"} -{"choice":"Report a fault in our work","confidence":0.95,"id":"leaking-bathroom@/your-building"} -{"choice":"Your building project","confidence":0.95,"id":"cracked-render@/"} -{"choice":"Report a fault in our work","confidence":0.95,"id":"cracked-render@/your-building"} -{"choice":"Neighbour complaint","confidence":0.95,"id":"noisy-mornings@/"} -{"choice":"Neighbour complaint","confidence":0.95,"id":"blocked-driveway@/"} -{"choice":"Your building project","confidence":0.95,"id":"electrician-firm@/"} -{"choice":"Find a job with us","confidence":0.95,"id":"electrician-firm@/work-with-us"} -{"choice":"Work with Nordvik Bygg","confidence":0.95,"id":"scaffolder@/"} -{"choice":"Find a job with us","confidence":0.95,"id":"scaffolder@/work-with-us"} -{"choice":"Work with Nordvik Bygg","confidence":0.95,"id":"carpenter-jobseeker@/"} -{"choice":"Apply to work with us","confidence":0.95,"id":"carpenter-jobseeker@/work-with-us"} -{"choice":"Work with Nordvik Bygg","confidence":0.95,"id":"apprentice@/"} -{"choice":"Apply to work with us","confidence":0.95,"id":"apprentice@/work-with-us"} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/build.log b/vendor/trainer/runs/contractor-full-2026-09-22/build.log deleted file mode 100644 index b0683bc..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/build.log +++ /dev/null @@ -1,46 +0,0 @@ -words: questions/clients/change-request-sent.yaml -words: questions/clients/change-request.yaml -words: questions/clients/index.yaml -words: questions/crew/index.yaml -words: questions/crew/order-materials-sent.yaml -words: questions/crew/order-materials.yaml -words: questions/crew/report-site-issue-sent.yaml -words: questions/crew/report-site-issue.yaml -words: questions/decide/change-request.yaml -words: questions/index.yaml -words: questions/project_managers/index.yaml -words: questions/project_managers/log-phone-enquiry-sent.yaml -words: questions/project_managers/log-phone-enquiry.yaml -words: questions/project_managers/post-job-request-sent.yaml -words: questions/project_managers/post-job-request.yaml -words: questions/received/build-enquiry.yaml -words: questions/received/job-application.yaml -words: questions/received/neighbour-complaint.yaml -words: questions/received/subcontractor-application.yaml -words: questions/received/survey-enquiry.yaml -words: questions/received/warranty-claim.yaml -words: questions/safety_officer/index.yaml -words: questions/safety_officer/safety-round-finding-sent.yaml -words: questions/safety_officer/safety-round-finding.yaml -words: questions/site_managers/index.yaml -words: questions/subcontractors/index.yaml -words: questions/subcontractors/submit-bid-sent.yaml -words: questions/subcontractors/submit-bid.yaml -words: questions/work-with-us/index.yaml -words: questions/your-building/index.yaml -content repo written to runs/contractor-full-2026-09-22 -OK: 30 question(s), 11 aggregate(s) valid -need "survey-enquiry": / [Your building project] -> /your-building [Report a building problem] -> "enquiries" -need "build-enquiry": / [Your building project] -> /your-building [Report a building problem] -> "enquiries" -need "warranty-claim": / [Your building project] -> /your-building [Report a fault in our work] -> "claims" -need "neighbour-complaint": / [Neighbour complaint] -> "complaints" -need "subcontractor-application": / [Work with Nordvik Bygg] -> /work-with-us [Apply to work with us] -> "subcontractors" -need "job-application": / [Work with Nordvik Bygg] -> /work-with-us [Find a job with us] -> "applicants" -need "change-request": /clients/change-request [Request a change to your building work] -> "change_orders" -need "log-phone-enquiry": /project_managers/log-phone-enquiry [Log a phone enquiry] -> "enquiries" -need "post-job-request": /project_managers/post-job-request [Give subcontractors a job to price] -> "job_requests" -need "submit-bid": /subcontractors/submit-bid [Submit a bid on a job] -> "bids" -need "report-site-issue": /crew/report-site-issue [Report a safety finding on site] -> "site_issues" -need "order-materials": /crew/order-materials [Order materials for the site] -> "material_orders" -need "safety-round-finding": /safety_officer/safety-round-finding [Report what you find on site] -> "site_issues" -OK: 13 need(s) structurally met, 0 planned, 20 persona(s) diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/01-questions_clients_change-request-sent.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/01-questions_clients_change-request-sent.yaml.md deleted file mode 100644 index 18ba537..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/01-questions_clients_change-request-sent.yaml.md +++ /dev/null @@ -1,54 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/clients/change-request-sent.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to form", - "description": "We have received your change request. A project manager will review it shortly.", - "next_description": "We will get back to you with a price and next steps within 2 business days.", - "next_heading": "What happens next?", - "question": "What happens after I submit?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/02-questions_clients_change-request.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/02-questions_clients_change-request.yaml.md deleted file mode 100644 index 87cb925..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/02-questions_clients_change-request.yaml.md +++ /dev/null @@ -1,68 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/clients/change-request.yaml -It is a page only one role inside the business can open, holding one form. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "change": "", - "email": "", - "job_address": "", - "needed_by": "" - }, - "page_description": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "button": "Submit change", - "description": "Tell us what you want changed so we can price it and get it done.", - "form_title": "Change request", - "heading": "Request a change to your building work", - "labels": { - "change": "What needs to change?", - "email": "Your email", - "job_address": "Building address", - "needed_by": "When do you need this?" - }, - "page_description": "A client can ask for a change to an ongoing job. We price it and do it if you accept.", - "question": "What needs to change in your project?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/03-questions_clients_index.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/03-questions_clients_index.yaml.md deleted file mode 100644 index cc2c98d..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/03-questions_clients_index.yaml.md +++ /dev/null @@ -1,205 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/clients/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": {}, - "confirm": "", - "description": "", - "links": { - "change-request": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "buckets": { - "door your-building": [ - { - "heading": "Survey enquiry", - "description": "A housing board or private owner with a problem in a building wants someone qualified to come and look at it and say what it takes.", - "moves": { - "open->surveyed": "Surveyed", - "surveyed->quoted": "Quoted", - "quoted->won": "Won", - "quoted->lost": "Lost" - } - }, - { - "heading": "Build enquiry", - "description": "An owner who already knows what they want built or changed wants drawings, a permit application and a price.", - "moves": { - "open->surveyed": "Surveyed", - "surveyed->quoted": "Quoted", - "quoted->won": "Won", - "quoted->lost": "Lost" - } - }, - { - "heading": "Warranty claim", - "description": "A past customer who has found a fault in work we handed over wants us to come back, look at it, and put it right.", - "moves": { - "open->inspected": "Inspected", - "inspected->accepted": "Accepted", - "accepted->fixed": "Fixed", - "accepted->rejected": "Rejected" - } - } - ], - "door work-with-us": [ - { - "heading": "Subcontractor application", - "description": "A trade firm doing electrical, plumbing or scaffolding work wants to be approved once, and then be called when a job needs them.", - "moves": { - "open->awaiting_papers": "Awaiting papers", - "awaiting_papers->approved": "Approved", - "approved->declined": "Declined" - } - }, - { - "heading": "Job application", - "description": "A carpenter, bricklayer or apprentice looking for work wants to be considered, without writing a letter.", - "moves": { - "open->interviewing": "Interviewing", - "interviewing->offered": "Offered", - "offered->hired": "Hired", - "offered->declined": "Declined" - } - } - ], - "log-phone-enquiry": [ - { - "heading": "Phone enquiry", - "description": "A project manager who just took a call or a text about a building wants the enquiry written down before it gets lost.", - "moves": { - "open->surveyed": "Surveyed", - "surveyed->quoted": "Quoted", - "quoted->won": "Won", - "quoted->lost": "Lost" - } - } - ], - "post-job-request": [ - { - "heading": "Post job to subcontractor", - "description": "A project manager with work to hand to a subcontractor wants approved subcontractors to see the job and answer with a price.", - "moves": { - "open->awarded": "Awarded", - "awarded->withdrawn": "Withdrawn" - } - } - ], - "submit-bid": [ - { - "heading": "Submit bid", - "description": "An approved subcontractor who has seen a job they can take wants to say yes with a price and a start date.", - "moves": { - "open->shortlisted": "Shortlisted", - "shortlisted->accepted": "Accepted", - "shortlisted->declined": "Declined" - } - } - ], - "change-request": [ - { - "heading": "Change request", - "description": "A client whose job is under way and who wants something changed wants a price for the change, and the change done if they accept it.", - "moves": { - "open->priced": "Priced", - "priced->approved": "Approved", - "approved->completed": "Completed", - "approved->declined": "Declined" - } - } - ], - "neighbour-complaint": [ - { - "heading": "Neighbour complaint", - "description": "Someone living or working next to one of our building sites wants the noise, dust or blocked access dealt with, and an answer.", - "moves": { - "open->answered": "Answered" - } - } - ], - "order-materials": [ - { - "heading": "Order materials", - "description": "A carpenter or bricklayer who is about to run out of something wants it ordered and on site before work stops.", - "moves": { - "open->ordered": "Ordered", - "ordered->delivered": "Delivered", - "delivered->refused": "Refused" - } - } - ], - "report-site-issue": [ - { - "heading": "Report site issue", - "description": "Anyone on site, ours or a subcontractor's, on a phone with gloves on wants to report a hazard, a near miss or wrong materials before they forget.", - "moves": { - "open->in_hand": "In hand", - "in_hand->closed": "Closed" - } - } - ], - "safety-round-finding": [ - { - "heading": "Safety round finding", - "description": "The safety officer walking a site on the weekly round wants each thing found written down where the reported issues already are.", - "moves": { - "open->in_hand": "In hand", - "in_hand->closed": "Closed" - } - } - ] - }, - "confirm": "Continue", - "description": "Manage your cases and move them through their stages.", - "links": { - "change-request": { - "button": "Change request", - "description": "A client whose job is under way and who wants something changed wants a price for the change, and the change done if they accept it.", - "heading": "Change request" - } - }, - "question": "What do you need to do today?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/04-questions_crew_index.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/04-questions_crew_index.yaml.md deleted file mode 100644 index c48be3a..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/04-questions_crew_index.yaml.md +++ /dev/null @@ -1,92 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/crew/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "material_orders": { - "description": "", - "heading": "", - "moves": { - "ordered->delivered": "delivered>" - } - } - }, - "confirm": "", - "description": "", - "links": { - "order-materials": { - "button": "", - "description": "", - "heading": "" - }, - "report-site-issue": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "buckets": { - "material_orders": { - "description": "Order materials for a job in progress. See what's on its way and what arrived.", - "heading": "Order materials for building", - "moves": { - "ordered->delivered": "Mark delivered" - } - } - }, - "confirm": "Confirm", - "description": "Manage the flow of cases from enquiry to completion. See what stage each case is at and move it forward.", - "links": { - "order-materials": { - "button": "Order materials", - "description": "Order materials for the job you are working on. Track what has been delivered.", - "heading": "Order materials for building" - }, - "report-site-issue": { - "button": "Report issue", - "description": "Log a hazard, near miss or wrong materials found on site. Keep the weekly safety round up to date.", - "heading": "Report a site issue" - } - }, - "question": "What case do you need to move forward?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/05-questions_crew_order-materials-sent.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/05-questions_crew_order-materials-sent.yaml.md deleted file mode 100644 index 183a3ee..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/05-questions_crew_order-materials-sent.yaml.md +++ /dev/null @@ -1,54 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/crew/order-materials-sent.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to order-materials", - "description": "We have received your request. The site manager will process it shortly.", - "next_description": "You will receive a confirmation once the materials are on site.", - "next_heading": "Materials ordered", - "question": "Will the materials arrive on time?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/06-questions_crew_order-materials.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/06-questions_crew_order-materials.yaml.md deleted file mode 100644 index 3b9136a..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/06-questions_crew_order-materials.yaml.md +++ /dev/null @@ -1,66 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/crew/order-materials.yaml -It is a page only one role inside the business can open, holding one form. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "needed_by": "", - "site_address": "", - "what": "" - }, - "page_description": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "button": "Order now", - "description": "Tell us what you need and where the site is so we can get it on its way.", - "form_title": "Order materials", - "heading": "Order materials for the site", - "labels": { - "needed_by": "Needed by", - "site_address": "Site address", - "what": "What do you need?" - }, - "page_description": "Order materials before the site runs out.", - "question": "What do you need on site?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/07-questions_crew_report-site-issue-sent.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/07-questions_crew_report-site-issue-sent.yaml.md deleted file mode 100644 index e2a3432..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/07-questions_crew_report-site-issue-sent.yaml.md +++ /dev/null @@ -1,54 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/crew/report-site-issue-sent.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to form", - "description": "Your report has been sent to our safety officer. They will review the issue and get back to you.", - "next_description": "We will review the reported issue and update its status. You will be notified when it is resolved.", - "next_heading": "What happens next", - "question": "What happens after I submit?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/08-questions_crew_report-site-issue.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/08-questions_crew_report-site-issue.yaml.md deleted file mode 100644 index 3a23134..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/08-questions_crew_report-site-issue.yaml.md +++ /dev/null @@ -1,66 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/crew/report-site-issue.yaml -It is a page only one role inside the business can open, holding one form. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "kind": "", - "what_happened": "", - "where": "" - }, - "page_description": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "button": "Report issue", - "description": "Write down a hazard, near miss, or wrong materials from the site so the safety officer can fix it.", - "form_title": "Report a site issue", - "heading": "Report a safety finding on site", - "labels": { - "kind": "What kind of issue", - "what_happened": "What happened", - "where": "Where on site" - }, - "page_description": "Report a hazard, near miss, or wrong materials found during a site visit.", - "question": "What safety issue did you find?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/09-questions_decide_change-request.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/09-questions_decide_change-request.yaml.md deleted file mode 100644 index 7f17bb8..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/09-questions_decide_change-request.yaml.md +++ /dev/null @@ -1,72 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/decide/change-request.yaml -It is a page the person who sent a form reaches later, through a private link, to make a decision that is theirs: under `moves`, each entry is one thing they can decide. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "moves": { - "approved": { - "button": "", - "description": "", - "heading": "" - }, - "declined": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "description": "You have submitted a change request for your ongoing project. Use this page to make your decision.", - "moves": { - "approved": { - "button": "Accept change", - "description": "The change will be added to the project scope and price. Work will proceed according to the new agreement.", - "heading": "Approve the change request" - }, - "declined": { - "button": "Reject change", - "description": "The change will not be added to the project. The original scope and price remain unchanged.", - "heading": "Decline the change request" - } - }, - "question": "What is your decision on this change request?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/10-questions_index.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/10-questions_index.yaml.md deleted file mode 100644 index ecfab44..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/10-questions_index.yaml.md +++ /dev/null @@ -1,98 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/index.yaml -It is the front door: the first page any visitor sees. `question` is the page's one question. Under `doors`, each entry is one alternative that leads to a page of its own for one kind of visitor: its heading must let that visitor recognise themselves from the heading alone. Under `needs`, each entry is one alternative with a form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "doors": { - "work-with-us": { - "button": "", - "description": "", - "heading": "" - }, - "your-building": { - "button": "", - "description": "", - "heading": "" - } - }, - "needs": { - "neighbour-complaint": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "reach_me_on": "", - "site_address": "", - "what_is_wrong": "" - } - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "description": "Find the right path for your building or your career with Nordvik Bygg.", - "doors": { - "work-with-us": { - "button": "Join us", - "description": "Apply to work with us as a subcontractor or find a job as a carpenter or apprentice.", - "heading": "Work with Nordvik Bygg" - }, - "your-building": { - "button": "Start here", - "description": "Report a problem, get a survey, or start a new build project.", - "heading": "Your building project" - } - }, - "needs": { - "neighbour-complaint": { - "button": "Report issue", - "description": "Let us know about noise, dust, or access problems from a building site near you.", - "form_title": "Contact details", - "heading": "Neighbour complaint", - "labels": { - "reach_me_on": "Contact method", - "site_address": "Building address", - "what_is_wrong": "Describe the issue" - } - } - }, - "question": "What brings you to Nordvik Bygg today?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/11-questions_project_managers_index.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/11-questions_project_managers_index.yaml.md deleted file mode 100644 index acd9bd8..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/11-questions_project_managers_index.yaml.md +++ /dev/null @@ -1,246 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/project_managers/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "applicants": { - "description": "", - "heading": "", - "moves": { - "interviewing->declined": "declined>", - "interviewing->offered": "offered>", - "offered->declined": "declined>", - "offered->hired": "hired>", - "open->declined": "declined>", - "open->interviewing": "interviewing>" - } - }, - "bids": { - "description": "", - "heading": "", - "moves": { - "open->accepted": "accepted>", - "open->declined": "declined>", - "open->shortlisted": "shortlisted>", - "shortlisted->accepted": "accepted>", - "shortlisted->declined": "declined>" - } - }, - "change_orders": { - "description": "", - "heading": "", - "moves": { - "approved->declined": "declined>", - "open->declined": "declined>", - "open->priced": "priced>", - "priced->declined": "declined>" - } - }, - "claims": { - "description": "", - "heading": "", - "moves": { - "accepted->rejected": "rejected>", - "inspected->accepted": "accepted>", - "inspected->rejected": "rejected>", - "open->rejected": "rejected>" - } - }, - "complaints": { - "description": "", - "heading": "", - "moves": {} - }, - "enquiries": { - "description": "", - "heading": "", - "moves": { - "open->lost": "lost>", - "open->surveyed": "surveyed>", - "quoted->lost": "lost>", - "quoted->won": "won>", - "surveyed->lost": "lost>", - "surveyed->quoted": "quoted>" - } - }, - "job_requests": { - "description": "", - "heading": "", - "moves": { - "open->awarded": "awarded>", - "open->withdrawn": "withdrawn>" - } - }, - "site_issues": { - "description": "", - "heading": "", - "moves": {} - }, - "subcontractors": { - "description": "", - "heading": "", - "moves": { - "awaiting_papers->approved": "approved>", - "awaiting_papers->declined": "declined>", - "open->approved": "approved>", - "open->awaiting_papers": "awaiting_papers>", - "open->declined": "declined>" - } - } - }, - "confirm": "", - "description": "", - "links": { - "log-phone-enquiry": { - "button": "", - "description": "", - "heading": "" - }, - "post-job-request": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "buckets": { - "applicants": { - "description": "Track carpenter and apprentice applications from open to hired, with interview steps in between.", - "heading": "Applicant cases", - "moves": { - "interviewing->declined": "Mark declined", - "interviewing->offered": "Offer role", - "offered->declined": "Reject offer", - "offered->hired": "Confirm hire", - "open->declined": "Mark declined", - "open->interviewing": "Start interview" - } - }, - "bids": { - "description": "Handle subcontractor bids from open submission to accepted or declined.", - "heading": "Bid management", - "moves": { - "open->accepted": "Accept bid", - "open->declined": "Reject bid", - "open->shortlisted": "Shortlist bid", - "shortlisted->accepted": "Accept shortlist", - "shortlisted->declined": "Reject shortlist" - } - }, - "change_orders": { - "description": "Track client change requests from open inquiry through pricing and completion.", - "heading": "Change order cases", - "moves": { - "approved->declined": "Reject change", - "open->declined": "Reject request", - "open->priced": "Price the change", - "priced->declined": "Reject priced change" - } - }, - "claims": { - "description": "Handle warranty claims from inspection through to acceptance or rejection of the fix.", - "heading": "Warranty claim cases", - "moves": { - "accepted->rejected": "Reject fix", - "inspected->accepted": "Accept fix", - "inspected->rejected": "Reject fix", - "open->rejected": "Reject claim" - } - }, - "complaints": { - "description": "Record and resolve neighbour complaints about site noise, dust or access.", - "heading": "Neighbour complaints", - "moves": {} - }, - "enquiries": { - "description": "Track building enquiries from initial contact through survey, quote and win/lose outcome.", - "heading": "Building enquiries", - "moves": { - "open->lost": "Mark lost", - "open->surveyed": "Book survey", - "quoted->lost": "Mark lost", - "quoted->won": "Win work", - "surveyed->lost": "Mark lost", - "surveyed->quoted": "Send quote" - } - }, - "job_requests": { - "description": "Manage internal job assignments for subcontractors from open through to awarded or withdrawn.", - "heading": "Job requests", - "moves": { - "open->awarded": "Award job", - "open->withdrawn": "Withdraw job" - } - }, - "site_issues": { - "description": "Log safety and quality issues reported from site, through to closure.", - "heading": "Site issue log", - "moves": {} - }, - "subcontractors": { - "description": "Track trade firm applications from open through paper review to approved or declined status.", - "heading": "Subcontractor cases", - "moves": { - "awaiting_papers->approved": "Approve firm", - "awaiting_papers->declined": "Decline firm", - "open->approved": "Approve application", - "open->awaiting_papers": "Await papers", - "open->declined": "Decline application" - } - } - }, - "confirm": "Confirm", - "description": "Manage and track all project enquiries, applications and site issues from one desk.", - "links": { - "log-phone-enquiry": { - "button": "Log call", - "description": "Record a new building enquiry or client call before details are lost.", - "heading": "Log phone enquiry" - }, - "post-job-request": { - "button": "Post job", - "description": "Send an approved job to subcontractors for bidding.", - "heading": "Post job request" - } - }, - "question": "What case do you want to work on?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/12-questions_project_managers_log-phone-enquiry-sent.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/12-questions_project_managers_log-phone-enquiry-sent.yaml.md deleted file mode 100644 index 9009327..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/12-questions_project_managers_log-phone-enquiry-sent.yaml.md +++ /dev/null @@ -1,54 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/project_managers/log-phone-enquiry-sent.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to enquiry", - "description": "Your phone call has been recorded. We will review it and get back to you.", - "next_description": "We will call you to discuss the issue and decide on the next steps.", - "next_heading": "What happens next?", - "question": "Did we capture everything you needed?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/13-questions_project_managers_log-phone-enquiry.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/13-questions_project_managers_log-phone-enquiry.yaml.md deleted file mode 100644 index 2d975c1..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/13-questions_project_managers_log-phone-enquiry.yaml.md +++ /dev/null @@ -1,68 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/project_managers/log-phone-enquiry.yaml -It is a page only one role inside the business can open, holding one form. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "address": "", - "caller": "", - "phone": "", - "problem": "" - }, - "page_description": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "button": "Log call", - "description": "Write down the enquiry so it doesn't get lost. One call, one record.", - "form_title": "Phone enquiry log", - "heading": "Log a phone enquiry", - "labels": { - "address": "Address or site location", - "caller": "Your name", - "phone": "Phone number", - "problem": "What was said" - }, - "page_description": "Record a building enquiry taken over the phone.", - "question": "What was said on the call?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/14-questions_project_managers_post-job-request-sent.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/14-questions_project_managers_post-job-request-sent.yaml.md deleted file mode 100644 index fa1fda5..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/14-questions_project_managers_post-job-request-sent.yaml.md +++ /dev/null @@ -1,54 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/project_managers/post-job-request-sent.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to list", - "description": "Your post-job request has been sent to our project managers. They will review the details and reach out to approved subcontractors.", - "next_description": "Once a subcontractor accepts the job, the status will update and you’ll be able to track the progress.", - "next_heading": "Awaiting subcontractor response", - "question": "Who will take on this job?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/15-questions_project_managers_post-job-request.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/15-questions_project_managers_post-job-request.yaml.md deleted file mode 100644 index 9cc2eb2..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/15-questions_project_managers_post-job-request.yaml.md +++ /dev/null @@ -1,68 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/project_managers/post-job-request.yaml -It is a page only one role inside the business can open, holding one form. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "site_address": "", - "start": "", - "trade": "", - "work": "" - }, - "page_description": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "button": "Submit request", - "description": "Tell us about the job you have ready to hand to a subcontractor.", - "form_title": "Post a job for subcontractors", - "heading": "Give subcontractors a job to price", - "labels": { - "site_address": "Site address", - "start": "When work starts", - "trade": "Trade needed", - "work": "Work description" - }, - "page_description": "Post a job so approved subcontractors can price it.", - "question": "What job do you have for a subcontractor?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/16-questions_received_build-enquiry.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/16-questions_received_build-enquiry.yaml.md deleted file mode 100644 index f8d9236..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/16-questions_received_build-enquiry.yaml.md +++ /dev/null @@ -1,54 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/received/build-enquiry.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to form", - "description": "Your build-enquiry has been received. We will review the details and get back to you.", - "next_description": "A project manager will contact you to discuss the scope and arrange a site survey.", - "next_heading": "Next steps: survey and quote", - "question": "What happens after I submit?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/17-questions_received_job-application.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/17-questions_received_job-application.yaml.md deleted file mode 100644 index d5f5340..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/17-questions_received_job-application.yaml.md +++ /dev/null @@ -1,54 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/received/job-application.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to applications", - "description": "Your application has been received. We review carpenter and apprentice requests weekly.", - "next_description": "We will contact you if your profile matches an open position. No need to send a separate cover letter.", - "next_heading": "What happens next", - "question": "What happens after I apply?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/18-questions_received_neighbour-complaint.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/18-questions_received_neighbour-complaint.yaml.md deleted file mode 100644 index 289e0ca..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/18-questions_received_neighbour-complaint.yaml.md +++ /dev/null @@ -1,54 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/received/neighbour-complaint.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to site", - "description": "Your neighbour complaint has been received. We will look into it and get back to you.", - "next_description": "A site manager will review your report and find a solution.", - "next_heading": "What happens next?", - "question": "What issue are you reporting?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/19-questions_received_subcontractor-application.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/19-questions_received_subcontractor-application.yaml.md deleted file mode 100644 index 9bd554f..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/19-questions_received_subcontractor-application.yaml.md +++ /dev/null @@ -1,54 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/received/subcontractor-application.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to form", - "description": "Your subcontractor application has been received. We will review it and contact you if we need more information.", - "next_description": "Project managers check approved subcontractors for new jobs. Once approved, you will receive job invitations with prices and start dates.", - "next_heading": "What happens next", - "question": "What happens after I submit?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/20-questions_received_survey-enquiry.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/20-questions_received_survey-enquiry.yaml.md deleted file mode 100644 index e55f1b8..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/20-questions_received_survey-enquiry.yaml.md +++ /dev/null @@ -1,54 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/received/survey-enquiry.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to form", - "description": "Your survey request has been received. We will review the details and assign a project manager to assess the building.", - "next_description": "A project manager will contact you within 2 business days to schedule a site visit and provide a quotation.", - "next_heading": "Next steps: Survey and quote", - "question": "What happens after I submit?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/21-questions_received_warranty-claim.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/21-questions_received_warranty-claim.yaml.md deleted file mode 100644 index ce42a93..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/21-questions_received_warranty-claim.yaml.md +++ /dev/null @@ -1,54 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/received/warranty-claim.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to enquiries", - "description": "Your warranty claim has been received. We will review the details and get back to you.", - "next_description": "A project manager will inspect the issue and decide on the next steps.", - "next_heading": "What happens next", - "question": "What seems to be the problem?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/22-questions_safety_officer_index.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/22-questions_safety_officer_index.yaml.md deleted file mode 100644 index 8d81b47..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/22-questions_safety_officer_index.yaml.md +++ /dev/null @@ -1,84 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/safety_officer/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "site_issues": { - "description": "", - "heading": "", - "moves": { - "in_hand->closed": "closed>", - "open->in_hand": "in_hand>" - } - } - }, - "confirm": "", - "description": "", - "links": { - "safety-round-finding": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "buckets": { - "site_issues": { - "description": "Report and resolve safety issues, near misses, or material problems found during daily work.", - "heading": "Report site safety issues", - "moves": { - "in_hand->closed": "Mark as closed", - "open->in_hand": "Start reporting" - } - } - }, - "confirm": "Continue", - "description": "A desk for the safety officer to track and resolve reported issues from building sites.", - "links": { - "safety-round-finding": { - "button": "View weekly round", - "description": "See all issues found during the site safety walkround.", - "heading": "Safety walkround findings" - } - }, - "question": "What safety issues need reporting or closing today?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/23-questions_safety_officer_safety-round-finding-sent.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/23-questions_safety_officer_safety-round-finding-sent.yaml.md deleted file mode 100644 index d7904b2..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/23-questions_safety_officer_safety-round-finding-sent.yaml.md +++ /dev/null @@ -1,54 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/safety_officer/safety-round-finding-sent.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to form", - "description": "The safety officer has received your report. They will review the issue during their next site walk.", - "next_description": "The issue will be marked as closed once the officer has verified the fix or the hazard has been removed.", - "next_heading": "Issue recorded and reviewed", - "question": "What happens after I submit a safety report?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/24-questions_safety_officer_safety-round-finding.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/24-questions_safety_officer_safety-round-finding.yaml.md deleted file mode 100644 index b3f3718..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/24-questions_safety_officer_safety-round-finding.yaml.md +++ /dev/null @@ -1,66 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/safety_officer/safety-round-finding.yaml -It is a page only one role inside the business can open, holding one form. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "kind": "", - "what_happened": "", - "where": "" - }, - "page_description": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "button": "Log finding", - "description": "Report a hazard, near miss or wrong materials from the site. This helps keep everyone safe and the job on track.", - "form_title": "Safety round finding", - "heading": "Report what you find on site", - "labels": { - "kind": "Issue kind", - "what_happened": "What happened", - "where": "Where on site" - }, - "page_description": "Use this form to record safety issues found during the weekly site round.", - "question": "What safety issue did you find?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/25-questions_site_managers_index.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/25-questions_site_managers_index.yaml.md deleted file mode 100644 index dcc9d58..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/25-questions_site_managers_index.yaml.md +++ /dev/null @@ -1,181 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/site_managers/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "bids": { - "description": "", - "heading": "", - "moves": {} - }, - "change_orders": { - "description": "", - "heading": "", - "moves": { - "approved->completed": "completed>" - } - }, - "claims": { - "description": "", - "heading": "", - "moves": { - "accepted->fixed": "fixed>", - "open->inspected": "inspected>" - } - }, - "complaints": { - "description": "", - "heading": "", - "moves": { - "open->answered": "answered>" - } - }, - "enquiries": { - "description": "", - "heading": "", - "moves": { - "open->surveyed": "surveyed>" - } - }, - "job_requests": { - "description": "", - "heading": "", - "moves": {} - }, - "material_orders": { - "description": "", - "heading": "", - "moves": { - "open->ordered": "ordered>", - "open->refused": "refused>", - "ordered->delivered": "delivered>", - "ordered->refused": "refused>" - } - }, - "site_issues": { - "description": "", - "heading": "", - "moves": { - "open->in_hand": "in_hand>" - } - }, - "subcontractors": { - "description": "", - "heading": "", - "moves": {} - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "buckets": { - "bids": { - "description": "Approved subcontractors review jobs and submit prices. Submit-bid stage moves to shortlisted or declined.", - "heading": "Subcontractor bids", - "moves": {} - }, - "change_orders": { - "description": "Clients request changes to ongoing jobs. Prices are set and changes are completed or declined.", - "heading": "Change requests", - "moves": { - "approved->completed": "Mark done" - } - }, - "claims": { - "description": "Past customers report faults. Issues are inspected and fixed or rejected.", - "heading": "Warranty claims", - "moves": { - "accepted->fixed": "Mark fixed", - "open->inspected": "Book inspection" - } - }, - "complaints": { - "description": "Neighbour issues on site are logged and answered.", - "heading": "Neighbour complaints", - "moves": { - "open->answered": "Mark answered" - } - }, - "enquiries": { - "description": "New building or survey requests are logged and moved through stages to a decision.", - "heading": "New enquiries", - "moves": { - "open->surveyed": "Mark surveyed" - } - }, - "job_requests": { - "description": "Carpenters and apprentices apply for work. Stages track from interview to hire.", - "heading": "Job applications", - "moves": {} - }, - "material_orders": { - "description": "Carpenters order materials to keep work running. Orders are tracked from request to delivery.", - "heading": "Material orders", - "moves": { - "open->ordered": "Order it", - "open->refused": "Cancel order", - "ordered->delivered": "Mark delivered", - "ordered->refused": "Cancel delivery" - } - }, - "site_issues": { - "description": "Hazards and near misses are reported and closed off the weekly safety round.", - "heading": "Site safety issues", - "moves": { - "open->in_hand": "Log it" - } - }, - "subcontractors": { - "description": "Approved trade firms are listed and jobs are awarded to them.", - "heading": "Approved subcontractors", - "moves": {} - } - }, - "confirm": "Save changes", - "description": "Manage the cases assigned to the site manager role.", - "links": { - "project_managers": "Project managers", - "safety_officer": "Safety officer" - }, - "question": "What case needs updating?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/26-questions_subcontractors_index.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/26-questions_subcontractors_index.yaml.md deleted file mode 100644 index d302f42..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/26-questions_subcontractors_index.yaml.md +++ /dev/null @@ -1,86 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/subcontractors/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "job_requests": { - "description": "", - "heading": "", - "moves": {} - } - }, - "confirm": "", - "description": "", - "links": { - "submit-bid": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "buckets": { - "job_requests": { - "description": "Cases from trade firms and carpenters looking for work or to become approved subcontractors.", - "heading": "Work with us", - "moves": { - "open->interviewing": "Invite to interview", - "interviewing->offered": "Offer job", - "offered->hired": "Hire", - "offered->declined": "Decline", - "open->awaiting_papers": "Await papers", - "awaiting_papers->approved": "Approve", - "awaiting_papers->declined": "Decline" - } - } - }, - "confirm": "Save", - "description": "Manage enquiries from trade firms and job applicants. Move cases through stages to hire carpenters or approve subcontractors.", - "links": { - "submit-bid": { - "button": "Submit bid", - "description": "Approve subcontractors can see the job and reply with a price and start date.", - "heading": "Submit a bid" - } - }, - "question": "What enquiry do you want to handle?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/27-questions_subcontractors_submit-bid-sent.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/27-questions_subcontractors_submit-bid-sent.yaml.md deleted file mode 100644 index a11b936..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/27-questions_subcontractors_submit-bid-sent.yaml.md +++ /dev/null @@ -1,54 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/subcontractors/submit-bid-sent.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to form", - "description": "Your bid has been submitted. Awaiting review by our project managers.", - "next_description": "We will review your submission and get back to you within 3 business days.", - "next_heading": "What happens next?", - "question": "What happens after I submit?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/28-questions_subcontractors_submit-bid.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/28-questions_subcontractors_submit-bid.yaml.md deleted file mode 100644 index cdd8107..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/28-questions_subcontractors_submit-bid.yaml.md +++ /dev/null @@ -1,66 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/subcontractors/submit-bid.yaml -It is a page only one role inside the business can open, holding one form. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "can_start": "", - "job": "", - "price": "" - }, - "page_description": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "button": "Submit bid", - "description": "Tell us your price and when you can start so we can review your offer.", - "form_title": "Submit a bid", - "heading": "Submit a bid on a job", - "labels": { - "can_start": "Can start", - "job": "Job reference", - "price": "Your price" - }, - "page_description": "Approved subcontractors use this form to place a bid on an open job.", - "question": "Will you submit a bid on this job?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/29-questions_work-with-us_index.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/29-questions_work-with-us_index.yaml.md deleted file mode 100644 index 1a4920f..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/29-questions_work-with-us_index.yaml.md +++ /dev/null @@ -1,104 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/work-with-us/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "job-application": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "experience": "", - "name": "", - "phone": "", - "trade": "" - } - }, - "subcontractor-application": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "company": "", - "contact_email": "", - "insurance_confirmed": "", - "registration_number": "", - "trade": "", - "trade_approval": "" - } - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "description": "We are a small team running rehabilitation and construction projects. We are looking for people who want to join us, or who need our help with a building.", - "needs": { - "job-application": { - "button": "Apply now", - "description": "Tell us who you are and what you can do. No letter needed.", - "form_title": "Job application", - "heading": "Find a job with us", - "labels": { - "experience": "Your experience", - "name": "Your name", - "phone": "Your phone", - "trade": "Your trade" - } - }, - "subcontractor-application": { - "button": "Apply now", - "description": "Send us your details so we can check if you are a fit for our projects.", - "form_title": "Subcontractor application", - "heading": "Apply to work with us", - "labels": { - "company": "Company name", - "contact_email": "Contact email", - "insurance_confirmed": "Insurance confirmed", - "registration_number": "Registration number", - "trade": "Your trade", - "trade_approval": "Trade approval" - } - } - }, - "question": "Do you want to work with us, or do you need our help with a building?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/llm/30-questions_your-building_index.yaml.md b/vendor/trainer/runs/contractor-full-2026-09-22/llm/30-questions_your-building_index.yaml.md deleted file mode 100644 index bf98d60..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/llm/30-questions_your-building_index.yaml.md +++ /dev/null @@ -1,130 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: Twelve people who survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with their own carpenters plus subcontractors for electrical, plumbing and scaffolding. Project managers win and run the jobs, site managers run each building site day to day, and one safety officer owns everything reported from site. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- door your-building: for an owner, a housing board or a past customer with a building; behind it: survey-enquiry, build-enquiry, warranty-claim -- door work-with-us: for a trade firm, a carpenter or an apprentice who wants work from us; behind it: subcontractor-application, job-application -- survey-enquiry: a housing board or private owner with a problem in a building - wants: someone qualified to come and look at it and say what it takes. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- build-enquiry: an owner who already knows what they want built or changed - wants: drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- warranty-claim: a past customer who has found a fault in work we handed over - wants: us to come back, look at it, and put it right. Handled by project_managers. Stages: open -> inspected -> accepted -> fixed -> rejected. -- neighbour-complaint: someone living or working next to one of our building sites - wants: the noise, dust or blocked access dealt with, and an answer. Handled by site_managers. Stages: open -> answered. -- subcontractor-application: a trade firm doing electrical, plumbing or scaffolding work - wants: to be approved once, and then be called when a job needs them. Handled by project_managers. Stages: open -> awaiting_papers -> approved -> declined. -- job-application: a carpenter, bricklayer or apprentice looking for work - wants: to be considered, without writing a letter. Handled by project_managers. Stages: open -> interviewing -> offered -> hired -> declined. -- change-request: a client whose job is under way and who wants something changed - wants: a price for the change, and the change done if they accept it. Handled by project_managers. Stages: open -> priced -> approved -> completed -> declined. -- log-phone-enquiry: a project manager who just took a call or a text about a building - wants: the enquiry written down before it gets lost. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- post-job-request: a project manager with work to hand to a subcontractor - wants: approved subcontractors to see the job and answer with a price. Handled by project_managers. Stages: open -> awarded -> withdrawn. -- submit-bid: an approved subcontractor who has seen a job they can take - wants: to say yes with a price and a start date. Handled by project_managers. Stages: open -> shortlisted -> accepted -> declined. -- report-site-issue: anyone on site, ours or a subcontractor's, on a phone with gloves on - wants: to report a hazard, a near miss or wrong materials before they forget. Handled by safety_officer. Stages: open -> in_hand -> closed. -- order-materials: a carpenter or bricklayer who is about to run out of something - wants: it ordered and on site before work stops. Handled by site_managers. Stages: open -> ordered -> delivered -> refused. -- safety-round-finding: the safety officer walking a site on the weekly round - wants: each thing found written down where the reported issues already are. Handled by safety_officer. Stages: open -> in_hand -> closed. - -The page: questions/your-building/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "build-enquiry": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "address": "", - "name": "", - "phone": "", - "project": "", - "timeframe": "" - } - }, - "survey-enquiry": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "access": "", - "address": "", - "name": "", - "phone": "", - "problem": "" - } - }, - "warranty-claim": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "address": "", - "fault": "", - "handed_over": "", - "name": "", - "phone": "" - } - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "description": "What brings you to us today?", - "needs": { - "build-enquiry": { - "button": "Start build", - "description": "You know what you want changed or built. We’ll draw it, handle the permit, and price it for you.", - "form_title": "Your building project", - "heading": "Tell us about your building project", - "labels": { - "address": "Building address", - "name": "Your name", - "phone": "Phone number", - "project": "Project type", - "timeframe": "When you want it done" - } - }, - "survey-enquiry": { - "button": "Get it surveyed", - "description": "You have a problem in your building. We’ll send someone qualified to look at it and tell you what it takes to fix it.", - "form_title": "Survey your building", - "heading": "Report a building problem", - "labels": { - "access": "How to get to the site", - "address": "Building address", - "name": "Your name", - "phone": "Phone number", - "problem": "What is the problem?" - } - }, - "warranty-claim": { - "button": "Claim warranty", - "description": "You found a fault in work we did. We’ll come back, look at it, and put it right.", - "form_title": "Warranty claim", - "heading": "Report a fault in our work", - "labels": { - "address": "Building address", - "fault": "What is the fault?", - "handed_over": "When was it handed over?", - "name": "Your name", - "phone": "Phone number" - } - } - }, - "question": "What are you looking for?" -} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/model.json b/vendor/trainer/runs/contractor-full-2026-09-22/model.json deleted file mode 100644 index dface26..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/model.json +++ /dev/null @@ -1,1600 +0,0 @@ -{ - "buckets": { - "applicants": { - "desks": [ - { - "group": "project_managers", - "moves": [ - { - "from": "interviewing", - "label": "Offer role", - "to": "offered" - }, - { - "from": "interviewing", - "label": "Mark declined", - "to": "declined" - }, - { - "from": "offered", - "label": "Confirm hire", - "to": "hired" - }, - { - "from": "offered", - "label": "Reject offer", - "to": "declined" - }, - { - "from": "open", - "label": "Start interview", - "to": "interviewing" - }, - { - "from": "open", - "label": "Mark declined", - "to": "declined" - } - ], - "page": "/project_managers" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "interviewing": [ - "offered", - "declined" - ], - "offered": [ - "hired", - "declined" - ], - "open": [ - "interviewing", - "declined" - ] - } - }, - "bids": { - "desks": [ - { - "group": "project_managers", - "moves": [ - { - "from": "open", - "label": "Shortlist bid", - "to": "shortlisted" - }, - { - "from": "open", - "label": "Accept bid", - "to": "accepted" - }, - { - "from": "open", - "label": "Reject bid", - "to": "declined" - }, - { - "from": "shortlisted", - "label": "Accept shortlist", - "to": "accepted" - }, - { - "from": "shortlisted", - "label": "Reject shortlist", - "to": "declined" - } - ], - "page": "/project_managers" - }, - { - "group": "site_managers", - "moves": [], - "page": "/site_managers" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "shortlisted", - "accepted", - "declined" - ], - "shortlisted": [ - "accepted", - "declined" - ] - } - }, - "change_orders": { - "desks": [ - { - "group": "project_managers", - "moves": [ - { - "from": "approved", - "label": "Reject change", - "to": "declined" - }, - { - "from": "open", - "label": "Price the change", - "to": "priced" - }, - { - "from": "open", - "label": "Reject request", - "to": "declined" - }, - { - "from": "priced", - "label": "Reject priced change", - "to": "declined" - } - ], - "page": "/project_managers" - }, - { - "group": "site_managers", - "moves": [ - { - "from": "approved", - "label": "Mark done", - "to": "completed" - } - ], - "page": "/site_managers" - } - ], - "initial": "open", - "self_moves": [ - "approved", - "declined" - ], - "transitions": { - "approved": [ - "completed", - "declined" - ], - "open": [ - "priced", - "declined" - ], - "priced": [ - "approved", - "declined" - ] - } - }, - "claims": { - "desks": [ - { - "group": "project_managers", - "moves": [ - { - "from": "accepted", - "label": "Reject fix", - "to": "rejected" - }, - { - "from": "inspected", - "label": "Accept fix", - "to": "accepted" - }, - { - "from": "inspected", - "label": "Reject fix", - "to": "rejected" - }, - { - "from": "open", - "label": "Reject claim", - "to": "rejected" - } - ], - "page": "/project_managers" - }, - { - "group": "site_managers", - "moves": [ - { - "from": "accepted", - "label": "Mark fixed", - "to": "fixed" - }, - { - "from": "open", - "label": "Book inspection", - "to": "inspected" - } - ], - "page": "/site_managers" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "accepted": [ - "fixed", - "rejected" - ], - "inspected": [ - "accepted", - "rejected" - ], - "open": [ - "inspected", - "rejected" - ] - } - }, - "complaints": { - "desks": [ - { - "group": "project_managers", - "moves": [], - "page": "/project_managers" - }, - { - "group": "site_managers", - "moves": [ - { - "from": "open", - "label": "Mark answered", - "to": "answered" - } - ], - "page": "/site_managers" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "answered" - ] - } - }, - "enquiries": { - "desks": [ - { - "group": "project_managers", - "moves": [ - { - "from": "open", - "label": "Book survey", - "to": "surveyed" - }, - { - "from": "open", - "label": "Mark lost", - "to": "lost" - }, - { - "from": "quoted", - "label": "Win work", - "to": "won" - }, - { - "from": "quoted", - "label": "Mark lost", - "to": "lost" - }, - { - "from": "surveyed", - "label": "Send quote", - "to": "quoted" - }, - { - "from": "surveyed", - "label": "Mark lost", - "to": "lost" - } - ], - "page": "/project_managers" - }, - { - "group": "site_managers", - "moves": [ - { - "from": "open", - "label": "Mark surveyed", - "to": "surveyed" - } - ], - "page": "/site_managers" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "surveyed", - "lost" - ], - "quoted": [ - "won", - "lost" - ], - "surveyed": [ - "quoted", - "lost" - ] - } - }, - "job_requests": { - "desks": [ - { - "group": "project_managers", - "moves": [ - { - "from": "open", - "label": "Award job", - "to": "awarded" - }, - { - "from": "open", - "label": "Withdraw job", - "to": "withdrawn" - } - ], - "page": "/project_managers" - }, - { - "group": "site_managers", - "moves": [], - "page": "/site_managers" - }, - { - "group": "subcontractors", - "moves": [], - "page": "/subcontractors" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "awarded", - "withdrawn" - ] - } - }, - "material_orders": { - "desks": [ - { - "group": "crew", - "moves": [ - { - "from": "ordered", - "label": "Mark delivered", - "to": "delivered" - } - ], - "page": "/crew" - }, - { - "group": "site_managers", - "moves": [ - { - "from": "open", - "label": "Order it", - "to": "ordered" - }, - { - "from": "open", - "label": "Cancel order", - "to": "refused" - }, - { - "from": "ordered", - "label": "Mark delivered", - "to": "delivered" - }, - { - "from": "ordered", - "label": "Cancel delivery", - "to": "refused" - } - ], - "page": "/site_managers" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "ordered", - "refused" - ], - "ordered": [ - "delivered", - "refused" - ] - } - }, - "site_issues": { - "desks": [ - { - "group": "project_managers", - "moves": [], - "page": "/project_managers" - }, - { - "group": "safety_officer", - "moves": [ - { - "from": "in_hand", - "label": "Mark as closed", - "to": "closed" - }, - { - "from": "open", - "label": "Start reporting", - "to": "in_hand" - } - ], - "page": "/safety_officer" - }, - { - "group": "site_managers", - "moves": [ - { - "from": "open", - "label": "Log it", - "to": "in_hand" - } - ], - "page": "/site_managers" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "in_hand": [ - "closed" - ], - "open": [ - "in_hand" - ] - } - }, - "subcontractors": { - "desks": [ - { - "group": "project_managers", - "moves": [ - { - "from": "awaiting_papers", - "label": "Approve firm", - "to": "approved" - }, - { - "from": "awaiting_papers", - "label": "Decline firm", - "to": "declined" - }, - { - "from": "open", - "label": "Await papers", - "to": "awaiting_papers" - }, - { - "from": "open", - "label": "Approve application", - "to": "approved" - }, - { - "from": "open", - "label": "Decline application", - "to": "declined" - } - ], - "page": "/project_managers" - }, - { - "group": "site_managers", - "moves": [], - "page": "/site_managers" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "awaiting_papers": [ - "approved", - "declined" - ], - "open": [ - "awaiting_papers", - "approved", - "declined" - ] - } - } - }, - "needs": [ - { - "done_when": [ - "won", - "lost" - ], - "enters_as": null, - "handled_by": "project_managers", - "id": "survey-enquiry", - "lands_in": "enquiries", - "steps": [ - { - "alternative": "Your building project", - "expect": [ - "Your building project" - ], - "fields": [], - "options": [ - { - "description": "Report a problem, get a survey, or start a new build project.", - "name": "Your building project" - }, - { - "description": "Apply to work with us as a subcontractor or find a job as a carpenter or apprentice.", - "name": "Work with Nordvik Bygg" - }, - { - "description": "Let us know about noise, dust, or access problems from a building site near you.", - "name": "Neighbour complaint" - } - ], - "page": "/", - "question": "What brings you to Nordvik Bygg today?" - }, - { - "alternative": "Report a building problem", - "expect": [ - "Report a building problem", - "Tell us about your building project" - ], - "fields": [ - { - "label": "Your name", - "name": "name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Phone number", - "name": "phone", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "Building address", - "name": "address", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What is the problem?", - "name": "problem", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "How to get to the site", - "name": "access", - "optional": true, - "options": [], - "type": "text" - } - ], - "options": [ - { - "description": "You have a problem in your building. We’ll send someone qualified to look at it and tell you what it takes to fix it.", - "name": "Report a building problem" - }, - { - "description": "You know what you want changed or built. We’ll draw it, handle the permit, and price it for you.", - "name": "Tell us about your building project" - }, - { - "description": "You found a fault in work we did. We’ll come back, look at it, and put it right.", - "name": "Report a fault in our work" - } - ], - "page": "/your-building", - "question": "What are you looking for?" - } - ], - "success": [ - "won" - ], - "wants": "someone qualified to come and look at it and say what it takes", - "who": "a housing board or private owner with a problem in a building" - }, - { - "done_when": [ - "won", - "lost" - ], - "enters_as": null, - "handled_by": "project_managers", - "id": "build-enquiry", - "lands_in": "enquiries", - "steps": [ - { - "alternative": "Your building project", - "expect": [ - "Your building project" - ], - "fields": [], - "options": [ - { - "description": "Report a problem, get a survey, or start a new build project.", - "name": "Your building project" - }, - { - "description": "Apply to work with us as a subcontractor or find a job as a carpenter or apprentice.", - "name": "Work with Nordvik Bygg" - }, - { - "description": "Let us know about noise, dust, or access problems from a building site near you.", - "name": "Neighbour complaint" - } - ], - "page": "/", - "question": "What brings you to Nordvik Bygg today?" - }, - { - "alternative": "Report a building problem", - "expect": [ - "Report a building problem", - "Tell us about your building project" - ], - "fields": [ - { - "label": "Your name", - "name": "name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Phone number", - "name": "phone", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "Building address", - "name": "address", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What is the problem?", - "name": "problem", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "How to get to the site", - "name": "access", - "optional": true, - "options": [], - "type": "text" - } - ], - "options": [ - { - "description": "You have a problem in your building. We’ll send someone qualified to look at it and tell you what it takes to fix it.", - "name": "Report a building problem" - }, - { - "description": "You know what you want changed or built. We’ll draw it, handle the permit, and price it for you.", - "name": "Tell us about your building project" - }, - { - "description": "You found a fault in work we did. We’ll come back, look at it, and put it right.", - "name": "Report a fault in our work" - } - ], - "page": "/your-building", - "question": "What are you looking for?" - } - ], - "success": [ - "won" - ], - "wants": "drawings, a permit application and a price", - "who": "an owner who already knows what they want built or changed" - }, - { - "done_when": [ - "fixed", - "rejected" - ], - "enters_as": null, - "handled_by": "project_managers", - "id": "warranty-claim", - "lands_in": "claims", - "steps": [ - { - "alternative": "Your building project", - "expect": [ - "Your building project" - ], - "fields": [], - "options": [ - { - "description": "Report a problem, get a survey, or start a new build project.", - "name": "Your building project" - }, - { - "description": "Apply to work with us as a subcontractor or find a job as a carpenter or apprentice.", - "name": "Work with Nordvik Bygg" - }, - { - "description": "Let us know about noise, dust, or access problems from a building site near you.", - "name": "Neighbour complaint" - } - ], - "page": "/", - "question": "What brings you to Nordvik Bygg today?" - }, - { - "alternative": "Report a fault in our work", - "expect": [ - "Report a fault in our work" - ], - "fields": [ - { - "label": "Your name", - "name": "name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Phone number", - "name": "phone", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "Building address", - "name": "address", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What is the fault?", - "name": "fault", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "When was it handed over?", - "name": "handed_over", - "optional": true, - "options": [], - "type": "date" - } - ], - "options": [ - { - "description": "You have a problem in your building. We’ll send someone qualified to look at it and tell you what it takes to fix it.", - "name": "Report a building problem" - }, - { - "description": "You know what you want changed or built. We’ll draw it, handle the permit, and price it for you.", - "name": "Tell us about your building project" - }, - { - "description": "You found a fault in work we did. We’ll come back, look at it, and put it right.", - "name": "Report a fault in our work" - } - ], - "page": "/your-building", - "question": "What are you looking for?" - } - ], - "success": [ - "fixed" - ], - "wants": "us to come back, look at it, and put it right", - "who": "a past customer who has found a fault in work we handed over" - }, - { - "done_when": [ - "answered" - ], - "enters_as": null, - "handled_by": "site_managers", - "id": "neighbour-complaint", - "lands_in": "complaints", - "steps": [ - { - "alternative": "Neighbour complaint", - "expect": [ - "Neighbour complaint" - ], - "fields": [ - { - "label": "Building address", - "name": "site_address", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Describe the issue", - "name": "what_is_wrong", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "Contact method", - "name": "reach_me_on", - "optional": false, - "options": [], - "type": "text" - } - ], - "options": [ - { - "description": "Report a problem, get a survey, or start a new build project.", - "name": "Your building project" - }, - { - "description": "Apply to work with us as a subcontractor or find a job as a carpenter or apprentice.", - "name": "Work with Nordvik Bygg" - }, - { - "description": "Let us know about noise, dust, or access problems from a building site near you.", - "name": "Neighbour complaint" - } - ], - "page": "/", - "question": "What brings you to Nordvik Bygg today?" - } - ], - "success": [ - "answered" - ], - "wants": "the noise, dust or blocked access dealt with, and an answer", - "who": "someone living or working next to one of our building sites" - }, - { - "done_when": [ - "approved", - "declined" - ], - "enters_as": null, - "handled_by": "project_managers", - "id": "subcontractor-application", - "lands_in": "subcontractors", - "steps": [ - { - "alternative": "Work with Nordvik Bygg", - "expect": [ - "Work with Nordvik Bygg" - ], - "fields": [], - "options": [ - { - "description": "Report a problem, get a survey, or start a new build project.", - "name": "Your building project" - }, - { - "description": "Apply to work with us as a subcontractor or find a job as a carpenter or apprentice.", - "name": "Work with Nordvik Bygg" - }, - { - "description": "Let us know about noise, dust, or access problems from a building site near you.", - "name": "Neighbour complaint" - } - ], - "page": "/", - "question": "What brings you to Nordvik Bygg today?" - }, - { - "alternative": "Apply to work with us", - "expect": [ - "Apply to work with us" - ], - "fields": [ - { - "label": "Company name", - "name": "company", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Registration number", - "name": "registration_number", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Your trade", - "name": "trade", - "optional": false, - "options": [ - "Electrical", - "Plumbing", - "Scaffolding", - "Sheet metal", - "Other" - ], - "type": "select" - }, - { - "label": "Contact email", - "name": "contact_email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Insurance confirmed", - "name": "insurance_confirmed", - "optional": false, - "options": [ - "Yes", - "Not yet" - ], - "type": "select" - }, - { - "label": "Trade approval", - "name": "trade_approval", - "optional": true, - "options": [], - "type": "text" - } - ], - "options": [ - { - "description": "Send us your details so we can check if you are a fit for our projects.", - "name": "Apply to work with us" - }, - { - "description": "Tell us who you are and what you can do. No letter needed.", - "name": "Find a job with us" - } - ], - "page": "/work-with-us", - "question": "Do you want to work with us, or do you need our help with a building?" - } - ], - "success": [ - "approved" - ], - "wants": "to be approved once, and then be called when a job needs them", - "who": "a trade firm doing electrical, plumbing or scaffolding work" - }, - { - "done_when": [ - "hired", - "declined" - ], - "enters_as": null, - "handled_by": "project_managers", - "id": "job-application", - "lands_in": "applicants", - "steps": [ - { - "alternative": "Work with Nordvik Bygg", - "expect": [ - "Work with Nordvik Bygg" - ], - "fields": [], - "options": [ - { - "description": "Report a problem, get a survey, or start a new build project.", - "name": "Your building project" - }, - { - "description": "Apply to work with us as a subcontractor or find a job as a carpenter or apprentice.", - "name": "Work with Nordvik Bygg" - }, - { - "description": "Let us know about noise, dust, or access problems from a building site near you.", - "name": "Neighbour complaint" - } - ], - "page": "/", - "question": "What brings you to Nordvik Bygg today?" - }, - { - "alternative": "Find a job with us", - "expect": [ - "Find a job with us" - ], - "fields": [ - { - "label": "Your name", - "name": "name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Your phone", - "name": "phone", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "Your trade", - "name": "trade", - "optional": false, - "options": [ - "Carpenter", - "Bricklayer", - "Apprentice", - "Other" - ], - "type": "select" - }, - { - "label": "Your experience", - "name": "experience", - "optional": true, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Send us your details so we can check if you are a fit for our projects.", - "name": "Apply to work with us" - }, - { - "description": "Tell us who you are and what you can do. No letter needed.", - "name": "Find a job with us" - } - ], - "page": "/work-with-us", - "question": "Do you want to work with us, or do you need our help with a building?" - } - ], - "success": [ - "hired" - ], - "wants": "to be considered, without writing a letter", - "who": "a carpenter, bricklayer or apprentice looking for work" - }, - { - "done_when": [ - "completed", - "declined" - ], - "enters_as": "clients", - "handled_by": "project_managers", - "id": "change-request", - "lands_in": "change_orders", - "steps": [ - { - "alternative": "Request a change to your building work", - "expect": [ - "Request a change to your building work" - ], - "fields": [ - { - "label": "Your email", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Building address", - "name": "job_address", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What needs to change?", - "name": "change", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "When do you need this?", - "name": "needed_by", - "optional": true, - "options": [], - "type": "date" - } - ], - "options": [ - { - "description": "Tell us what you want changed so we can price it and get it done.", - "name": "Request a change to your building work" - } - ], - "page": "/clients/change-request", - "question": "What needs to change in your project?" - } - ], - "success": [ - "completed" - ], - "wants": "a price for the change, and the change done if they accept it", - "who": "a client whose job is under way and who wants something changed" - }, - { - "done_when": [ - "won", - "lost" - ], - "enters_as": "project_managers", - "handled_by": "project_managers", - "id": "log-phone-enquiry", - "lands_in": "enquiries", - "steps": [ - { - "alternative": "Log a phone enquiry", - "expect": [ - "Log a phone enquiry" - ], - "fields": [ - { - "label": "Your name", - "name": "caller", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Phone number", - "name": "phone", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "Address or site location", - "name": "address", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What was said", - "name": "problem", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Write down the enquiry so it doesn't get lost. One call, one record.", - "name": "Log a phone enquiry" - } - ], - "page": "/project_managers/log-phone-enquiry", - "question": "What was said on the call?" - } - ], - "success": [ - "won" - ], - "wants": "the enquiry written down before it gets lost", - "who": "a project manager who just took a call or a text about a building" - }, - { - "done_when": [ - "awarded", - "withdrawn" - ], - "enters_as": "project_managers", - "handled_by": "project_managers", - "id": "post-job-request", - "lands_in": "job_requests", - "steps": [ - { - "alternative": "Give subcontractors a job to price", - "expect": [ - "Give subcontractors a job to price" - ], - "fields": [ - { - "label": "Site address", - "name": "site_address", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Trade needed", - "name": "trade", - "optional": false, - "options": [ - "Electrical", - "Plumbing", - "Scaffolding", - "Sheet metal", - "Other" - ], - "type": "select" - }, - { - "label": "Work description", - "name": "work", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "When work starts", - "name": "start", - "optional": false, - "options": [], - "type": "date" - } - ], - "options": [ - { - "description": "Tell us about the job you have ready to hand to a subcontractor.", - "name": "Give subcontractors a job to price" - } - ], - "page": "/project_managers/post-job-request", - "question": "What job do you have for a subcontractor?" - } - ], - "success": [ - "awarded" - ], - "wants": "approved subcontractors to see the job and answer with a price", - "who": "a project manager with work to hand to a subcontractor" - }, - { - "done_when": [ - "accepted", - "declined" - ], - "enters_as": "subcontractors", - "handled_by": "project_managers", - "id": "submit-bid", - "lands_in": "bids", - "steps": [ - { - "alternative": "Submit a bid on a job", - "expect": [ - "Submit a bid on a job" - ], - "fields": [ - { - "label": "Job reference", - "name": "job", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Your price", - "name": "price", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Can start", - "name": "can_start", - "optional": false, - "options": [], - "type": "date" - } - ], - "options": [ - { - "description": "Tell us your price and when you can start so we can review your offer.", - "name": "Submit a bid on a job" - } - ], - "page": "/subcontractors/submit-bid", - "question": "Will you submit a bid on this job?" - } - ], - "success": [ - "accepted" - ], - "wants": "to say yes with a price and a start date", - "who": "an approved subcontractor who has seen a job they can take" - }, - { - "done_when": [ - "closed" - ], - "enters_as": "crew", - "handled_by": "safety_officer", - "id": "report-site-issue", - "lands_in": "site_issues", - "steps": [ - { - "alternative": "Report a safety finding on site", - "expect": [ - "Report a safety finding on site" - ], - "fields": [ - { - "label": "What kind of issue", - "name": "kind", - "optional": false, - "options": [ - "Hazard", - "Near miss", - "Wrong materials", - "Other" - ], - "type": "select" - }, - { - "label": "Where on site", - "name": "where", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What happened", - "name": "what_happened", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Write down a hazard, near miss, or wrong materials from the site so the safety officer can fix it.", - "name": "Report a safety finding on site" - } - ], - "page": "/crew/report-site-issue", - "question": "What safety issue did you find?" - } - ], - "success": [ - "closed" - ], - "wants": "to report a hazard, a near miss or wrong materials before they forget", - "who": "anyone on site, ours or a subcontractor's, on a phone with gloves on" - }, - { - "done_when": [ - "delivered", - "refused" - ], - "enters_as": "crew", - "handled_by": "site_managers", - "id": "order-materials", - "lands_in": "material_orders", - "steps": [ - { - "alternative": "Order materials for the site", - "expect": [ - "Order materials for the site" - ], - "fields": [ - { - "label": "Site address", - "name": "site_address", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What do you need?", - "name": "what", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "Needed by", - "name": "needed_by", - "optional": false, - "options": [], - "type": "date" - } - ], - "options": [ - { - "description": "Tell us what you need and where the site is so we can get it on its way.", - "name": "Order materials for the site" - } - ], - "page": "/crew/order-materials", - "question": "What do you need on site?" - } - ], - "success": [ - "delivered" - ], - "wants": "it ordered and on site before work stops", - "who": "a carpenter or bricklayer who is about to run out of something" - }, - { - "done_when": [ - "closed" - ], - "enters_as": "safety_officer", - "handled_by": "safety_officer", - "id": "safety-round-finding", - "lands_in": "site_issues", - "steps": [ - { - "alternative": "Report what you find on site", - "expect": [ - "Report what you find on site" - ], - "fields": [ - { - "label": "Issue kind", - "name": "kind", - "optional": false, - "options": [ - "Hazard", - "Near miss", - "Wrong materials", - "Other" - ], - "type": "select" - }, - { - "label": "Where on site", - "name": "where", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What happened", - "name": "what_happened", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Report a hazard, near miss or wrong materials from the site. This helps keep everyone safe and the job on track.", - "name": "Report what you find on site" - } - ], - "page": "/safety_officer/safety-round-finding", - "question": "What safety issue did you find?" - } - ], - "success": [ - "closed" - ], - "wants": "each thing found written down where the reported issues already are", - "who": "the safety officer walking a site on the weekly round" - } - ], - "personas": [ - { - "id": "housing-board-damp", - "need": "survey-enquiry", - "text": "I chair the board of a housing cooperative from the seventies. Two ground-floor flats have damp in the walls and we don't know if it's drainage or the facade. We need someone to tell us." - }, - { - "id": "buyer-before-purchase", - "need": "survey-enquiry", - "text": "We are about to buy an old timber house. Before we sign we want a professional to go through it and tell us what is wrong with it." - }, - { - "id": "attic-conversion", - "need": "build-enquiry", - "text": "We want to turn our attic into two bedrooms and a bathroom. We need drawings and someone who handles the application to the municipality." - }, - { - "id": "shop-to-flat", - "need": "build-enquiry", - "text": "I own a former shop on the ground floor and want to make it a flat. I have no idea what is allowed. Can you sort that out and give me a price?" - }, - { - "id": "leaking-bathroom", - "need": "warranty-claim", - "text": "You redid our bathroom two years ago. Now water is coming through the ceiling of the flat below. I want you to come and fix it." - }, - { - "id": "cracked-render", - "need": "warranty-claim", - "text": "The render you put on our gable wall last summer has cracked right across. That can't be right after one winter." - }, - { - "id": "noisy-mornings", - "need": "neighbour-complaint", - "text": "I live next door to the block you are working on. You start drilling at half past six every morning and I have a baby. Who do I talk to?" - }, - { - "id": "blocked-driveway", - "need": "neighbour-complaint", - "text": "Your skip and a van have been parked across the entrance to our shop's loading bay for three days. We can't get deliveries." - }, - { - "id": "electrician-firm", - "need": "subcontractor-application", - "text": "We are a four-person electrical firm, fully certified. We would like to get on your list so you call us when you need electricians." - }, - { - "id": "scaffolder", - "need": "subcontractor-application", - "text": "I run a scaffolding company. How do I get to do jobs for you?" - }, - { - "id": "carpenter-jobseeker", - "need": "job-application", - "text": "I'm a certified carpenter with eight years on rehabilitation jobs. Are you hiring?" - }, - { - "id": "apprentice", - "need": "job-application", - "text": "I finish vocational school this spring and need an apprenticeship as a bricklayer." - }, - { - "id": "extra-window", - "need": "change-request", - "text": "You are in the middle of our attic conversion. We have decided we want a roof window over the stairs as well. What would that cost?" - }, - { - "id": "pm-took-a-call", - "need": "log-phone-enquiry", - "text": "A woman from a housing board in Storgata just rang about water in their basement. I'm in the van. I need to note it before I forget her number." - }, - { - "id": "pm-needs-plumber", - "need": "post-job-request", - "text": "The bathroom job in Kirkeveien needs a plumber for two weeks from the first of next month. I want prices from the ones we have approved." - }, - { - "id": "plumber-bidding", - "need": "submit-bid", - "text": "We are an approved plumbing firm. I saw you need someone in Kirkeveien next month. We can do it, I have a price." - }, - { - "id": "loose-railing", - "need": "report-site-issue", - "text": "The railing on the third level of the scaffold on the north side is loose. Nobody got hurt but someone will." - }, - { - "id": "wrong-membrane", - "need": "report-site-issue", - "text": "The bathroom membrane delivered today is not the one in the specification. We stopped work on it." - }, - { - "id": "out-of-battens", - "need": "order-materials", - "text": "We have enough roof battens for today and maybe half of tomorrow. Need another two hundred metres on site by Thursday." - }, - { - "id": "weekly-round", - "need": "safety-round-finding", - "text": "On my Friday round I found the first-aid box on level two empty and an extension lead run through a puddle." - } - ] -} \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/needs.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/needs.yaml deleted file mode 100644 index 0f080e1..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/needs.yaml +++ /dev/null @@ -1,330 +0,0 @@ -needs: -- also_moved_by: - - site_managers - done_when: - - won - - lost - enters: / - handled_by: project_managers - id: survey-enquiry - lands_in: enquiries - max_fields: 4 - max_steps: 2 - stages: - - open - - surveyed - - quoted - - won - - lost - success: - - won - via: Your building project - wants: someone qualified to come and look at it and say what it takes - who: a housing board or private owner with a problem in a building -- also_moved_by: - - site_managers - done_when: - - won - - lost - enters: / - handled_by: project_managers - id: build-enquiry - lands_in: enquiries - max_fields: 5 - max_steps: 2 - stages: - - open - - surveyed - - quoted - - won - - lost - success: - - won - via: Your building project - wants: drawings, a permit application and a price - who: an owner who already knows what they want built or changed -- also_moved_by: - - site_managers - done_when: - - fixed - - rejected - enters: / - handled_by: project_managers - id: warranty-claim - lands_in: claims - max_fields: 4 - max_steps: 2 - stages: - - open - - inspected - - accepted - - fixed - - rejected - success: - - fixed - via: Your building project - wants: us to come back, look at it, and put it right - who: a past customer who has found a fault in work we handed over -- done_when: - - answered - enters: / - handled_by: site_managers - id: neighbour-complaint - lands_in: complaints - max_fields: 3 - max_steps: 1 - stages: - - open - - answered - success: - - answered - via: Neighbour complaint - wants: the noise, dust or blocked access dealt with, and an answer - who: someone living or working next to one of our building sites -- done_when: - - approved - - declined - enters: / - handled_by: project_managers - id: subcontractor-application - lands_in: subcontractors - max_fields: 5 - max_steps: 2 - stages: - - open - - awaiting_papers - - approved - - declined - success: - - approved - via: Work with Nordvik Bygg - wants: to be approved once, and then be called when a job needs them - who: a trade firm doing electrical, plumbing or scaffolding work -- done_when: - - hired - - declined - enters: / - handled_by: project_managers - id: job-application - lands_in: applicants - max_fields: 3 - max_steps: 2 - stages: - - open - - interviewing - - offered - - hired - - declined - success: - - hired - via: Work with Nordvik Bygg - wants: to be considered, without writing a letter - who: a carpenter, bricklayer or apprentice looking for work -- also_moved_by: - - site_managers - done_when: - - completed - - declined - enters: /clients/change-request - enters_as: clients - handled_by: project_managers - id: change-request - lands_in: change_orders - max_fields: 3 - max_steps: 1 - stages: - - open - - priced - - approved - - completed - - declined - success: - - completed - via: Request a change to your building work - wants: a price for the change, and the change done if they accept it - who: a client whose job is under way and who wants something changed -- also_moved_by: - - site_managers - done_when: - - won - - lost - enters: /project_managers/log-phone-enquiry - enters_as: project_managers - handled_by: project_managers - id: log-phone-enquiry - lands_in: enquiries - max_fields: 4 - max_steps: 1 - stages: - - open - - surveyed - - quoted - - won - - lost - success: - - won - via: Log a phone enquiry - wants: the enquiry written down before it gets lost - who: a project manager who just took a call or a text about a building -- done_when: - - awarded - - withdrawn - enters: /project_managers/post-job-request - enters_as: project_managers - handled_by: project_managers - id: post-job-request - lands_in: job_requests - max_fields: 4 - max_steps: 1 - stages: - - open - - awarded - - withdrawn - success: - - awarded - via: Give subcontractors a job to price - wants: approved subcontractors to see the job and answer with a price - who: a project manager with work to hand to a subcontractor -- done_when: - - accepted - - declined - enters: /subcontractors/submit-bid - enters_as: subcontractors - handled_by: project_managers - id: submit-bid - lands_in: bids - max_fields: 3 - max_steps: 1 - stages: - - open - - shortlisted - - accepted - - declined - success: - - accepted - via: Submit a bid on a job - wants: to say yes with a price and a start date - who: an approved subcontractor who has seen a job they can take -- also_moved_by: - - site_managers - done_when: - - closed - enters: /crew/report-site-issue - enters_as: crew - handled_by: safety_officer - id: report-site-issue - lands_in: site_issues - max_fields: 3 - max_steps: 1 - stages: - - open - - in_hand - - closed - success: - - closed - via: Report a safety finding on site - wants: to report a hazard, a near miss or wrong materials before they forget - who: anyone on site, ours or a subcontractor's, on a phone with gloves on -- also_moved_by: - - crew - done_when: - - delivered - - refused - enters: /crew/order-materials - enters_as: crew - handled_by: site_managers - id: order-materials - lands_in: material_orders - max_fields: 3 - max_steps: 1 - stages: - - open - - ordered - - delivered - - refused - success: - - delivered - via: Order materials for the site - wants: it ordered and on site before work stops - who: a carpenter or bricklayer who is about to run out of something -- also_moved_by: - - site_managers - done_when: - - closed - enters: /safety_officer/safety-round-finding - enters_as: safety_officer - handled_by: safety_officer - id: safety-round-finding - lands_in: site_issues - max_fields: 3 - max_steps: 1 - stages: - - open - - in_hand - - closed - success: - - closed - via: Report what you find on site - wants: each thing found written down where the reported issues already are - who: the safety officer walking a site on the weekly round -personas: -- id: housing-board-damp - need: survey-enquiry - text: I chair the board of a housing cooperative from the seventies. Two ground-floor flats have damp in the walls and we don't know if it's drainage or the facade. We need someone to tell us. -- id: buyer-before-purchase - need: survey-enquiry - text: We are about to buy an old timber house. Before we sign we want a professional to go through it and tell us what is wrong with it. -- id: attic-conversion - need: build-enquiry - text: We want to turn our attic into two bedrooms and a bathroom. We need drawings and someone who handles the application to the municipality. -- id: shop-to-flat - need: build-enquiry - text: I own a former shop on the ground floor and want to make it a flat. I have no idea what is allowed. Can you sort that out and give me a price? -- id: leaking-bathroom - need: warranty-claim - text: You redid our bathroom two years ago. Now water is coming through the ceiling of the flat below. I want you to come and fix it. -- id: cracked-render - need: warranty-claim - text: The render you put on our gable wall last summer has cracked right across. That can't be right after one winter. -- id: noisy-mornings - need: neighbour-complaint - text: I live next door to the block you are working on. You start drilling at half past six every morning and I have a baby. Who do I talk to? -- id: blocked-driveway - need: neighbour-complaint - text: Your skip and a van have been parked across the entrance to our shop's loading bay for three days. We can't get deliveries. -- id: electrician-firm - need: subcontractor-application - text: We are a four-person electrical firm, fully certified. We would like to get on your list so you call us when you need electricians. -- id: scaffolder - need: subcontractor-application - text: I run a scaffolding company. How do I get to do jobs for you? -- id: carpenter-jobseeker - need: job-application - text: I'm a certified carpenter with eight years on rehabilitation jobs. Are you hiring? -- id: apprentice - need: job-application - text: I finish vocational school this spring and need an apprenticeship as a bricklayer. -- id: extra-window - need: change-request - text: You are in the middle of our attic conversion. We have decided we want a roof window over the stairs as well. What would that cost? -- id: pm-took-a-call - need: log-phone-enquiry - text: A woman from a housing board in Storgata just rang about water in their basement. I'm in the van. I need to note it before I forget her number. -- id: pm-needs-plumber - need: post-job-request - text: The bathroom job in Kirkeveien needs a plumber for two weeks from the first of next month. I want prices from the ones we have approved. -- id: plumber-bidding - need: submit-bid - text: We are an approved plumbing firm. I saw you need someone in Kirkeveien next month. We can do it, I have a price. -- id: loose-railing - need: report-site-issue - text: The railing on the third level of the scaffold on the north side is loose. Nobody got hurt but someone will. -- id: wrong-membrane - need: report-site-issue - text: The bathroom membrane delivered today is not the one in the specification. We stopped work on it. -- id: out-of-battens - need: order-materials - text: We have enough roof battens for today and maybe half of tomorrow. Need another two hundred metres on site by Thursday. -- id: weekly-round - need: safety-round-finding - text: On my Friday round I found the first-aid box on level two empty and an extension lead run through a puddle. diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/clients/_section.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/clients/_section.yaml deleted file mode 100644 index fd811b0..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/clients/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: clients diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/clients/change-request-sent.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/clients/change-request-sent.yaml deleted file mode 100644 index 03d43dd..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/clients/change-request-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: We will get back to you with a price and next steps within 2 business days. - name: What happens next? -- action: /clients - consequence: - - Back to form - description: '' - name: Back to form -description: We have received your change request. A project manager will review it shortly. -name: What happens after I submit? diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/clients/change-request.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/clients/change-request.yaml deleted file mode 100644 index a0b28b7..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/clients/change-request.yaml +++ /dev/null @@ -1,29 +0,0 @@ -alternatives: -- action: /clients/change-request-sent - consequence: - - Submit change - description: Tell us what you want changed so we can price it and get it done. - features: - - name: Change request - requirements: - - label: Your email - name: email - type: email - - label: Building address - name: job_address - type: text - - label: What needs to change? - name: change - type: textarea - - label: When do you need this? - name: needed_by - optional: true - type: date - name: Request a change to your building work - record_as: change_orders -description: A client can ask for a change to an ongoing job. We price it and do it if you accept. -followup: false -name: What needs to change in your project? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/clients/index.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/clients/index.yaml deleted file mode 100644 index 26b4486..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/clients/index.yaml +++ /dev/null @@ -1,11 +0,0 @@ -alternatives: -- action: /clients/change-request - consequence: - - Change request - description: A client whose job is under way and who wants something changed wants a price for the change, and the change done if they accept it. - name: Change request -description: Manage your cases and move them through their stages. -name: What do you need to do today? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/_section.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/_section.yaml deleted file mode 100644 index 1f962a5..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: crew diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/index.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/index.yaml deleted file mode 100644 index dc195ad..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/index.yaml +++ /dev/null @@ -1,33 +0,0 @@ -alternatives: -- action: /crew - consequence: - - Confirm - description: Order materials for a job in progress. See what's on its way and what arrived. - features: - - description: '' - name: '' - resource: - requires_group: crew - source: - bucket: material_orders - kind: kv - transitions: - - from: ordered - label: Mark delivered - to: delivered - name: Order materials for building -- action: /crew/report-site-issue - consequence: - - Report issue - description: Log a hazard, near miss or wrong materials found on site. Keep the weekly safety round up to date. - name: Report a site issue -- action: /crew/order-materials - consequence: - - Order materials - description: Order materials for the job you are working on. Track what has been delivered. - name: Order materials for building -description: Manage the flow of cases from enquiry to completion. See what stage each case is at and move it forward. -name: What case do you need to move forward? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/order-materials-sent.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/order-materials-sent.yaml deleted file mode 100644 index a20103f..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/order-materials-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: You will receive a confirmation once the materials are on site. - name: Materials ordered -- action: /crew - consequence: - - Back to order-materials - description: '' - name: Back to order-materials -description: We have received your request. The site manager will process it shortly. -name: Will the materials arrive on time? diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/order-materials.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/order-materials.yaml deleted file mode 100644 index 4775dc4..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/order-materials.yaml +++ /dev/null @@ -1,25 +0,0 @@ -alternatives: -- action: /crew/order-materials-sent - consequence: - - Order now - description: Tell us what you need and where the site is so we can get it on its way. - features: - - name: Order materials - requirements: - - label: Site address - name: site_address - type: text - - label: What do you need? - name: what - type: textarea - - label: Needed by - name: needed_by - type: date - name: Order materials for the site - record_as: material_orders -description: Order materials before the site runs out. -followup: false -name: What do you need on site? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/report-site-issue-sent.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/report-site-issue-sent.yaml deleted file mode 100644 index 2d9dc74..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/report-site-issue-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: We will review the reported issue and update its status. You will be notified when it is resolved. - name: What happens next -- action: /crew - consequence: - - Back to form - description: '' - name: Back to form -description: Your report has been sent to our safety officer. They will review the issue and get back to you. -name: What happens after I submit? diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/report-site-issue.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/report-site-issue.yaml deleted file mode 100644 index be8900a..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/crew/report-site-issue.yaml +++ /dev/null @@ -1,30 +0,0 @@ -alternatives: -- action: /crew/report-site-issue-sent - consequence: - - Report issue - description: Write down a hazard, near miss, or wrong materials from the site so the safety officer can fix it. - features: - - name: Report a site issue - requirements: - - label: What kind of issue - name: kind - options: - - Hazard - - Near miss - - Wrong materials - - Other - type: select - - label: Where on site - name: where - type: text - - label: What happened - name: what_happened - type: textarea - name: Report a safety finding on site - record_as: site_issues -description: Report a hazard, near miss, or wrong materials found during a site visit. -followup: false -name: What safety issue did you find? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/decide/change-request.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/decide/change-request.yaml deleted file mode 100644 index c8a287b..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/decide/change-request.yaml +++ /dev/null @@ -1,15 +0,0 @@ -alternatives: -- description: The change will be added to the project scope and price. Work will proceed according to the new agreement. - name: Approve the change request - self_transition: - bucket: change_orders - label: Accept change - to: approved -- description: The change will not be added to the project. The original scope and price remain unchanged. - name: Decline the change request - self_transition: - bucket: change_orders - label: Reject change - to: declined -description: You have submitted a change request for your ongoing project. Use this page to make your decision. -name: What is your decision on this change request? diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/index.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/index.yaml deleted file mode 100644 index e05c8d1..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/index.yaml +++ /dev/null @@ -1,34 +0,0 @@ -alternatives: -- action: /your-building - consequence: - - Start here - description: Report a problem, get a survey, or start a new build project. - name: Your building project -- action: /work-with-us - consequence: - - Join us - description: Apply to work with us as a subcontractor or find a job as a carpenter or apprentice. - name: Work with Nordvik Bygg -- action: /received/neighbour-complaint - consequence: - - Report issue - description: Let us know about noise, dust, or access problems from a building site near you. - features: - - name: Contact details - requirements: - - label: Building address - name: site_address - type: text - - label: Describe the issue - name: what_is_wrong - type: textarea - - label: Contact method - name: reach_me_on - type: text - name: Neighbour complaint - record_as: complaints -description: Find the right path for your building or your career with Nordvik Bygg. -name: What brings you to Nordvik Bygg today? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/_section.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/_section.yaml deleted file mode 100644 index d8acdff..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: project_managers diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/index.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/index.yaml deleted file mode 100644 index 71f7171..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/index.yaml +++ /dev/null @@ -1,238 +0,0 @@ -alternatives: -- action: /project_managers - consequence: - - Confirm - description: Track carpenter and apprentice applications from open to hired, with interview steps in between. - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: applicants - kind: kv - transitions: - - from: interviewing - label: Offer role - to: offered - - from: interviewing - label: Mark declined - to: declined - - from: offered - label: Confirm hire - to: hired - - from: offered - label: Reject offer - to: declined - - from: open - label: Start interview - to: interviewing - - from: open - label: Mark declined - to: declined - name: Applicant cases -- action: /project_managers - consequence: - - Confirm - description: Handle subcontractor bids from open submission to accepted or declined. - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: bids - kind: kv - transitions: - - from: open - label: Shortlist bid - to: shortlisted - - from: open - label: Accept bid - to: accepted - - from: open - label: Reject bid - to: declined - - from: shortlisted - label: Accept shortlist - to: accepted - - from: shortlisted - label: Reject shortlist - to: declined - name: Bid management -- action: /project_managers - consequence: - - Confirm - description: Track client change requests from open inquiry through pricing and completion. - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: change_orders - kind: kv - transitions: - - from: approved - label: Reject change - to: declined - - from: open - label: Price the change - to: priced - - from: open - label: Reject request - to: declined - - from: priced - label: Reject priced change - to: declined - name: Change order cases -- action: /project_managers - consequence: - - Confirm - description: Handle warranty claims from inspection through to acceptance or rejection of the fix. - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: claims - kind: kv - transitions: - - from: accepted - label: Reject fix - to: rejected - - from: inspected - label: Accept fix - to: accepted - - from: inspected - label: Reject fix - to: rejected - - from: open - label: Reject claim - to: rejected - name: Warranty claim cases -- action: /project_managers - consequence: - - Confirm - description: Record and resolve neighbour complaints about site noise, dust or access. - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: complaints - kind: kv - transitions: [] - name: Neighbour complaints -- action: /project_managers - consequence: - - Confirm - description: Track building enquiries from initial contact through survey, quote and win/lose outcome. - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: enquiries - kind: kv - transitions: - - from: open - label: Book survey - to: surveyed - - from: open - label: Mark lost - to: lost - - from: quoted - label: Win work - to: won - - from: quoted - label: Mark lost - to: lost - - from: surveyed - label: Send quote - to: quoted - - from: surveyed - label: Mark lost - to: lost - name: Building enquiries -- action: /project_managers - consequence: - - Confirm - description: Manage internal job assignments for subcontractors from open through to awarded or withdrawn. - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: job_requests - kind: kv - transitions: - - from: open - label: Award job - to: awarded - - from: open - label: Withdraw job - to: withdrawn - name: Job requests -- action: /project_managers - consequence: - - Confirm - description: Log safety and quality issues reported from site, through to closure. - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: site_issues - kind: kv - transitions: [] - name: Site issue log -- action: /project_managers - consequence: - - Confirm - description: Track trade firm applications from open through paper review to approved or declined status. - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: subcontractors - kind: kv - transitions: - - from: awaiting_papers - label: Approve firm - to: approved - - from: awaiting_papers - label: Decline firm - to: declined - - from: open - label: Await papers - to: awaiting_papers - - from: open - label: Approve application - to: approved - - from: open - label: Decline application - to: declined - name: Subcontractor cases -- action: /project_managers/log-phone-enquiry - consequence: - - Log call - description: Record a new building enquiry or client call before details are lost. - name: Log phone enquiry -- action: /project_managers/post-job-request - consequence: - - Post job - description: Send an approved job to subcontractors for bidding. - name: Post job request -description: Manage and track all project enquiries, applications and site issues from one desk. -name: What case do you want to work on? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/log-phone-enquiry-sent.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/log-phone-enquiry-sent.yaml deleted file mode 100644 index 66762d7..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/log-phone-enquiry-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: We will call you to discuss the issue and decide on the next steps. - name: What happens next? -- action: /project_managers - consequence: - - Back to enquiry - description: '' - name: Back to enquiry -description: Your phone call has been recorded. We will review it and get back to you. -name: Did we capture everything you needed? diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/log-phone-enquiry.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/log-phone-enquiry.yaml deleted file mode 100644 index e647dae..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/log-phone-enquiry.yaml +++ /dev/null @@ -1,28 +0,0 @@ -alternatives: -- action: /project_managers/log-phone-enquiry-sent - consequence: - - Log call - description: Write down the enquiry so it doesn't get lost. One call, one record. - features: - - name: Phone enquiry log - requirements: - - label: Your name - name: caller - type: text - - label: Phone number - name: phone - type: tel - - label: Address or site location - name: address - type: text - - label: What was said - name: problem - type: textarea - name: Log a phone enquiry - record_as: enquiries -description: Record a building enquiry taken over the phone. -followup: false -name: What was said on the call? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/post-job-request-sent.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/post-job-request-sent.yaml deleted file mode 100644 index a9427bd..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/post-job-request-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Once a subcontractor accepts the job, the status will update and you’ll be able to track the progress. - name: Awaiting subcontractor response -- action: /project_managers - consequence: - - Back to list - description: '' - name: Back to list -description: Your post-job request has been sent to our project managers. They will review the details and reach out to approved subcontractors. -name: Who will take on this job? diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/post-job-request.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/post-job-request.yaml deleted file mode 100644 index 6c7ea53..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/project_managers/post-job-request.yaml +++ /dev/null @@ -1,34 +0,0 @@ -alternatives: -- action: /project_managers/post-job-request-sent - consequence: - - Submit request - description: Tell us about the job you have ready to hand to a subcontractor. - features: - - name: Post a job for subcontractors - requirements: - - label: Site address - name: site_address - type: text - - label: Trade needed - name: trade - options: - - Electrical - - Plumbing - - Scaffolding - - Sheet metal - - Other - type: select - - label: Work description - name: work - type: textarea - - label: When work starts - name: start - type: date - name: Give subcontractors a job to price - record_as: job_requests -description: Post a job so approved subcontractors can price it. -followup: false -name: What job do you have for a subcontractor? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/received/build-enquiry.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/received/build-enquiry.yaml deleted file mode 100644 index 6fc7ae0..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/received/build-enquiry.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: A project manager will contact you to discuss the scope and arrange a site survey. - name: 'Next steps: survey and quote' -- action: / - consequence: - - Back to form - description: '' - name: Back to form -description: Your build-enquiry has been received. We will review the details and get back to you. -name: What happens after I submit? diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/received/job-application.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/received/job-application.yaml deleted file mode 100644 index 5927723..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/received/job-application.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: We will contact you if your profile matches an open position. No need to send a separate cover letter. - name: What happens next -- action: / - consequence: - - Back to applications - description: '' - name: Back to applications -description: Your application has been received. We review carpenter and apprentice requests weekly. -name: What happens after I apply? diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/received/neighbour-complaint.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/received/neighbour-complaint.yaml deleted file mode 100644 index c53efa1..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/received/neighbour-complaint.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: A site manager will review your report and find a solution. - name: What happens next? -- action: / - consequence: - - Back to site - description: '' - name: Back to site -description: Your neighbour complaint has been received. We will look into it and get back to you. -name: What issue are you reporting? diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/received/subcontractor-application.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/received/subcontractor-application.yaml deleted file mode 100644 index 17a7043..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/received/subcontractor-application.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Project managers check approved subcontractors for new jobs. Once approved, you will receive job invitations with prices and start dates. - name: What happens next -- action: / - consequence: - - Back to form - description: '' - name: Back to form -description: Your subcontractor application has been received. We will review it and contact you if we need more information. -name: What happens after I submit? diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/received/survey-enquiry.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/received/survey-enquiry.yaml deleted file mode 100644 index ccd4c03..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/received/survey-enquiry.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: A project manager will contact you within 2 business days to schedule a site visit and provide a quotation. - name: 'Next steps: Survey and quote' -- action: / - consequence: - - Back to form - description: '' - name: Back to form -description: Your survey request has been received. We will review the details and assign a project manager to assess the building. -name: What happens after I submit? diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/received/warranty-claim.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/received/warranty-claim.yaml deleted file mode 100644 index 5c7cab8..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/received/warranty-claim.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: A project manager will inspect the issue and decide on the next steps. - name: What happens next -- action: / - consequence: - - Back to enquiries - description: '' - name: Back to enquiries -description: Your warranty claim has been received. We will review the details and get back to you. -name: What seems to be the problem? diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/safety_officer/_section.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/safety_officer/_section.yaml deleted file mode 100644 index d7ea7a1..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/safety_officer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: safety_officer diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/safety_officer/index.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/safety_officer/index.yaml deleted file mode 100644 index 7be131a..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/safety_officer/index.yaml +++ /dev/null @@ -1,31 +0,0 @@ -alternatives: -- action: /safety_officer - consequence: - - Continue - description: Report and resolve safety issues, near misses, or material problems found during daily work. - features: - - description: '' - name: '' - resource: - requires_group: safety_officer - source: - bucket: site_issues - kind: kv - transitions: - - from: in_hand - label: Mark as closed - to: closed - - from: open - label: Start reporting - to: in_hand - name: Report site safety issues -- action: /safety_officer/safety-round-finding - consequence: - - View weekly round - description: See all issues found during the site safety walkround. - name: Safety walkround findings -description: A desk for the safety officer to track and resolve reported issues from building sites. -name: What safety issues need reporting or closing today? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/safety_officer/safety-round-finding-sent.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/safety_officer/safety-round-finding-sent.yaml deleted file mode 100644 index 349c9a4..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/safety_officer/safety-round-finding-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: The issue will be marked as closed once the officer has verified the fix or the hazard has been removed. - name: Issue recorded and reviewed -- action: /safety_officer - consequence: - - Back to form - description: '' - name: Back to form -description: The safety officer has received your report. They will review the issue during their next site walk. -name: What happens after I submit a safety report? diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/safety_officer/safety-round-finding.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/safety_officer/safety-round-finding.yaml deleted file mode 100644 index 0ebfad1..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/safety_officer/safety-round-finding.yaml +++ /dev/null @@ -1,30 +0,0 @@ -alternatives: -- action: /safety_officer/safety-round-finding-sent - consequence: - - Log finding - description: Report a hazard, near miss or wrong materials from the site. This helps keep everyone safe and the job on track. - features: - - name: Safety round finding - requirements: - - label: Issue kind - name: kind - options: - - Hazard - - Near miss - - Wrong materials - - Other - type: select - - label: Where on site - name: where - type: text - - label: What happened - name: what_happened - type: textarea - name: Report what you find on site - record_as: site_issues -description: Use this form to record safety issues found during the weekly site round. -followup: false -name: What safety issue did you find? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/site_managers/_section.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/site_managers/_section.yaml deleted file mode 100644 index 6443bde..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/site_managers/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: site_managers diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/site_managers/index.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/site_managers/index.yaml deleted file mode 100644 index fb90381..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/site_managers/index.yaml +++ /dev/null @@ -1,162 +0,0 @@ -alternatives: -- action: /site_managers - consequence: - - Save changes - description: Approved subcontractors review jobs and submit prices. Submit-bid stage moves to shortlisted or declined. - features: - - description: '' - name: '' - resource: - requires_group: site_managers - source: - bucket: bids - kind: kv - transitions: [] - name: Subcontractor bids -- action: /site_managers - consequence: - - Save changes - description: Clients request changes to ongoing jobs. Prices are set and changes are completed or declined. - features: - - description: '' - name: '' - resource: - requires_group: site_managers - source: - bucket: change_orders - kind: kv - transitions: - - from: approved - label: Mark done - to: completed - name: Change requests -- action: /site_managers - consequence: - - Save changes - description: Past customers report faults. Issues are inspected and fixed or rejected. - features: - - description: '' - name: '' - resource: - requires_group: site_managers - source: - bucket: claims - kind: kv - transitions: - - from: accepted - label: Mark fixed - to: fixed - - from: open - label: Book inspection - to: inspected - name: Warranty claims -- action: /site_managers - consequence: - - Save changes - description: Neighbour issues on site are logged and answered. - features: - - description: '' - name: '' - resource: - requires_group: site_managers - source: - bucket: complaints - kind: kv - transitions: - - from: open - label: Mark answered - to: answered - name: Neighbour complaints -- action: /site_managers - consequence: - - Save changes - description: New building or survey requests are logged and moved through stages to a decision. - features: - - description: '' - name: '' - resource: - requires_group: site_managers - source: - bucket: enquiries - kind: kv - transitions: - - from: open - label: Mark surveyed - to: surveyed - name: New enquiries -- action: /site_managers - consequence: - - Save changes - description: Carpenters and apprentices apply for work. Stages track from interview to hire. - features: - - description: '' - name: '' - resource: - requires_group: site_managers - source: - bucket: job_requests - kind: kv - transitions: [] - name: Job applications -- action: /site_managers - consequence: - - Save changes - description: Carpenters order materials to keep work running. Orders are tracked from request to delivery. - features: - - description: '' - name: '' - resource: - requires_group: site_managers - source: - bucket: material_orders - kind: kv - transitions: - - from: open - label: Order it - to: ordered - - from: open - label: Cancel order - to: refused - - from: ordered - label: Mark delivered - to: delivered - - from: ordered - label: Cancel delivery - to: refused - name: Material orders -- action: /site_managers - consequence: - - Save changes - description: Hazards and near misses are reported and closed off the weekly safety round. - features: - - description: '' - name: '' - resource: - requires_group: site_managers - source: - bucket: site_issues - kind: kv - transitions: - - from: open - label: Log it - to: in_hand - name: Site safety issues -- action: /site_managers - consequence: - - Save changes - description: Approved trade firms are listed and jobs are awarded to them. - features: - - description: '' - name: '' - resource: - requires_group: site_managers - source: - bucket: subcontractors - kind: kv - transitions: [] - name: Approved subcontractors -description: Manage the cases assigned to the site manager role. -name: What case needs updating? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/subcontractors/_section.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/subcontractors/_section.yaml deleted file mode 100644 index 9adc466..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/subcontractors/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: subcontractors diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/subcontractors/index.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/subcontractors/index.yaml deleted file mode 100644 index 7b1f446..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/subcontractors/index.yaml +++ /dev/null @@ -1,25 +0,0 @@ -alternatives: -- action: /subcontractors - consequence: - - Save - description: Cases from trade firms and carpenters looking for work or to become approved subcontractors. - features: - - description: '' - name: '' - resource: - requires_group: subcontractors - source: - bucket: job_requests - kind: kv - transitions: [] - name: Work with us -- action: /subcontractors/submit-bid - consequence: - - Submit bid - description: Approve subcontractors can see the job and reply with a price and start date. - name: Submit a bid -description: Manage enquiries from trade firms and job applicants. Move cases through stages to hire carpenters or approve subcontractors. -name: What enquiry do you want to handle? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/subcontractors/submit-bid-sent.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/subcontractors/submit-bid-sent.yaml deleted file mode 100644 index 40d873c..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/subcontractors/submit-bid-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: We will review your submission and get back to you within 3 business days. - name: What happens next? -- action: /subcontractors - consequence: - - Back to form - description: '' - name: Back to form -description: Your bid has been submitted. Awaiting review by our project managers. -name: What happens after I submit? diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/subcontractors/submit-bid.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/subcontractors/submit-bid.yaml deleted file mode 100644 index 3668ce0..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/subcontractors/submit-bid.yaml +++ /dev/null @@ -1,25 +0,0 @@ -alternatives: -- action: /subcontractors/submit-bid-sent - consequence: - - Submit bid - description: Tell us your price and when you can start so we can review your offer. - features: - - name: Submit a bid - requirements: - - label: Job reference - name: job - type: text - - label: Your price - name: price - type: text - - label: Can start - name: can_start - type: date - name: Submit a bid on a job - record_as: bids -description: Approved subcontractors use this form to place a bid on an open job. -followup: false -name: Will you submit a bid on this job? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/work-with-us/index.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/work-with-us/index.yaml deleted file mode 100644 index 8bc0c7a..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/work-with-us/index.yaml +++ /dev/null @@ -1,70 +0,0 @@ -alternatives: -- action: /received/subcontractor-application - consequence: - - Apply now - description: Send us your details so we can check if you are a fit for our projects. - features: - - name: Subcontractor application - requirements: - - label: Company name - name: company - type: text - - label: Registration number - name: registration_number - type: text - - label: Your trade - name: trade - options: - - Electrical - - Plumbing - - Scaffolding - - Sheet metal - - Other - type: select - - label: Contact email - name: contact_email - type: email - - label: Insurance confirmed - name: insurance_confirmed - options: - - Yes - - Not yet - type: select - - label: Trade approval - name: trade_approval - optional: true - type: text - name: Apply to work with us - record_as: subcontractors -- action: /received/job-application - consequence: - - Apply now - description: Tell us who you are and what you can do. No letter needed. - features: - - name: Job application - requirements: - - label: Your name - name: name - type: text - - label: Your phone - name: phone - type: tel - - label: Your trade - name: trade - options: - - Carpenter - - Bricklayer - - Apprentice - - Other - type: select - - label: Your experience - name: experience - optional: true - type: textarea - name: Find a job with us - record_as: applicants -description: We are a small team running rehabilitation and construction projects. We are looking for people who want to join us, or who need our help with a building. -name: Do you want to work with us, or do you need our help with a building? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/questions/your-building/index.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/questions/your-building/index.yaml deleted file mode 100644 index 2a94403..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/questions/your-building/index.yaml +++ /dev/null @@ -1,84 +0,0 @@ -alternatives: -- action: /received/survey-enquiry - consequence: - - Get it surveyed - description: You have a problem in your building. We’ll send someone qualified to look at it and tell you what it takes to fix it. - features: - - name: Survey your building - requirements: - - label: Your name - name: name - type: text - - label: Phone number - name: phone - type: tel - - label: Building address - name: address - type: text - - label: What is the problem? - name: problem - type: textarea - - label: How to get to the site - name: access - optional: true - type: text - name: Report a building problem - record_as: enquiries -- action: /received/build-enquiry - consequence: - - Start build - description: You know what you want changed or built. We’ll draw it, handle the permit, and price it for you. - features: - - name: Your building project - requirements: - - label: Your name - name: name - type: text - - label: Phone number - name: phone - type: tel - - label: Building address - name: address - type: text - - label: Project type - name: project - type: textarea - - label: When you want it done - name: timeframe - options: - - This year - - Next year - - No fixed date - type: select - name: Tell us about your building project - record_as: enquiries -- action: /received/warranty-claim - consequence: - - Claim warranty - description: You found a fault in work we did. We’ll come back, look at it, and put it right. - features: - - name: Warranty claim - requirements: - - label: Your name - name: name - type: text - - label: Phone number - name: phone - type: tel - - label: Building address - name: address - type: text - - label: What is the fault? - name: fault - type: textarea - - label: When was it handed over? - name: handed_over - optional: true - type: date - name: Report a fault in our work - record_as: claims -description: What brings you to us today? -name: What are you looking for? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/rate.json b/vendor/trainer/runs/contractor-full-2026-09-22/rate.json deleted file mode 100644 index 4cf6f5b..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/rate.json +++ /dev/null @@ -1,427 +0,0 @@ -{ - "build-enquiry": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 28.436274509803923, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 28.457009345794393, - "options": 3, - "overloaded": false, - "page": "/your-building", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "change-request": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 26.0, - "options": 1, - "overloaded": false, - "page": "/clients/change-request", - "personas": 1, - "required_fields": 3, - "understanding": { - "asked": 1, - "next": 1, - "which": 0 - } - } - ], - "steps": 1 - }, - "job-application": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 28.436274509803923, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 26.605263157894736, - "options": 2, - "overloaded": false, - "page": "/work-with-us", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "log-phone-enquiry": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 16.333333333333336, - "options": 1, - "overloaded": false, - "page": "/project_managers/log-phone-enquiry", - "personas": 1, - "required_fields": 4, - "understanding": { - "asked": 1, - "next": 1, - "which": 1 - } - } - ], - "steps": 1 - }, - "neighbour-complaint": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 27.80952380952381, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "order-materials": { - "pages": [ - { - "control": { - "asked": 1, - "next": 0, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 26.42127659574468, - "options": 1, - "overloaded": false, - "page": "/crew/order-materials", - "personas": 1, - "required_fields": 3, - "understanding": { - "asked": 1, - "next": 1, - "which": 1 - } - } - ], - "steps": 1 - }, - "post-job-request": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 31.872131147540983, - "options": 1, - "overloaded": false, - "page": "/project_managers/post-job-request", - "personas": 1, - "required_fields": 4, - "understanding": { - "asked": 1, - "next": 1, - "which": 1 - } - } - ], - "steps": 1 - }, - "report-site-issue": { - "pages": [ - { - "control": { - "asked": 1, - "next": 0, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 20.010752688172044, - "options": 1, - "overloaded": false, - "page": "/crew/report-site-issue", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "safety-round-finding": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 21.604166666666664, - "options": 1, - "overloaded": false, - "page": "/safety_officer/safety-round-finding", - "personas": 1, - "required_fields": 3, - "understanding": { - "asked": 1, - "next": 1, - "which": 1 - } - } - ], - "steps": 1 - }, - "subcontractor-application": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 28.436274509803923, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 28.447289156626507, - "options": 2, - "overloaded": false, - "page": "/work-with-us", - "personas": 2, - "required_fields": 5, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "submit-bid": { - "pages": [ - { - "control": { - "asked": 1, - "next": 0, - "which": 1 - }, - "control_ok": false, - "followup_shown": true, - "lix": 22.165957446808513, - "options": 1, - "overloaded": false, - "page": "/subcontractors/submit-bid", - "personas": 1, - "required_fields": 3, - "understanding": { - "asked": 1, - "next": 1, - "which": 1 - } - } - ], - "steps": 1 - }, - "survey-enquiry": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 28.436274509803923, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 0 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 28.457009345794393, - "options": 3, - "overloaded": false, - "page": "/your-building", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "warranty-claim": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 28.436274509803923, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 22.044897959183672, - "options": 3, - "overloaded": false, - "page": "/your-building", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/rate.txt b/vendor/trainer/runs/contractor-full-2026-09-22/rate.txt deleted file mode 100644 index 46d1ac0..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/rate.txt +++ /dev/null @@ -1,19 +0,0 @@ -need LIX which asked next gutted twin says page load -survey-enquiry @/ 28 very easy 0/2 0/2 - 0/0/- ok 3 options, 0 required -survey-enquiry @/your-building 28 very easy 2/2 2/2 2/2 0/0/0 ok 3 options, 4 required -build-enquiry @/ 28 very easy 1/2 0/2 - 0/0/- ok 3 options, 0 required -build-enquiry @/your-building 28 very easy 2/2 2/2 2/2 0/0/0 ok 3 options, 4 required -warranty-claim @/ 28 very easy 2/2 0/2 - 0/0/- ok 3 options, 0 required -warranty-claim @/your-building 22 very easy 2/2 2/2 2/2 0/0/0 ok 3 options, 4 required -neighbour-complaint 28 very easy 2/2 2/2 2/2 0/0/0 ok 3 options, 3 required -subcontractor-application @/ 28 very easy 1/2 0/2 - 0/0/- ok 3 options, 0 required -subcontractor-application @/work-with-us 28 very easy 2/2 2/2 2/2 0/0/0 ok 2 options, 5 required -job-application @/ 28 very easy 2/2 0/2 - 0/0/- ok 3 options, 0 required -job-application @/work-with-us 27 very easy 2/2 2/2 2/2 0/0/0 ok 2 options, 3 required -change-request 26 very easy 0/1 1/1 1/1 0/0/0 ok 1 options, 3 required -log-phone-enquiry 16 very easy 1/1 1/1 1/1 0/0/0 ok 1 options, 4 required -post-job-request 32 easy 1/1 1/1 1/1 0/0/0 ok 1 options, 4 required -submit-bid 22 very easy 1/1 1/1 1/1 1/1/0 FAILED: which, asked 1 options, 3 required -report-site-issue 20 very easy 2/2 2/2 2/2 0/1/0 FAILED: asked 1 options, 3 required -order-materials 26 very easy 1/1 1/1 1/1 0/1/0 FAILED: asked 1 options, 3 required -safety-round-finding 22 very easy 1/1 1/1 1/1 0/0/0 ok 1 options, 3 required diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/score-full.txt b/vendor/trainer/runs/contractor-full-2026-09-22/score-full.txt deleted file mode 100644 index e4e0c55..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/score-full.txt +++ /dev/null @@ -1,5 +0,0 @@ -MISROUTE: cracked-render@/your-building: picked "Report a building problem" (0.95), the need is met by ["Report a fault in our work"] -MISROUTE: electrician-firm@/: picked "Your building project" (0.95), the need is met by ["Work with Nordvik Bygg"] -MISROUTE: electrician-firm@/work-with-us: picked "Find a job with us" (0.95), the need is met by ["Apply to work with us"] -MISROUTE: scaffolder@/work-with-us: picked "Find a job with us" (0.95), the need is met by ["Apply to work with us"] -wording: 18/22 routed right (82%) diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/score-skim.txt b/vendor/trainer/runs/contractor-full-2026-09-22/score-skim.txt deleted file mode 100644 index 0f7871a..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/score-skim.txt +++ /dev/null @@ -1,8 +0,0 @@ -MISROUTE: housing-board-damp@/: picked "Neighbour complaint" (0.95), the need is met by ["Your building project"] -MISROUTE: leaking-bathroom@/: picked "Neighbour complaint" (0.95), the need is met by ["Your building project"] -MISROUTE: electrician-firm@/: picked "Your building project" (0.95), the need is met by ["Work with Nordvik Bygg"] -MISROUTE: electrician-firm@/work-with-us: picked "Find a job with us" (0.95), the need is met by ["Apply to work with us"] -MISROUTE: scaffolder@/work-with-us: picked "Find a job with us" (0.95), the need is met by ["Apply to work with us"] -MISROUTE: carpenter-jobseeker@/work-with-us: picked "Apply to work with us" (0.95), the need is met by ["Find a job with us"] -MISROUTE: apprentice@/work-with-us: picked "Apply to work with us" (0.95), the need is met by ["Find a job with us"] -wording: 15/22 routed right (68%) diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/site.yaml b/vendor/trainer/runs/contractor-full-2026-09-22/site.yaml deleted file mode 100644 index 17b5f54..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/site.yaml +++ /dev/null @@ -1,2 +0,0 @@ -lang: en -title: Nordvik Bygg diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/tasks-full.jsonl b/vendor/trainer/runs/contractor-full-2026-09-22/tasks-full.jsonl deleted file mode 100644 index 30c8ddd..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/tasks-full.jsonl +++ /dev/null @@ -1,22 +0,0 @@ -{"id":"housing-board-damp@/","persona":"housing-board-damp","need":"survey-enquiry","page":"/","state":{"body":"I chair the board of a housing cooperative from the seventies. Two ground-floor flats have damp in the walls and we don't know if it's drainage or the facade. We need someone to tell us."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Let us know about noise, dust, or access problems from a building site near you.","Work with Nordvik Bygg":"Apply to work with us as a subcontractor or find a job as a carpenter or apprentice.","Your building project":"Report a problem, get a survey, or start a new build project."}}},"expect":["Your building project"]} -{"id":"housing-board-damp@/your-building","persona":"housing-board-damp","need":"survey-enquiry","page":"/your-building","state":{"body":"I chair the board of a housing cooperative from the seventies. Two ground-floor flats have damp in the walls and we don't know if it's drainage or the facade. We need someone to tell us."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What are you looking for?\". Which alternative do they choose?","criteria":{"Report a building problem":"You have a problem in your building. We’ll send someone qualified to look at it and tell you what it takes to fix it.","Report a fault in our work":"You found a fault in work we did. We’ll come back, look at it, and put it right.","Tell us about your building project":"You know what you want changed or built. We’ll draw it, handle the permit, and price it for you."}}},"expect":["Report a building problem","Tell us about your building project"]} -{"id":"buyer-before-purchase@/","persona":"buyer-before-purchase","need":"survey-enquiry","page":"/","state":{"body":"We are about to buy an old timber house. Before we sign we want a professional to go through it and tell us what is wrong with it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Let us know about noise, dust, or access problems from a building site near you.","Work with Nordvik Bygg":"Apply to work with us as a subcontractor or find a job as a carpenter or apprentice.","Your building project":"Report a problem, get a survey, or start a new build project."}}},"expect":["Your building project"]} -{"id":"buyer-before-purchase@/your-building","persona":"buyer-before-purchase","need":"survey-enquiry","page":"/your-building","state":{"body":"We are about to buy an old timber house. Before we sign we want a professional to go through it and tell us what is wrong with it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What are you looking for?\". Which alternative do they choose?","criteria":{"Report a building problem":"You have a problem in your building. We’ll send someone qualified to look at it and tell you what it takes to fix it.","Report a fault in our work":"You found a fault in work we did. We’ll come back, look at it, and put it right.","Tell us about your building project":"You know what you want changed or built. We’ll draw it, handle the permit, and price it for you."}}},"expect":["Report a building problem","Tell us about your building project"]} -{"id":"attic-conversion@/","persona":"attic-conversion","need":"build-enquiry","page":"/","state":{"body":"We want to turn our attic into two bedrooms and a bathroom. We need drawings and someone who handles the application to the municipality."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Let us know about noise, dust, or access problems from a building site near you.","Work with Nordvik Bygg":"Apply to work with us as a subcontractor or find a job as a carpenter or apprentice.","Your building project":"Report a problem, get a survey, or start a new build project."}}},"expect":["Your building project"]} -{"id":"attic-conversion@/your-building","persona":"attic-conversion","need":"build-enquiry","page":"/your-building","state":{"body":"We want to turn our attic into two bedrooms and a bathroom. We need drawings and someone who handles the application to the municipality."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What are you looking for?\". Which alternative do they choose?","criteria":{"Report a building problem":"You have a problem in your building. We’ll send someone qualified to look at it and tell you what it takes to fix it.","Report a fault in our work":"You found a fault in work we did. We’ll come back, look at it, and put it right.","Tell us about your building project":"You know what you want changed or built. We’ll draw it, handle the permit, and price it for you."}}},"expect":["Report a building problem","Tell us about your building project"]} -{"id":"shop-to-flat@/","persona":"shop-to-flat","need":"build-enquiry","page":"/","state":{"body":"I own a former shop on the ground floor and want to make it a flat. I have no idea what is allowed. Can you sort that out and give me a price?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Let us know about noise, dust, or access problems from a building site near you.","Work with Nordvik Bygg":"Apply to work with us as a subcontractor or find a job as a carpenter or apprentice.","Your building project":"Report a problem, get a survey, or start a new build project."}}},"expect":["Your building project"]} -{"id":"shop-to-flat@/your-building","persona":"shop-to-flat","need":"build-enquiry","page":"/your-building","state":{"body":"I own a former shop on the ground floor and want to make it a flat. I have no idea what is allowed. Can you sort that out and give me a price?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What are you looking for?\". Which alternative do they choose?","criteria":{"Report a building problem":"You have a problem in your building. We’ll send someone qualified to look at it and tell you what it takes to fix it.","Report a fault in our work":"You found a fault in work we did. We’ll come back, look at it, and put it right.","Tell us about your building project":"You know what you want changed or built. We’ll draw it, handle the permit, and price it for you."}}},"expect":["Report a building problem","Tell us about your building project"]} -{"id":"leaking-bathroom@/","persona":"leaking-bathroom","need":"warranty-claim","page":"/","state":{"body":"You redid our bathroom two years ago. Now water is coming through the ceiling of the flat below. I want you to come and fix it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Let us know about noise, dust, or access problems from a building site near you.","Work with Nordvik Bygg":"Apply to work with us as a subcontractor or find a job as a carpenter or apprentice.","Your building project":"Report a problem, get a survey, or start a new build project."}}},"expect":["Your building project"]} -{"id":"leaking-bathroom@/your-building","persona":"leaking-bathroom","need":"warranty-claim","page":"/your-building","state":{"body":"You redid our bathroom two years ago. Now water is coming through the ceiling of the flat below. I want you to come and fix it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What are you looking for?\". Which alternative do they choose?","criteria":{"Report a building problem":"You have a problem in your building. We’ll send someone qualified to look at it and tell you what it takes to fix it.","Report a fault in our work":"You found a fault in work we did. We’ll come back, look at it, and put it right.","Tell us about your building project":"You know what you want changed or built. We’ll draw it, handle the permit, and price it for you."}}},"expect":["Report a fault in our work"]} -{"id":"cracked-render@/","persona":"cracked-render","need":"warranty-claim","page":"/","state":{"body":"The render you put on our gable wall last summer has cracked right across. That can't be right after one winter."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Let us know about noise, dust, or access problems from a building site near you.","Work with Nordvik Bygg":"Apply to work with us as a subcontractor or find a job as a carpenter or apprentice.","Your building project":"Report a problem, get a survey, or start a new build project."}}},"expect":["Your building project"]} -{"id":"cracked-render@/your-building","persona":"cracked-render","need":"warranty-claim","page":"/your-building","state":{"body":"The render you put on our gable wall last summer has cracked right across. That can't be right after one winter."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What are you looking for?\". Which alternative do they choose?","criteria":{"Report a building problem":"You have a problem in your building. We’ll send someone qualified to look at it and tell you what it takes to fix it.","Report a fault in our work":"You found a fault in work we did. We’ll come back, look at it, and put it right.","Tell us about your building project":"You know what you want changed or built. We’ll draw it, handle the permit, and price it for you."}}},"expect":["Report a fault in our work"]} -{"id":"noisy-mornings@/","persona":"noisy-mornings","need":"neighbour-complaint","page":"/","state":{"body":"I live next door to the block you are working on. You start drilling at half past six every morning and I have a baby. Who do I talk to?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Let us know about noise, dust, or access problems from a building site near you.","Work with Nordvik Bygg":"Apply to work with us as a subcontractor or find a job as a carpenter or apprentice.","Your building project":"Report a problem, get a survey, or start a new build project."}}},"expect":["Neighbour complaint"]} -{"id":"blocked-driveway@/","persona":"blocked-driveway","need":"neighbour-complaint","page":"/","state":{"body":"Your skip and a van have been parked across the entrance to our shop's loading bay for three days. We can't get deliveries."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Let us know about noise, dust, or access problems from a building site near you.","Work with Nordvik Bygg":"Apply to work with us as a subcontractor or find a job as a carpenter or apprentice.","Your building project":"Report a problem, get a survey, or start a new build project."}}},"expect":["Neighbour complaint"]} -{"id":"electrician-firm@/","persona":"electrician-firm","need":"subcontractor-application","page":"/","state":{"body":"We are a four-person electrical firm, fully certified. We would like to get on your list so you call us when you need electricians."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Let us know about noise, dust, or access problems from a building site near you.","Work with Nordvik Bygg":"Apply to work with us as a subcontractor or find a job as a carpenter or apprentice.","Your building project":"Report a problem, get a survey, or start a new build project."}}},"expect":["Work with Nordvik Bygg"]} -{"id":"electrician-firm@/work-with-us","persona":"electrician-firm","need":"subcontractor-application","page":"/work-with-us","state":{"body":"We are a four-person electrical firm, fully certified. We would like to get on your list so you call us when you need electricians."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Do you want to work with us, or do you need our help with a building?\". Which alternative do they choose?","criteria":{"Apply to work with us":"Send us your details so we can check if you are a fit for our projects.","Find a job with us":"Tell us who you are and what you can do. No letter needed."}}},"expect":["Apply to work with us"]} -{"id":"scaffolder@/","persona":"scaffolder","need":"subcontractor-application","page":"/","state":{"body":"I run a scaffolding company. How do I get to do jobs for you?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Let us know about noise, dust, or access problems from a building site near you.","Work with Nordvik Bygg":"Apply to work with us as a subcontractor or find a job as a carpenter or apprentice.","Your building project":"Report a problem, get a survey, or start a new build project."}}},"expect":["Work with Nordvik Bygg"]} -{"id":"scaffolder@/work-with-us","persona":"scaffolder","need":"subcontractor-application","page":"/work-with-us","state":{"body":"I run a scaffolding company. How do I get to do jobs for you?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Do you want to work with us, or do you need our help with a building?\". Which alternative do they choose?","criteria":{"Apply to work with us":"Send us your details so we can check if you are a fit for our projects.","Find a job with us":"Tell us who you are and what you can do. No letter needed."}}},"expect":["Apply to work with us"]} -{"id":"carpenter-jobseeker@/","persona":"carpenter-jobseeker","need":"job-application","page":"/","state":{"body":"I'm a certified carpenter with eight years on rehabilitation jobs. Are you hiring?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Let us know about noise, dust, or access problems from a building site near you.","Work with Nordvik Bygg":"Apply to work with us as a subcontractor or find a job as a carpenter or apprentice.","Your building project":"Report a problem, get a survey, or start a new build project."}}},"expect":["Work with Nordvik Bygg"]} -{"id":"carpenter-jobseeker@/work-with-us","persona":"carpenter-jobseeker","need":"job-application","page":"/work-with-us","state":{"body":"I'm a certified carpenter with eight years on rehabilitation jobs. Are you hiring?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Do you want to work with us, or do you need our help with a building?\". Which alternative do they choose?","criteria":{"Apply to work with us":"Send us your details so we can check if you are a fit for our projects.","Find a job with us":"Tell us who you are and what you can do. No letter needed."}}},"expect":["Find a job with us"]} -{"id":"apprentice@/","persona":"apprentice","need":"job-application","page":"/","state":{"body":"I finish vocational school this spring and need an apprenticeship as a bricklayer."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Let us know about noise, dust, or access problems from a building site near you.","Work with Nordvik Bygg":"Apply to work with us as a subcontractor or find a job as a carpenter or apprentice.","Your building project":"Report a problem, get a survey, or start a new build project."}}},"expect":["Work with Nordvik Bygg"]} -{"id":"apprentice@/work-with-us","persona":"apprentice","need":"job-application","page":"/work-with-us","state":{"body":"I finish vocational school this spring and need an apprenticeship as a bricklayer."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Do you want to work with us, or do you need our help with a building?\". Which alternative do they choose?","criteria":{"Apply to work with us":"Send us your details so we can check if you are a fit for our projects.","Find a job with us":"Tell us who you are and what you can do. No letter needed."}}},"expect":["Find a job with us"]} diff --git a/vendor/trainer/runs/contractor-full-2026-09-22/tasks-skim.jsonl b/vendor/trainer/runs/contractor-full-2026-09-22/tasks-skim.jsonl deleted file mode 100644 index 2924928..0000000 --- a/vendor/trainer/runs/contractor-full-2026-09-22/tasks-skim.jsonl +++ /dev/null @@ -1,22 +0,0 @@ -{"id":"housing-board-damp@/","persona":"housing-board-damp","need":"survey-enquiry","page":"/","state":{"body":"I chair the board of a housing cooperative from the seventies. Two ground-floor flats have damp in the walls and we don't know if it's drainage or the facade. We need someone to tell us."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Neighbour complaint","Work with Nordvik Bygg":"Work with Nordvik Bygg","Your building project":"Your building project"}}},"expect":["Your building project"]} -{"id":"housing-board-damp@/your-building","persona":"housing-board-damp","need":"survey-enquiry","page":"/your-building","state":{"body":"I chair the board of a housing cooperative from the seventies. Two ground-floor flats have damp in the walls and we don't know if it's drainage or the facade. We need someone to tell us."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What are you looking for?\". Which alternative do they choose?","criteria":{"Report a building problem":"Report a building problem","Report a fault in our work":"Report a fault in our work","Tell us about your building project":"Tell us about your building project"}}},"expect":["Report a building problem","Tell us about your building project"]} -{"id":"buyer-before-purchase@/","persona":"buyer-before-purchase","need":"survey-enquiry","page":"/","state":{"body":"We are about to buy an old timber house. Before we sign we want a professional to go through it and tell us what is wrong with it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Neighbour complaint","Work with Nordvik Bygg":"Work with Nordvik Bygg","Your building project":"Your building project"}}},"expect":["Your building project"]} -{"id":"buyer-before-purchase@/your-building","persona":"buyer-before-purchase","need":"survey-enquiry","page":"/your-building","state":{"body":"We are about to buy an old timber house. Before we sign we want a professional to go through it and tell us what is wrong with it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What are you looking for?\". Which alternative do they choose?","criteria":{"Report a building problem":"Report a building problem","Report a fault in our work":"Report a fault in our work","Tell us about your building project":"Tell us about your building project"}}},"expect":["Report a building problem","Tell us about your building project"]} -{"id":"attic-conversion@/","persona":"attic-conversion","need":"build-enquiry","page":"/","state":{"body":"We want to turn our attic into two bedrooms and a bathroom. We need drawings and someone who handles the application to the municipality."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Neighbour complaint","Work with Nordvik Bygg":"Work with Nordvik Bygg","Your building project":"Your building project"}}},"expect":["Your building project"]} -{"id":"attic-conversion@/your-building","persona":"attic-conversion","need":"build-enquiry","page":"/your-building","state":{"body":"We want to turn our attic into two bedrooms and a bathroom. We need drawings and someone who handles the application to the municipality."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What are you looking for?\". Which alternative do they choose?","criteria":{"Report a building problem":"Report a building problem","Report a fault in our work":"Report a fault in our work","Tell us about your building project":"Tell us about your building project"}}},"expect":["Report a building problem","Tell us about your building project"]} -{"id":"shop-to-flat@/","persona":"shop-to-flat","need":"build-enquiry","page":"/","state":{"body":"I own a former shop on the ground floor and want to make it a flat. I have no idea what is allowed. Can you sort that out and give me a price?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Neighbour complaint","Work with Nordvik Bygg":"Work with Nordvik Bygg","Your building project":"Your building project"}}},"expect":["Your building project"]} -{"id":"shop-to-flat@/your-building","persona":"shop-to-flat","need":"build-enquiry","page":"/your-building","state":{"body":"I own a former shop on the ground floor and want to make it a flat. I have no idea what is allowed. Can you sort that out and give me a price?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What are you looking for?\". Which alternative do they choose?","criteria":{"Report a building problem":"Report a building problem","Report a fault in our work":"Report a fault in our work","Tell us about your building project":"Tell us about your building project"}}},"expect":["Report a building problem","Tell us about your building project"]} -{"id":"leaking-bathroom@/","persona":"leaking-bathroom","need":"warranty-claim","page":"/","state":{"body":"You redid our bathroom two years ago. Now water is coming through the ceiling of the flat below. I want you to come and fix it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Neighbour complaint","Work with Nordvik Bygg":"Work with Nordvik Bygg","Your building project":"Your building project"}}},"expect":["Your building project"]} -{"id":"leaking-bathroom@/your-building","persona":"leaking-bathroom","need":"warranty-claim","page":"/your-building","state":{"body":"You redid our bathroom two years ago. Now water is coming through the ceiling of the flat below. I want you to come and fix it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What are you looking for?\". Which alternative do they choose?","criteria":{"Report a building problem":"Report a building problem","Report a fault in our work":"Report a fault in our work","Tell us about your building project":"Tell us about your building project"}}},"expect":["Report a fault in our work"]} -{"id":"cracked-render@/","persona":"cracked-render","need":"warranty-claim","page":"/","state":{"body":"The render you put on our gable wall last summer has cracked right across. That can't be right after one winter."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Neighbour complaint","Work with Nordvik Bygg":"Work with Nordvik Bygg","Your building project":"Your building project"}}},"expect":["Your building project"]} -{"id":"cracked-render@/your-building","persona":"cracked-render","need":"warranty-claim","page":"/your-building","state":{"body":"The render you put on our gable wall last summer has cracked right across. That can't be right after one winter."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What are you looking for?\". Which alternative do they choose?","criteria":{"Report a building problem":"Report a building problem","Report a fault in our work":"Report a fault in our work","Tell us about your building project":"Tell us about your building project"}}},"expect":["Report a fault in our work"]} -{"id":"noisy-mornings@/","persona":"noisy-mornings","need":"neighbour-complaint","page":"/","state":{"body":"I live next door to the block you are working on. You start drilling at half past six every morning and I have a baby. Who do I talk to?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Neighbour complaint","Work with Nordvik Bygg":"Work with Nordvik Bygg","Your building project":"Your building project"}}},"expect":["Neighbour complaint"]} -{"id":"blocked-driveway@/","persona":"blocked-driveway","need":"neighbour-complaint","page":"/","state":{"body":"Your skip and a van have been parked across the entrance to our shop's loading bay for three days. We can't get deliveries."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Neighbour complaint","Work with Nordvik Bygg":"Work with Nordvik Bygg","Your building project":"Your building project"}}},"expect":["Neighbour complaint"]} -{"id":"electrician-firm@/","persona":"electrician-firm","need":"subcontractor-application","page":"/","state":{"body":"We are a four-person electrical firm, fully certified. We would like to get on your list so you call us when you need electricians."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Neighbour complaint","Work with Nordvik Bygg":"Work with Nordvik Bygg","Your building project":"Your building project"}}},"expect":["Work with Nordvik Bygg"]} -{"id":"electrician-firm@/work-with-us","persona":"electrician-firm","need":"subcontractor-application","page":"/work-with-us","state":{"body":"We are a four-person electrical firm, fully certified. We would like to get on your list so you call us when you need electricians."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Do you want to work with us, or do you need our help with a building?\". Which alternative do they choose?","criteria":{"Apply to work with us":"Apply to work with us","Find a job with us":"Find a job with us"}}},"expect":["Apply to work with us"]} -{"id":"scaffolder@/","persona":"scaffolder","need":"subcontractor-application","page":"/","state":{"body":"I run a scaffolding company. How do I get to do jobs for you?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Neighbour complaint","Work with Nordvik Bygg":"Work with Nordvik Bygg","Your building project":"Your building project"}}},"expect":["Work with Nordvik Bygg"]} -{"id":"scaffolder@/work-with-us","persona":"scaffolder","need":"subcontractor-application","page":"/work-with-us","state":{"body":"I run a scaffolding company. How do I get to do jobs for you?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Do you want to work with us, or do you need our help with a building?\". Which alternative do they choose?","criteria":{"Apply to work with us":"Apply to work with us","Find a job with us":"Find a job with us"}}},"expect":["Apply to work with us"]} -{"id":"carpenter-jobseeker@/","persona":"carpenter-jobseeker","need":"job-application","page":"/","state":{"body":"I'm a certified carpenter with eight years on rehabilitation jobs. Are you hiring?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Neighbour complaint","Work with Nordvik Bygg":"Work with Nordvik Bygg","Your building project":"Your building project"}}},"expect":["Work with Nordvik Bygg"]} -{"id":"carpenter-jobseeker@/work-with-us","persona":"carpenter-jobseeker","need":"job-application","page":"/work-with-us","state":{"body":"I'm a certified carpenter with eight years on rehabilitation jobs. Are you hiring?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Do you want to work with us, or do you need our help with a building?\". Which alternative do they choose?","criteria":{"Apply to work with us":"Apply to work with us","Find a job with us":"Find a job with us"}}},"expect":["Find a job with us"]} -{"id":"apprentice@/","persona":"apprentice","need":"job-application","page":"/","state":{"body":"I finish vocational school this spring and need an apprenticeship as a bricklayer."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Nordvik Bygg today?\". Which alternative do they choose?","criteria":{"Neighbour complaint":"Neighbour complaint","Work with Nordvik Bygg":"Work with Nordvik Bygg","Your building project":"Your building project"}}},"expect":["Work with Nordvik Bygg"]} -{"id":"apprentice@/work-with-us","persona":"apprentice","need":"job-application","page":"/work-with-us","state":{"body":"I finish vocational school this spring and need an apprenticeship as a bricklayer."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Do you want to work with us, or do you need our help with a building?\". Which alternative do they choose?","criteria":{"Apply to work with us":"Apply to work with us","Find a job with us":"Find a job with us"}}},"expect":["Find a job with us"]} diff --git a/vendor/trainer/runs/contractor-plan-2026-09-22/README.md b/vendor/trainer/runs/contractor-plan-2026-09-22/README.md deleted file mode 100644 index a4ea827..0000000 --- a/vendor/trainer/runs/contractor-plan-2026-09-22/README.md +++ /dev/null @@ -1,41 +0,0 @@ -# The contractor intake read into a plan by a local model - -`portal-trainer plan --intake intakes/contractor.yaml --personas -sectors/construction/needs.yaml`, nemotron-3.5-lightning:30b-a3b on -ergo's Ollama, temperature 0.2. One round, 41 seconds: the YAML -parsed and passed every check `build` makes, first try. - -That is the mechanical result. What a person reading `plan.yaml` next -to the intake finds is what the check cannot: - -- **The crew's report is public.** "The crew, ours and the - subcontractors' people, are the ones on site who report things" is - a role inside the business, so `site_incident` wants `enters_as: - crew`. The model gave it no `enters_as` and put it on the front - door. -- **A stage was dropped again.** "Often papers are missing and we have - to ask again" is an `awaiting_papers` stage, skippable. The model's - subcontractor machine is `open -> approved | rejected`. This is the - same omission the Sonnet-class model made on enquiries in the first - generated run, from a different model on a different need. -- **The need nobody asked for is missing.** "Enquiries arrive by phone, - email and text and get lost" is a project manager logging a call, - with `enters_as: project_managers`. The reference says the - "what slows us down" answer usually names one; the model wrote none. -- **Two needs with one machine land in two buckets.** `enquiry` and - `permit_application` have identical stages and the same handler and - should share `enquiries`; as written the project managers get two - lists of the same kind of case. -- **Small things.** `email` has no `type: email`. The job application - tolerates 6 fields for people the intake says are asking "if we are - hiring"; 3 is nearer. Group ids are singular (`project_manager`). - -None of the ten attached personas name a need in this plan, because -the sector file's ids are its own; `plan` listed all ten and left the -mapping to the reader, which is the intended shape. - -What this run says: the step works as a draft for a person, and the -person is not optional. The three structural misses above are all -things the intake states in one sentence and the model read past. A -check for the third is possible (an intake with `what_slows_us_down` -and no `enters_as` need is suspicious); the first two need a reader. diff --git a/vendor/trainer/runs/contractor-plan-2026-09-22/plan.yaml b/vendor/trainer/runs/contractor-plan-2026-09-22/plan.yaml deleted file mode 100644 index 73d08a5..0000000 --- a/vendor/trainer/runs/contractor-plan-2026-09-22/plan.yaml +++ /dev/null @@ -1,144 +0,0 @@ -business: Nordvik Bygg -language: en -contact: { name: Ingrid Nordvik, email: ingrid@nordvikbygg.example } - -about: > - We are twelve people. We survey old buildings, draw up rehabilitation - plans, handle the permit application, and do the building work with - our own carpenters plus subcontractors for electrical, plumbing and - scaffolding. - -needs: - - id: enquiry - who: housing boards and private owners who have a problem with a building and want someone to look at it - wants: someone to look at the building and send a quote - lands_in: enquiry - handled_by: project_manager - stages: [open, surveyed, quoted, won, lost] - done_when: [won, lost] - success: [won] - skippable: [] - moves_by: {} - watched_by: [] - max_fields: 4 - collects: - - { name: name } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - { name: urgency, type: select, options: [This week, This month, No rush] } - - - id: subcontractor_application - who: trade firms who want to be on our list of subcontractors - wants: to be on our list of subcontractors - lands_in: subcontractor - handled_by: project_manager - stages: [open, approved, rejected] - done_when: [approved, rejected] - success: [approved] - skippable: [] - moves_by: {} - watched_by: [] - max_fields: 5 - collects: - - { name: company_name } - - { name: trade_approval } - - { name: insurance } - - { name: phone, type: tel } - - { name: email } - - - id: job_application - who: carpenters and apprentices asking if we are hiring - wants: a job - lands_in: job_application - handled_by: project_manager - stages: [open, interviewed, hired, declined] - done_when: [hired, declined] - success: [hired] - skippable: [] - moves_by: {} - watched_by: [] - max_fields: 6 - collects: - - { name: name } - - { name: phone, type: tel } - - { name: experience } - - { name: availability } - - - id: site_incident - who: the crew, ours and the subcontractors' people, who report things - wants: for the safety officer to decide what is done about it and close it when it is fixed - lands_in: site_incident - handled_by: safety_officer - stages: [reported, decided, closed] - done_when: [closed] - success: [closed] - skippable: [] - moves_by: {} - watched_by: [] - max_fields: 3 - collects: - - { name: description, type: textarea } - - { name: hazard_type, type: select, options: [Hazard, Near miss, Wrong materials] } - - { name: reported_by, type: text } - - - id: permit_application - who: owners who already know what they want built and need drawings, a permit and a price - wants: drawings, a permit and a price - lands_in: permit - handled_by: project_manager - stages: [open, surveyed, quoted, won, lost] - done_when: [won, lost] - success: [won] - skippable: [] - moves_by: {} - watched_by: [] - max_fields: 5 - collects: - - { name: name } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - { name: urgency, type: select, options: [This week, This month, No rush] } - - { name: address } - -# Held out from every model that writes words. -personas: -- id: housing-board-damp - need: win-survey-work - text: | - I chair the board of a housing cooperative from the seventies. Two ground-floor flats have damp in the walls and we don't know if it's drainage or the facade. We need someone to tell us. -- id: buyer-before-purchase - need: win-survey-work - text: | - We are about to buy an old timber house. Before we sign we want a professional to go through it and tell us what is wrong with it. -- id: attic-conversion - need: win-design-work - text: | - We want to turn our attic into two bedrooms and a bathroom. We need drawings and someone who handles the application to the municipality. -- id: shop-to-flat - need: win-design-work - text: | - I own a former shop on the ground floor and want to make it a flat. I have no idea what is allowed. Can you sort that out and give me a price? -- id: electrician-firm - need: vet-subcontractor - text: | - We are a four-person electrical firm, fully certified. We would like to get on your list so you call us when you need electricians. -- id: scaffolder - need: vet-subcontractor - text: | - I run a scaffolding company. How do I get to do jobs for you? -- id: carpenter-jobseeker - need: hire-crew - text: | - I'm a certified carpenter with eight years on rehabilitation jobs. Are you hiring? -- id: apprentice - need: hire-crew - text: | - I finish vocational school this spring and need an apprenticeship as a bricklayer. -- id: loose-railing - need: report-deviation - text: | - The railing on the third level of the scaffold on the north side is loose. Nobody got hurt but someone will. -- id: wrong-membrane - need: report-deviation - text: | - The bathroom membrane delivered today is not the one in the specification. We stopped work on it. diff --git a/vendor/trainer/runs/contractor-plan-2026-09-22/reply.md b/vendor/trainer/runs/contractor-plan-2026-09-22/reply.md deleted file mode 100644 index d409f1d..0000000 --- a/vendor/trainer/runs/contractor-plan-2026-09-22/reply.md +++ /dev/null @@ -1,101 +0,0 @@ -business: Nordvik Bygg -language: en -contact: { name: Ingrid Nordvik, email: ingrid@nordvikbygg.example } - -about: > - We are twelve people. We survey old buildings, draw up rehabilitation - plans, handle the permit application, and do the building work with - our own carpenters plus subcontractors for electrical, plumbing and - scaffolding. - -needs: - - id: enquiry - who: housing boards and private owners who have a problem with a building and want someone to look at it - wants: someone to look at the building and send a quote - lands_in: enquiry - handled_by: project_manager - stages: [open, surveyed, quoted, won, lost] - done_when: [won, lost] - success: [won] - skippable: [] - moves_by: {} - watched_by: [] - max_fields: 4 - collects: - - { name: name } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - { name: urgency, type: select, options: [This week, This month, No rush] } - - - id: subcontractor_application - who: trade firms who want to be on our list of subcontractors - wants: to be on our list of subcontractors - lands_in: subcontractor - handled_by: project_manager - stages: [open, approved, rejected] - done_when: [approved, rejected] - success: [approved] - skippable: [] - moves_by: {} - watched_by: [] - max_fields: 5 - collects: - - { name: company_name } - - { name: trade_approval } - - { name: insurance } - - { name: phone, type: tel } - - { name: email } - - - id: job_application - who: carpenters and apprentices asking if we are hiring - wants: a job - lands_in: job_application - handled_by: project_manager - stages: [open, interviewed, hired, declined] - done_when: [hired, declined] - success: [hired] - skippable: [] - moves_by: {} - watched_by: [] - max_fields: 6 - collects: - - { name: name } - - { name: phone, type: tel } - - { name: experience } - - { name: availability } - - - id: site_incident - who: the crew, ours and the subcontractors' people, who report things - wants: for the safety officer to decide what is done about it and close it when it is fixed - lands_in: site_incident - handled_by: safety_officer - stages: [reported, decided, closed] - done_when: [closed] - success: [closed] - skippable: [] - moves_by: {} - watched_by: [] - max_fields: 3 - collects: - - { name: description, type: textarea } - - { name: hazard_type, type: select, options: [Hazard, Near miss, Wrong materials] } - - { name: reported_by, type: text } - - - id: permit_application - who: owners who already know what they want built and need drawings, a permit and a price - wants: drawings, a permit and a price - lands_in: permit - handled_by: project_manager - stages: [open, surveyed, quoted, won, lost] - done_when: [won, lost] - success: [won] - skippable: [] - moves_by: {} - watched_by: [] - max_fields: 5 - collects: - - { name: name } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - { name: urgency, type: select, options: [This week, This month, No rush] } - - { name: address } diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/README.md b/vendor/trainer/runs/contractor-planned-2026-09-24/README.md deleted file mode 100644 index 6fd26a6..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/README.md +++ /dev/null @@ -1,46 +0,0 @@ -# The contractor, planned end to end, 2026-09-24 - -The first site made with no hand in it after the intake: `plan` with -Sonnet against the reference that now teaches the opener, the sender, -the mails and the guards; the ten held-out construction personas -mapped to the plan's need ids by a second model call (ids only, after -the plan was final); `build` with Sonnet writing the words and iris -green; then the visitor. - -- Plan: 5 needs, 3 groups, 4 buckets, an opener for the two owner - roles, a sender, mails on four needs. The builder warned twice, and - rightly: neither featured owner got a move after sending. That is - the plan model's omission and the reader's to fix before shipping. -- Score with descriptions, three seeds: 7, 7, 6 of 8. The hand-written - contractor plan of 2026-09-21 scored 8 of 8 on the same personas, - one seed. Inside the spread of each other; the planned site is as - good as the hand-planned one on routing, and it took one command. -- Not done here: rating, and the headings-only pass, which the noise - floor says would not have told us anything. - -## Rated - -Thirteen mails, LIX 13 to 31, all very easy or easy, 23 to 39 words. -Every page: which, where, asked and next at 2 of 2 for every persona, -every control passing, prose at LIX 19 to 24. The budget audit found -four of five needs with max_fields equal to their required fields, -the tell of a model counting the form; only the crew's report (gloves -on, 3 tolerated, 2 asked) was decided from the intake. `plan` now -says so, and the reference tells the model to decide the number -first. - -## Re-planned twice, 2026-09-24 - -`r2/`: the reference now teaches the opener, the mails, stage words -and `turned_down_from`. The model used the opener, the sender and -mails again, ignored the words and the turned-down key (its ids are -English, so they cost nothing), lost round one to `moves_by: { -checking: submitter }` written as a bare word, and again gave the two -featured owner roles no move. Desks: 19 of 19, English ids scoring -fine. `r3/`: the bare word is accepted, and the spectator finding goes -back to the model for one more round: round two flagged both roles, -round three fixed them, and the built site raised no warning. A group -without a `label` cost a round too; the label now defaults to the id. -The budget tell fired on both: three or four of the needs with -max_fields equal to the form. The model does not decide that number -first however it is told; the reader does. diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/answers-full-seed0.jsonl b/vendor/trainer/runs/contractor-planned-2026-09-24/answers-full-seed0.jsonl deleted file mode 100644 index cb9de1a..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/answers-full-seed0.jsonl +++ /dev/null @@ -1,8 +0,0 @@ -{"choice":"Get someone out to look at it","confidence":0.95,"id":"housing-board-damp@/"} -{"choice":"Get someone out to look at it","confidence":0.95,"id":"buyer-before-purchase@/"} -{"choice":"Get drawings, a permit and a price","confidence":0.95,"id":"attic-conversion@/"} -{"choice":"Get drawings, a permit and a price","confidence":0.95,"id":"shop-to-flat@/"} -{"choice":"Get on our list of subcontractors","confidence":0.95,"id":"electrician-firm@/"} -{"choice":"Get someone out to look at it","confidence":0.95,"id":"scaffolder@/"} -{"choice":"Ask if we're hiring","confidence":0.95,"id":"carpenter-jobseeker@/"} -{"choice":"Ask if we're hiring","confidence":0.95,"id":"apprentice@/"} diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/answers-full-seed1.jsonl b/vendor/trainer/runs/contractor-planned-2026-09-24/answers-full-seed1.jsonl deleted file mode 100644 index 21ebe69..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/answers-full-seed1.jsonl +++ /dev/null @@ -1,8 +0,0 @@ -{"choice":"Get someone out to look at it","confidence":1.0,"id":"housing-board-damp@/"} -{"choice":"Get someone out to look at it","confidence":0.95,"id":"buyer-before-purchase@/"} -{"choice":"Get drawings, a permit and a price","confidence":1.0,"id":"attic-conversion@/"} -{"choice":"Get drawings, a permit and a price","confidence":0.95,"id":"shop-to-flat@/"} -{"choice":"Get on our list of subcontractors","confidence":0.95,"id":"electrician-firm@/"} -{"choice":"Get drawings, a permit and a price","confidence":0.95,"id":"scaffolder@/"} -{"choice":"Ask if we're hiring","confidence":0.95,"id":"carpenter-jobseeker@/"} -{"choice":"Ask if we're hiring","confidence":0.95,"id":"apprentice@/"} diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/answers-full-seed2.jsonl b/vendor/trainer/runs/contractor-planned-2026-09-24/answers-full-seed2.jsonl deleted file mode 100644 index 9593027..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/answers-full-seed2.jsonl +++ /dev/null @@ -1,8 +0,0 @@ -{"choice":"Get someone out to look at it","confidence":0.95,"id":"housing-board-damp@/"} -{"choice":"Get someone out to look at it","confidence":0.95,"id":"buyer-before-purchase@/"} -{"choice":"Get drawings, a permit and a price","confidence":0.95,"id":"attic-conversion@/"} -{"choice":"Get drawings, a permit and a price","confidence":0.95,"id":"shop-to-flat@/"} -{"choice":"Get on our list of subcontractors","confidence":1.0,"id":"electrician-firm@/"} -{"choice":"Get someone out to look at it","confidence":0.95,"id":"scaffolder@/"} -{"choice":"Ask if we're hiring","confidence":0.95,"id":"carpenter-jobseeker@/"} -{"choice":"Get someone out to look at it","confidence":0.95,"id":"apprentice@/"} diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/llm/01-prompt.md b/vendor/trainer/runs/contractor-planned-2026-09-24/llm/01-prompt.md deleted file mode 100644 index 4383e70..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/llm/01-prompt.md +++ /dev/null @@ -1,158 +0,0 @@ -# plan.yaml - -A plan is a needs spec that also says what each form collects. A -builder turns it into a working site with no further decisions, so -every structural fact about the business has to be in it. - -```yaml -business: -language: en # the intake's language code -contact: { name: , email: } -about: > - What the business does, in its own words. -mail: { from: " ", reply_to: } - # who every mail the site sends comes from; required as soon - # as any need has `mails` - -does: # the front door's first card: what the business does, one - - id: kebab-case # or two features, one role each, no button. Say it for the - for: # role the business exists for and the next one it serves. - text: what it does for them, in the intake's own words - -shows: # things a visitor may look at before asking for anything; - - id: kebab-case # each `resource` is portal's resource block, verbatim - text: one line on what it is - resource: { public: true, source: { kind: url, url: https://... } } - -doors: # a first question before the forms, only when the offers - - id: kebab-case # are more than one page holds (measured: four doors beat - who: who comes through it # ten offers on one page; six offers on one page beat doors) - -groups: # groups with a label the public may see: the committees - - { id: traffic, label: Traffic, invited_by: [board] } # a person can ask to join (optional) -invites_by: [board] # groups whose desk may invite people into every desk - -needs: - - id: kebab-case # ASCII only - who: the kind of person, in plain words, in the intake's language - wants: what they want from the business - door: # the door this public need sits behind; omit to put it on the front door - enters_as: # ONLY for a role inside the business; omit for the public - lands_in: # snake_case, ASCII - handled_by: # the role that must see and move the record - stages: [open, , ..., , ] - # EVERY stage the business said a case goes through, first to - # last, read off their own sentences one verb at a time: "they - # come in, we go and look, we send a quote, we win or lose it" - # is [open, surveyed, quoted, won, lost]. A pipeline is not an - # inbox: "answered" is rarely the real outcome. - done_when: [, ] # every stage that counts as finished, good or bad - success: [] # the finished stages that are a good outcome for the business - skippable: [] # stages a case may pass over (papers already complete) - moves_by: { : [, ...] } - # only where someone other than handled_by moves a case INTO a - # stage: another group, or `submitter` (the person who sent the - # form; the form must then collect a required `email`) - watched_by: [] # groups that see these cases and move nothing; `public` opens a - # read-only page of the bucket to everyone (contact details hidden) - mails: { open: submitter, : submitter, :
} - # who hears when a case enters a stage: `submitter` (the form - # must then collect a required `email`) or one address. Tell the - # person on arrival and on every decision that is about them. - events: { open: applied } # ONLY when rebuilding a live site: the event names its - # aggregates.yaml already has, so its records keep replaying - attended_by: > # ONLY for a stage no desk button moves: the automation that does - what moves it, in a sentence - max_fields: 4 # how many required fields THIS person will tolerate, from what - # the intake says about them: someone on a phone with gloves - # on gets 3, a first enquiry 4 to 6, a firm's paperwork 5 to 6 - collects: # the form; name is snake_case ASCII, type one of - # text (default), email, tel, textarea, date, select - - { name: name } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - { name: urgency, type: select, options: [This week, This month, No rush] } - - { name: can_do, type: select, multiple: true, options: [Drive, Cook, Carry] } # any number - - { name: committee, type: select, options_from: groups } # the labelled groups above - - { name: address, optional: true, private: true } # never on a public page -``` - -Rules: -- One need per (kind of person, thing they want). Work inside the - business counts: a role recording or posting something is a need - with `enters_as`. The intake's "what slows us down" usually names one. -- Groups are the roles the intake names, as snake_case identifiers. -- The front door opens with `does` (at most two features, one role - each) and `shows`, then holds at most seven offers: doors plus needs - with no door. A door with no need behind it, or a door on a need with - `enters_as`, is refused. A role `does` speaks for must have a move - of its own after sending (`moves_by` with `submitter`) or a public - view, or it is a spectator. -- Every need whose form collects an email should tell the person on - arrival and on the decisions about them (`mails`); the plan then - needs `mail: { from }`. -- Needs that land in the same bucket must have the same stages, - done_when, skippable, moves_by, watched_by and handled_by. -- Every required field is one the business will use to act on the - record. If the intake gives no reason to need it, make it optional or - leave it out. The required fields must not exceed max_fields. -- Only `select` lists `options`, and it must list them. -- Everything a person reads (who, wants, about, select options) is in - the intake's language. Everything a machine reads (ids, buckets, - groups, stages, field names) is plain ASCII: no æ, ø, å. -- Write no personas. - - -# Task - -A business filled in this intake. Write its plan.yaml: every need the intake implies, for the public and for each role inside the business, with the stages read off how the business says things progress, the form each need collects, and how much each person will tolerate. - -## Intake - -# An intake as the owner of a small building contractor would fill it -# in: plain words, no portal vocabulary. These are the fields the -# onboarding site asks for. -business: Nordvik Bygg -contact: { name: Ingrid Nordvik, email: ingrid@nordvikbygg.example } -language: en - -what_we_do: > - We are twelve people. We survey old buildings, draw up rehabilitation - plans, handle the permit application, and do the building work with - our own carpenters plus subcontractors for electrical, plumbing and - scaffolding. - -who_comes_to_us: > - Housing boards and private owners who have a problem with a building - and want someone to look at it. Owners who already know what they - want built and need drawings, a permit and a price. Trade firms who - want to be on our list of subcontractors. Carpenters and apprentices - asking if we are hiring. - -what_we_keep_track_of: > - Enquiries: they come in, we go and look at the building, we send a - quote, and then we either win it or lose it. Sometimes it is simply - not for us and we say so straight away. - Subcontractors: they apply, we check their company registration, - trade approval and insurance. Often papers are missing and we have to - ask again. Then they are approved or turned down. - Job applications: we read them, invite some to an interview, and hire - or decline. - Things that go wrong on site: a hazard, a near miss, wrong materials - delivered. Someone reports it, the safety officer decides what is - done about it, and closes it when it is fixed. - -who_is_involved: > - Two project managers handle enquiries, subcontractors and hiring. - One safety officer handles everything reported from site. - The crew, ours and the subcontractors' people, are the ones on site - who report things. They are on their phones, with gloves on, and - will not fill in a long form. - -what_slows_us_down: > - Enquiries arrive by phone, email and text and get lost. We never know - which subcontractors have valid papers. Site problems get mentioned - at lunch and forgotten. - - -Reply with the YAML only, no prose, no code fences. \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/llm/01-reply.md b/vendor/trainer/runs/contractor-planned-2026-09-24/llm/01-reply.md deleted file mode 100644 index 6e6437a..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/llm/01-reply.md +++ /dev/null @@ -1,104 +0,0 @@ -```yaml -business: Nordvik Bygg -language: en -contact: { name: Ingrid Nordvik, email: ingrid@nordvikbygg.example } -about: > - We survey old buildings, draw up rehabilitation plans, handle the permit - application, and do the building work with our own carpenters plus - subcontractors for electrical, plumbing and scaffolding. -mail: { from: "Nordvik Bygg ", reply_to: ingrid@nordvikbygg.example } - -does: - - id: survey-and-quote - for: building-problem - text: We come and look at your building, draw up a plan and send you a quote. - - id: design-permit-build - for: known-project - text: We draw the plans, handle the permit application and build it. - -needs: - - id: building-problem - who: A housing board or private owner with a problem with a building - wants: Someone to come and look at it, and tell them what it would cost to fix - lands_in: enquiries - handled_by: project_managers - stages: [open, surveyed, quoted, won, lost, declined] - done_when: [won, lost, declined] - success: [won] - skippable: [surveyed, quoted] - mails: { open: submitter, quoted: submitter, won: submitter, lost: submitter, declined: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: phone, type: tel, optional: true } - - { name: address } - - { name: problem, type: textarea } - - - id: known-project - who: An owner who already knows what they want built - wants: Drawings, a permit application and a price - lands_in: enquiries - handled_by: project_managers - stages: [open, surveyed, quoted, won, lost, declined] - done_when: [won, lost, declined] - success: [won] - skippable: [surveyed, quoted] - mails: { open: submitter, quoted: submitter, won: submitter, lost: submitter, declined: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: address } - - { name: project, type: textarea } - - - id: subcontractor-application - who: A trade firm that wants to be on our list of subcontractors - wants: To be approved as a subcontractor - lands_in: subcontractors - handled_by: project_managers - stages: [open, checking, papers_requested, approved, rejected] - done_when: [approved, rejected] - success: [approved] - skippable: [papers_requested] - mails: { open: submitter, papers_requested: submitter, approved: submitter, rejected: submitter } - max_fields: 5 - collects: - - { name: company_name } - - { name: registration_number } - - { name: trade, type: select, options: [Electrical, Plumbing, Scaffolding, Other] } - - { name: insurance } - - { name: email, type: email } - - - id: job-application - who: A carpenter or apprentice asking if we are hiring - wants: To apply for a job with us - lands_in: applications - handled_by: project_managers - stages: [open, interview, hired, declined] - done_when: [hired, declined] - success: [hired] - skippable: [interview] - mails: { open: submitter, interview: submitter, hired: submitter, declined: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: role, type: select, options: [Carpenter, Apprentice] } - - { name: message, type: textarea } - - - id: site-report - who: Crew on site, ours or a subcontractor's - wants: To report a hazard, near miss or wrong materials before it is forgotten - enters_as: crew - lands_in: site_reports - handled_by: safety_officer - stages: [open, closed] - done_when: [closed] - success: [closed] - max_fields: 3 - collects: - - { name: type, type: select, options: [Hazard, Near miss, Wrong materials] } - - { name: description, type: textarea } - - { name: location, optional: true } -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/model.json b/vendor/trainer/runs/contractor-planned-2026-09-24/model.json deleted file mode 100644 index f25734a..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/model.json +++ /dev/null @@ -1,660 +0,0 @@ -{ - "needs": [ - { - "id": "building-problem", - "who": "A housing board or private owner with a problem with a building", - "wants": "Someone to come and look at it, and tell them what it would cost to fix", - "enters_as": null, - "lands_in": "enquiries", - "handled_by": "project_managers", - "done_when": [ - "won", - "lost", - "declined" - ], - "success": [ - "won" - ], - "steps": [ - { - "page": "/", - "question": "What do you need done?", - "context": "Old buildings, put right by people who know them: We've been surveying, permitting and rebuilding old buildings for years, from the first look to the last coat of paint. One team from drawings to finished build: Drawings, the permit application, and the building work, all handled by us and the trades we trust. Know what it needs and what it costs: We come look at the building, work out what's actually wrong, and give you a clear price for fixing it.", - "options": [ - { - "name": "Get someone out to look at it", - "description": "Tell us what's wrong and where. We'll come out, take a look, and tell you straight what it needs and what it costs." - }, - { - "name": "Get drawings, a permit and a price", - "description": "You know what you want built. We'll draw it up, handle the permit application, and give you a price." - }, - { - "name": "Get on our list of subcontractors", - "description": "Want to work with us on electrical, plumbing or scaffolding jobs? Send us your details and we'll take it from there." - }, - { - "name": "Ask if we're hiring", - "description": "Carpenter or apprentice, we're always glad to hear from good people. Tell us a bit about yourself." - } - ], - "expect": [ - "Get someone out to look at it" - ], - "alternative": "Get someone out to look at it", - "fields": [ - { - "name": "name", - "label": "Name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "phone", - "label": "Phone", - "type": "tel", - "optional": true, - "options": [] - }, - { - "name": "address", - "label": "Address", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "problem", - "label": "What's the problem?", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "known-project", - "who": "An owner who already knows what they want built", - "wants": "Drawings, a permit application and a price", - "enters_as": null, - "lands_in": "enquiries", - "handled_by": "project_managers", - "done_when": [ - "won", - "lost", - "declined" - ], - "success": [ - "won" - ], - "steps": [ - { - "page": "/", - "question": "What do you need done?", - "context": "Old buildings, put right by people who know them: We've been surveying, permitting and rebuilding old buildings for years, from the first look to the last coat of paint. One team from drawings to finished build: Drawings, the permit application, and the building work, all handled by us and the trades we trust. Know what it needs and what it costs: We come look at the building, work out what's actually wrong, and give you a clear price for fixing it.", - "options": [ - { - "name": "Get someone out to look at it", - "description": "Tell us what's wrong and where. We'll come out, take a look, and tell you straight what it needs and what it costs." - }, - { - "name": "Get drawings, a permit and a price", - "description": "You know what you want built. We'll draw it up, handle the permit application, and give you a price." - }, - { - "name": "Get on our list of subcontractors", - "description": "Want to work with us on electrical, plumbing or scaffolding jobs? Send us your details and we'll take it from there." - }, - { - "name": "Ask if we're hiring", - "description": "Carpenter or apprentice, we're always glad to hear from good people. Tell us a bit about yourself." - } - ], - "expect": [ - "Get drawings, a permit and a price" - ], - "alternative": "Get drawings, a permit and a price", - "fields": [ - { - "name": "name", - "label": "Name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "address", - "label": "Address", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "project", - "label": "What are you planning?", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "subcontractor-application", - "who": "A trade firm that wants to be on our list of subcontractors", - "wants": "To be approved as a subcontractor", - "enters_as": null, - "lands_in": "subcontractors", - "handled_by": "project_managers", - "done_when": [ - "approved", - "rejected" - ], - "success": [ - "approved" - ], - "steps": [ - { - "page": "/", - "question": "What do you need done?", - "context": "Old buildings, put right by people who know them: We've been surveying, permitting and rebuilding old buildings for years, from the first look to the last coat of paint. One team from drawings to finished build: Drawings, the permit application, and the building work, all handled by us and the trades we trust. Know what it needs and what it costs: We come look at the building, work out what's actually wrong, and give you a clear price for fixing it.", - "options": [ - { - "name": "Get someone out to look at it", - "description": "Tell us what's wrong and where. We'll come out, take a look, and tell you straight what it needs and what it costs." - }, - { - "name": "Get drawings, a permit and a price", - "description": "You know what you want built. We'll draw it up, handle the permit application, and give you a price." - }, - { - "name": "Get on our list of subcontractors", - "description": "Want to work with us on electrical, plumbing or scaffolding jobs? Send us your details and we'll take it from there." - }, - { - "name": "Ask if we're hiring", - "description": "Carpenter or apprentice, we're always glad to hear from good people. Tell us a bit about yourself." - } - ], - "expect": [ - "Get on our list of subcontractors" - ], - "alternative": "Get on our list of subcontractors", - "fields": [ - { - "name": "company_name", - "label": "Company name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "registration_number", - "label": "Registration number", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "trade", - "label": "Trade", - "type": "select", - "optional": false, - "options": [ - "Electrical", - "Plumbing", - "Scaffolding", - "Other" - ] - }, - { - "name": "insurance", - "label": "Insurance in place?", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "job-application", - "who": "A carpenter or apprentice asking if we are hiring", - "wants": "To apply for a job with us", - "enters_as": null, - "lands_in": "applications", - "handled_by": "project_managers", - "done_when": [ - "hired", - "declined" - ], - "success": [ - "hired" - ], - "steps": [ - { - "page": "/", - "question": "What do you need done?", - "context": "Old buildings, put right by people who know them: We've been surveying, permitting and rebuilding old buildings for years, from the first look to the last coat of paint. One team from drawings to finished build: Drawings, the permit application, and the building work, all handled by us and the trades we trust. Know what it needs and what it costs: We come look at the building, work out what's actually wrong, and give you a clear price for fixing it.", - "options": [ - { - "name": "Get someone out to look at it", - "description": "Tell us what's wrong and where. We'll come out, take a look, and tell you straight what it needs and what it costs." - }, - { - "name": "Get drawings, a permit and a price", - "description": "You know what you want built. We'll draw it up, handle the permit application, and give you a price." - }, - { - "name": "Get on our list of subcontractors", - "description": "Want to work with us on electrical, plumbing or scaffolding jobs? Send us your details and we'll take it from there." - }, - { - "name": "Ask if we're hiring", - "description": "Carpenter or apprentice, we're always glad to hear from good people. Tell us a bit about yourself." - } - ], - "expect": [ - "Ask if we're hiring" - ], - "alternative": "Ask if we're hiring", - "fields": [ - { - "name": "name", - "label": "Name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "role", - "label": "What kind of work?", - "type": "select", - "optional": false, - "options": [ - "Carpenter", - "Apprentice" - ] - }, - { - "name": "message", - "label": "Tell us about yourself", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "site-report", - "who": "Crew on site, ours or a subcontractor's", - "wants": "To report a hazard, near miss or wrong materials before it is forgotten", - "enters_as": "crew", - "lands_in": "site_reports", - "handled_by": "safety_officer", - "done_when": [ - "closed" - ], - "success": [ - "closed" - ], - "steps": [ - { - "page": "/crew/site-report", - "question": "Is something on this site unsafe or not right?", - "context": "", - "options": [ - { - "name": "Flag a hazard on site", - "description": "See a hazard, near miss or wrong materials on site? Log it before it slips your mind." - } - ], - "expect": [ - "Flag a hazard on site" - ], - "alternative": "Flag a hazard on site", - "fields": [ - { - "name": "type", - "label": "What kind of issue", - "type": "select", - "optional": false, - "options": [ - "Hazard", - "Near miss", - "Wrong materials" - ] - }, - { - "name": "description", - "label": "What's wrong", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "location", - "label": "Where on site", - "type": "text", - "optional": true, - "options": [] - } - ] - } - ] - } - ], - "buckets": { - "enquiries": { - "initial": "open", - "transitions": { - "open": [ - "surveyed", - "quoted", - "won", - "lost", - "declined" - ], - "quoted": [ - "won", - "lost", - "declined" - ], - "surveyed": [ - "quoted", - "won", - "lost", - "declined" - ] - }, - "desks": [ - { - "page": "/project_managers", - "group": "project_managers", - "moves": [ - { - "from": "open", - "to": "surveyed", - "label": "Log the survey" - }, - { - "from": "open", - "to": "quoted", - "label": "Send a price" - }, - { - "from": "open", - "to": "won", - "label": "Mark as won" - }, - { - "from": "open", - "to": "lost", - "label": "Mark as lost" - }, - { - "from": "open", - "to": "declined", - "label": "Turn down" - }, - { - "from": "quoted", - "to": "won", - "label": "Mark as won" - }, - { - "from": "quoted", - "to": "lost", - "label": "Mark as lost" - }, - { - "from": "quoted", - "to": "declined", - "label": "Turn down" - }, - { - "from": "surveyed", - "to": "quoted", - "label": "Send a price" - }, - { - "from": "surveyed", - "to": "won", - "label": "Mark as won" - }, - { - "from": "surveyed", - "to": "lost", - "label": "Mark as lost" - }, - { - "from": "surveyed", - "to": "declined", - "label": "Turn down" - } - ] - } - ], - "self_moves": [] - }, - "subcontractors": { - "initial": "open", - "transitions": { - "papers_requested": [ - "approved", - "rejected" - ], - "open": [ - "checking", - "rejected" - ], - "checking": [ - "papers_requested", - "approved", - "rejected" - ] - }, - "desks": [ - { - "page": "/project_managers", - "group": "project_managers", - "moves": [ - { - "from": "checking", - "to": "papers_requested", - "label": "Ask for papers" - }, - { - "from": "checking", - "to": "approved", - "label": "Approve them" - }, - { - "from": "checking", - "to": "rejected", - "label": "Turn down" - }, - { - "from": "open", - "to": "checking", - "label": "Start checking" - }, - { - "from": "open", - "to": "rejected", - "label": "Turn down" - }, - { - "from": "papers_requested", - "to": "approved", - "label": "Approve them" - }, - { - "from": "papers_requested", - "to": "rejected", - "label": "Turn down" - } - ] - } - ], - "self_moves": [] - }, - "applications": { - "initial": "open", - "transitions": { - "interview": [ - "hired", - "declined" - ], - "open": [ - "interview", - "hired", - "declined" - ] - }, - "desks": [ - { - "page": "/project_managers", - "group": "project_managers", - "moves": [ - { - "from": "interview", - "to": "hired", - "label": "Offer the job" - }, - { - "from": "interview", - "to": "declined", - "label": "Not moving forward" - }, - { - "from": "open", - "to": "interview", - "label": "Call in for interview" - }, - { - "from": "open", - "to": "hired", - "label": "Hire straight away" - }, - { - "from": "open", - "to": "declined", - "label": "Not a fit" - } - ] - } - ], - "self_moves": [] - }, - "site_reports": { - "initial": "open", - "transitions": { - "open": [ - "closed" - ] - }, - "desks": [ - { - "page": "/safety_officer", - "group": "safety_officer", - "moves": [ - { - "from": "open", - "to": "closed", - "label": "Mark sorted" - } - ] - } - ], - "self_moves": [] - } - }, - "personas": [ - { - "id": "housing-board-damp", - "need": "building-problem", - "text": "I chair the board of a housing cooperative from the seventies. Two ground-floor flats have damp in the walls and we don't know if it's drainage or the facade. We need someone to tell us." - }, - { - "id": "buyer-before-purchase", - "need": "building-problem", - "text": "We are about to buy an old timber house. Before we sign we want a professional to go through it and tell us what is wrong with it." - }, - { - "id": "attic-conversion", - "need": "known-project", - "text": "We want to turn our attic into two bedrooms and a bathroom. We need drawings and someone who handles the application to the municipality." - }, - { - "id": "shop-to-flat", - "need": "known-project", - "text": "I own a former shop on the ground floor and want to make it a flat. I have no idea what is allowed. Can you sort that out and give me a price?" - }, - { - "id": "electrician-firm", - "need": "subcontractor-application", - "text": "We are a four-person electrical firm, fully certified. We would like to get on your list so you call us when you need electricians." - }, - { - "id": "scaffolder", - "need": "subcontractor-application", - "text": "I run a scaffolding company. How do I get to do jobs for you?" - }, - { - "id": "carpenter-jobseeker", - "need": "job-application", - "text": "I'm a certified carpenter with eight years on rehabilitation jobs. Are you hiring?" - }, - { - "id": "apprentice", - "need": "job-application", - "text": "I finish vocational school this spring and need an apprenticeship as a bricklayer." - }, - { - "id": "loose-railing", - "need": "site-report", - "text": "The railing on the third level of the scaffold on the north side is loose. Nobody got hurt but someone will." - }, - { - "id": "wrong-membrane", - "need": "site-report", - "text": "The bathroom membrane delivered today is not the one in the specification. We stopped work on it." - } - ] -} \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/plan.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/plan.yaml deleted file mode 100644 index 36fadaa..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/plan.yaml +++ /dev/null @@ -1,145 +0,0 @@ -business: Nordvik Bygg -language: en -contact: { name: Ingrid Nordvik, email: ingrid@nordvikbygg.example } -about: > - We survey old buildings, draw up rehabilitation plans, handle the permit - application, and do the building work with our own carpenters plus - subcontractors for electrical, plumbing and scaffolding. -mail: { from: "Nordvik Bygg ", reply_to: ingrid@nordvikbygg.example } - -does: - - id: survey-and-quote - for: building-problem - text: We come and look at your building, draw up a plan and send you a quote. - - id: design-permit-build - for: known-project - text: We draw the plans, handle the permit application and build it. - -needs: - - id: building-problem - who: A housing board or private owner with a problem with a building - wants: Someone to come and look at it, and tell them what it would cost to fix - lands_in: enquiries - handled_by: project_managers - stages: [open, surveyed, quoted, won, lost, declined] - done_when: [won, lost, declined] - success: [won] - skippable: [surveyed, quoted] - mails: { open: submitter, quoted: submitter, won: submitter, lost: submitter, declined: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: phone, type: tel, optional: true } - - { name: address } - - { name: problem, type: textarea } - - - id: known-project - who: An owner who already knows what they want built - wants: Drawings, a permit application and a price - lands_in: enquiries - handled_by: project_managers - stages: [open, surveyed, quoted, won, lost, declined] - done_when: [won, lost, declined] - success: [won] - skippable: [surveyed, quoted] - mails: { open: submitter, quoted: submitter, won: submitter, lost: submitter, declined: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: address } - - { name: project, type: textarea } - - - id: subcontractor-application - who: A trade firm that wants to be on our list of subcontractors - wants: To be approved as a subcontractor - lands_in: subcontractors - handled_by: project_managers - stages: [open, checking, papers_requested, approved, rejected] - done_when: [approved, rejected] - success: [approved] - skippable: [papers_requested] - mails: { open: submitter, papers_requested: submitter, approved: submitter, rejected: submitter } - max_fields: 5 - collects: - - { name: company_name } - - { name: registration_number } - - { name: trade, type: select, options: [Electrical, Plumbing, Scaffolding, Other] } - - { name: insurance } - - { name: email, type: email } - - - id: job-application - who: A carpenter or apprentice asking if we are hiring - wants: To apply for a job with us - lands_in: applications - handled_by: project_managers - stages: [open, interview, hired, declined] - done_when: [hired, declined] - success: [hired] - skippable: [interview] - mails: { open: submitter, interview: submitter, hired: submitter, declined: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: role, type: select, options: [Carpenter, Apprentice] } - - { name: message, type: textarea } - - - id: site-report - who: Crew on site, ours or a subcontractor's - wants: To report a hazard, near miss or wrong materials before it is forgotten - enters_as: crew - lands_in: site_reports - handled_by: safety_officer - stages: [open, closed] - done_when: [closed] - success: [closed] - max_fields: 3 - collects: - - { name: type, type: select, options: [Hazard, Near miss, Wrong materials] } - - { name: description, type: textarea } - - { name: location, optional: true } - -# Held out from every model that writes words. -personas: -- id: housing-board-damp - need: building-problem - text: | - I chair the board of a housing cooperative from the seventies. Two ground-floor flats have damp in the walls and we don't know if it's drainage or the facade. We need someone to tell us. -- id: buyer-before-purchase - need: building-problem - text: | - We are about to buy an old timber house. Before we sign we want a professional to go through it and tell us what is wrong with it. -- id: attic-conversion - need: known-project - text: | - We want to turn our attic into two bedrooms and a bathroom. We need drawings and someone who handles the application to the municipality. -- id: shop-to-flat - need: known-project - text: | - I own a former shop on the ground floor and want to make it a flat. I have no idea what is allowed. Can you sort that out and give me a price? -- id: electrician-firm - need: subcontractor-application - text: | - We are a four-person electrical firm, fully certified. We would like to get on your list so you call us when you need electricians. -- id: scaffolder - need: subcontractor-application - text: | - I run a scaffolding company. How do I get to do jobs for you? -- id: carpenter-jobseeker - need: job-application - text: | - I'm a certified carpenter with eight years on rehabilitation jobs. Are you hiring? -- id: apprentice - need: job-application - text: | - I finish vocational school this spring and need an apprenticeship as a bricklayer. -- id: loose-railing - need: site-report - text: | - The railing on the third level of the scaffold on the north side is loose. Nobody got hurt but someone will. -- id: wrong-membrane - need: site-report - text: | - The bathroom membrane delivered today is not the one in the specification. We stopped work on it. diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/llm/01-prompt.md b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/llm/01-prompt.md deleted file mode 100644 index 0d89f80..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/llm/01-prompt.md +++ /dev/null @@ -1,168 +0,0 @@ -# plan.yaml - -A plan is a needs spec that also says what each form collects. A -builder turns it into a working site with no further decisions, so -every structural fact about the business has to be in it. - -```yaml -business: -language: en # the intake's language code -contact: { name: , email: } -about: > - What the business does, in its own words. -mail: { from: " ", reply_to: } - # who every mail the site sends comes from; required as soon - # as any need has `mails` - -does: # the front door's first card: what the business does, one - - id: kebab-case # or two features, one role each, no button. Say it for the - for: # role the business exists for and the next one it serves. - text: what it does for them, in the intake's own words - -shows: # things a visitor may look at before asking for anything; - - id: kebab-case # each `resource` is portal's resource block, verbatim - text: one line on what it is - resource: { public: true, source: { kind: url, url: https://... } } - -doors: # a first question before the forms, only when the offers - - id: kebab-case # are more than one page holds (measured: four doors beat - who: who comes through it # ten offers on one page; six offers on one page beat doors) - -groups: # groups with a label the public may see: the committees - - { id: traffic, label: Traffic, invited_by: [board] } # a person can ask to join (optional) -invites_by: [board] # groups whose desk may invite people into every desk - -needs: - - id: kebab-case # ASCII only - who: the kind of person, in plain words, in the intake's language - wants: what they want from the business - door: # the door this public need sits behind; omit to put it on the front door - enters_as: # ONLY for a role inside the business; omit for the public - lands_in: # snake_case, ASCII - handled_by: # the role that must see and move the record - stages: [open, , ..., , ] - # EVERY stage the business said a case goes through, first to - # last, read off their own sentences one verb at a time: "they - # come in, we go and look, we send a quote, we win or lose it" - # is [open, surveyed, quoted, won, lost]. A pipeline is not an - # inbox: "answered" is rarely the real outcome. - done_when: [, ] # every stage that counts as finished, good or bad - success: [] # the finished stages that are a good outcome for the business - skippable: [] # stages a case may pass over (papers already complete) - turned_down_from: [open, ] - # the unfinished stages a case can still be turned down from; - # omit for every one. An applicant is declined before they - # start, not after - after, they depart - moves_by: { : [, ...] } - # only where someone other than handled_by moves a case INTO a - # stage: another group, or `submitter` (the person who sent the - # form; the form must then collect a required `email`) - watched_by: [] # groups that see these cases and move nothing; `public` opens a - # read-only page of the bucket to everyone (contact details hidden) - mails: { open: submitter, : submitter, :
} - # who hears when a case enters a stage: `submitter` (the form - # must then collect a required `email`) or one address. Tell the - # person on arrival and on every decision that is about them. - stages_text: { open: , : } - # each stage in the intake's language, where the ASCII id - # would read wrong to a person: "ikke_lost" is "ikke løst" - events: { open: applied } # ONLY when rebuilding a live site: the event names its - # aggregates.yaml already has, so its records keep replaying - attended_by: > # ONLY for a stage no desk button moves: the automation that does - what moves it, in a sentence - max_fields: 4 # decide this BEFORE writing collects, from what the intake - # says about the person; a budget that equals the form's size - # is counted, not decided, and is reported as such - # how many required fields THIS person will tolerate, from what - # the intake says about them: someone on a phone with gloves - # on gets 3, a first enquiry 4 to 6, a firm's paperwork 5 to 6 - collects: # the form; name is snake_case ASCII, type one of - # text (default), email, tel, textarea, date, select - - { name: name } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - { name: urgency, type: select, options: [This week, This month, No rush] } - - { name: can_do, type: select, multiple: true, options: [Drive, Cook, Carry] } # any number - - { name: committee, type: select, options_from: groups } # the labelled groups above - - { name: address, optional: true, private: true } # never on a public page -``` - -Rules: -- One need per (kind of person, thing they want). Work inside the - business counts: a role recording or posting something is a need - with `enters_as`. The intake's "what slows us down" usually names one. -- Groups are the roles the intake names, as snake_case identifiers. -- The front door opens with `does` (at most two features, one role - each) and `shows`, then holds at most seven offers: doors plus needs - with no door. A door with no need behind it, or a door on a need with - `enters_as`, is refused. A role `does` speaks for must have a move - of its own after sending (`moves_by` with `submitter`) or a public - view, or it is a spectator. -- Every need whose form collects an email should tell the person on - arrival and on the decisions about them (`mails`); the plan then - needs `mail: { from }`. -- Needs that land in the same bucket must have the same stages, - done_when, skippable, moves_by, watched_by and handled_by. -- Every required field is one the business will use to act on the - record. If the intake gives no reason to need it, make it optional or - leave it out. The required fields must not exceed max_fields. -- Only `select` lists `options`, and it must list them. -- Everything a person reads (who, wants, about, select options) is in - the intake's language. Everything a machine reads (ids, buckets, - groups, stages, field names) is plain ASCII: no æ, ø, å. -- Write no personas. - - -# Task - -A business filled in this intake. Write its plan.yaml: every need the intake implies, for the public and for each role inside the business, with the stages read off how the business says things progress, the form each need collects, and how much each person will tolerate. - -## Intake - -# An intake as the owner of a small building contractor would fill it -# in: plain words, no portal vocabulary. These are the fields the -# onboarding site asks for. -business: Nordvik Bygg -contact: { name: Ingrid Nordvik, email: ingrid@nordvikbygg.example } -language: en - -what_we_do: > - We are twelve people. We survey old buildings, draw up rehabilitation - plans, handle the permit application, and do the building work with - our own carpenters plus subcontractors for electrical, plumbing and - scaffolding. - -who_comes_to_us: > - Housing boards and private owners who have a problem with a building - and want someone to look at it. Owners who already know what they - want built and need drawings, a permit and a price. Trade firms who - want to be on our list of subcontractors. Carpenters and apprentices - asking if we are hiring. - -what_we_keep_track_of: > - Enquiries: they come in, we go and look at the building, we send a - quote, and then we either win it or lose it. Sometimes it is simply - not for us and we say so straight away. - Subcontractors: they apply, we check their company registration, - trade approval and insurance. Often papers are missing and we have to - ask again. Then they are approved or turned down. - Job applications: we read them, invite some to an interview, and hire - or decline. - Things that go wrong on site: a hazard, a near miss, wrong materials - delivered. Someone reports it, the safety officer decides what is - done about it, and closes it when it is fixed. - -who_is_involved: > - Two project managers handle enquiries, subcontractors and hiring. - One safety officer handles everything reported from site. - The crew, ours and the subcontractors' people, are the ones on site - who report things. They are on their phones, with gloves on, and - will not fill in a long form. - -what_slows_us_down: > - Enquiries arrive by phone, email and text and get lost. We never know - which subcontractors have valid papers. Site problems get mentioned - at lunch and forgotten. - - -Reply with the YAML only, no prose, no code fences. \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/llm/01-reply.md b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/llm/01-reply.md deleted file mode 100644 index 6f719e5..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/llm/01-reply.md +++ /dev/null @@ -1,112 +0,0 @@ -```yaml -business: Nordvik Bygg -language: en -contact: { name: Ingrid Nordvik, email: ingrid@nordvikbygg.example } -about: > - We are twelve people. We survey old buildings, draw up rehabilitation - plans, handle the permit application, and do the building work with - our own carpenters plus subcontractors for electrical, plumbing and - scaffolding. -mail: { from: "Nordvik Bygg ", reply_to: ingrid@nordvikbygg.example } - -does: - - id: assess-your-building - for: building-problem - text: We survey the building, draw up a rehabilitation plan, and handle the permit application. - - id: build-your-project - for: new-build-project - text: Already know what you want built? We do the drawings, the permit and the price, then build it with our own carpenters and trusted subcontractors. - -groups: - - { id: project_managers, label: Project Managers } - - { id: safety_officer, label: Safety Officer } - - { id: crew, label: Crew } - -needs: - - id: building-problem - who: housing boards and private owners with a problem with a building - wants: someone to come and look at the building and tell them what can be done - lands_in: enquiries - handled_by: project_managers - stages: [open, surveyed, quoted, won, lost] - done_when: [won, lost] - success: [won] - skippable: [surveyed, quoted] - mails: { open: submitter, won: submitter, lost: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - { name: address, optional: true, private: true } - - - id: new-build-project - who: owners who already know what they want built - wants: drawings, a permit and a price - lands_in: enquiries - handled_by: project_managers - stages: [open, surveyed, quoted, won, lost] - done_when: [won, lost] - success: [won] - skippable: [surveyed, quoted] - mails: { open: submitter, won: submitter, lost: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: project_description, type: textarea } - - - id: subcontractor-application - who: trade firms who want to be on the list of subcontractors - wants: to be approved as a subcontractor - lands_in: subcontractors - handled_by: project_managers - stages: [open, checking, papers_requested, approved, declined] - done_when: [approved, declined] - success: [approved] - skippable: [papers_requested] - moves_by: { checking: submitter } - mails: { open: submitter, papers_requested: submitter, approved: submitter, declined: submitter } - max_fields: 5 - collects: - - { name: company_name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: trade, type: select, options: [Electrical, Plumbing, Scaffolding, Other] } - - { name: registration_number } - - { name: insurance_info, type: textarea, optional: true } - - - id: job-application - who: carpenters and apprentices asking if we are hiring - wants: a job with us - lands_in: job_applications - handled_by: project_managers - stages: [open, interviewing, hired, declined] - done_when: [hired, declined] - success: [hired] - skippable: [interviewing] - mails: { open: submitter, hired: submitter, declined: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: message, type: textarea } - - - id: report-site-issue - who: crew, ours and the subcontractors' people, on site - wants: to report a hazard, near miss or wrong delivery - enters_as: crew - lands_in: site_issues - handled_by: safety_officer - stages: [open, action_decided, closed] - done_when: [closed] - success: [closed] - max_fields: 3 - collects: - - { name: issue_type, type: select, options: [Hazard, Near miss, Wrong materials, Other] } - - { name: location } - - { name: details, type: textarea, optional: true } -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/llm/02-prompt.md b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/llm/02-prompt.md deleted file mode 100644 index dba5ddc..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/llm/02-prompt.md +++ /dev/null @@ -1,288 +0,0 @@ -# plan.yaml - -A plan is a needs spec that also says what each form collects. A -builder turns it into a working site with no further decisions, so -every structural fact about the business has to be in it. - -```yaml -business: -language: en # the intake's language code -contact: { name: , email: } -about: > - What the business does, in its own words. -mail: { from: " ", reply_to: } - # who every mail the site sends comes from; required as soon - # as any need has `mails` - -does: # the front door's first card: what the business does, one - - id: kebab-case # or two features, one role each, no button. Say it for the - for: # role the business exists for and the next one it serves. - text: what it does for them, in the intake's own words - -shows: # things a visitor may look at before asking for anything; - - id: kebab-case # each `resource` is portal's resource block, verbatim - text: one line on what it is - resource: { public: true, source: { kind: url, url: https://... } } - -doors: # a first question before the forms, only when the offers - - id: kebab-case # are more than one page holds (measured: four doors beat - who: who comes through it # ten offers on one page; six offers on one page beat doors) - -groups: # groups with a label the public may see: the committees - - { id: traffic, label: Traffic, invited_by: [board] } # a person can ask to join (optional) -invites_by: [board] # groups whose desk may invite people into every desk - -needs: - - id: kebab-case # ASCII only - who: the kind of person, in plain words, in the intake's language - wants: what they want from the business - door: # the door this public need sits behind; omit to put it on the front door - enters_as: # ONLY for a role inside the business; omit for the public - lands_in: # snake_case, ASCII - handled_by: # the role that must see and move the record - stages: [open, , ..., , ] - # EVERY stage the business said a case goes through, first to - # last, read off their own sentences one verb at a time: "they - # come in, we go and look, we send a quote, we win or lose it" - # is [open, surveyed, quoted, won, lost]. A pipeline is not an - # inbox: "answered" is rarely the real outcome. - done_when: [, ] # every stage that counts as finished, good or bad - success: [] # the finished stages that are a good outcome for the business - skippable: [] # stages a case may pass over (papers already complete) - turned_down_from: [open, ] - # the unfinished stages a case can still be turned down from; - # omit for every one. An applicant is declined before they - # start, not after - after, they depart - moves_by: { : [, ...] } - # only where someone other than handled_by moves a case INTO a - # stage: another group, or `submitter` (the person who sent the - # form; the form must then collect a required `email`) - watched_by: [] # groups that see these cases and move nothing; `public` opens a - # read-only page of the bucket to everyone (contact details hidden) - mails: { open: submitter, : submitter, :
} - # who hears when a case enters a stage: `submitter` (the form - # must then collect a required `email`) or one address. Tell the - # person on arrival and on every decision that is about them. - stages_text: { open: , : } - # each stage in the intake's language, where the ASCII id - # would read wrong to a person: "ikke_lost" is "ikke løst" - events: { open: applied } # ONLY when rebuilding a live site: the event names its - # aggregates.yaml already has, so its records keep replaying - attended_by: > # ONLY for a stage no desk button moves: the automation that does - what moves it, in a sentence - max_fields: 4 # decide this BEFORE writing collects, from what the intake - # says about the person; a budget that equals the form's size - # is counted, not decided, and is reported as such - # how many required fields THIS person will tolerate, from what - # the intake says about them: someone on a phone with gloves - # on gets 3, a first enquiry 4 to 6, a firm's paperwork 5 to 6 - collects: # the form; name is snake_case ASCII, type one of - # text (default), email, tel, textarea, date, select - - { name: name } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - { name: urgency, type: select, options: [This week, This month, No rush] } - - { name: can_do, type: select, multiple: true, options: [Drive, Cook, Carry] } # any number - - { name: committee, type: select, options_from: groups } # the labelled groups above - - { name: address, optional: true, private: true } # never on a public page -``` - -Rules: -- One need per (kind of person, thing they want). Work inside the - business counts: a role recording or posting something is a need - with `enters_as`. The intake's "what slows us down" usually names one. -- Groups are the roles the intake names, as snake_case identifiers. -- The front door opens with `does` (at most two features, one role - each) and `shows`, then holds at most seven offers: doors plus needs - with no door. A door with no need behind it, or a door on a need with - `enters_as`, is refused. A role `does` speaks for must have a move - of its own after sending (`moves_by` with `submitter`) or a public - view, or it is a spectator. -- Every need whose form collects an email should tell the person on - arrival and on the decisions about them (`mails`); the plan then - needs `mail: { from }`. -- Needs that land in the same bucket must have the same stages, - done_when, skippable, moves_by, watched_by and handled_by. -- Every required field is one the business will use to act on the - record. If the intake gives no reason to need it, make it optional or - leave it out. The required fields must not exceed max_fields. -- Only `select` lists `options`, and it must list them. -- Everything a person reads (who, wants, about, select options) is in - the intake's language. Everything a machine reads (ids, buckets, - groups, stages, field names) is plain ASCII: no æ, ø, å. -- Write no personas. - - -# Task - -A business filled in this intake. Write its plan.yaml: every need the intake implies, for the public and for each role inside the business, with the stages read off how the business says things progress, the form each need collects, and how much each person will tolerate. - -## Intake - -# An intake as the owner of a small building contractor would fill it -# in: plain words, no portal vocabulary. These are the fields the -# onboarding site asks for. -business: Nordvik Bygg -contact: { name: Ingrid Nordvik, email: ingrid@nordvikbygg.example } -language: en - -what_we_do: > - We are twelve people. We survey old buildings, draw up rehabilitation - plans, handle the permit application, and do the building work with - our own carpenters plus subcontractors for electrical, plumbing and - scaffolding. - -who_comes_to_us: > - Housing boards and private owners who have a problem with a building - and want someone to look at it. Owners who already know what they - want built and need drawings, a permit and a price. Trade firms who - want to be on our list of subcontractors. Carpenters and apprentices - asking if we are hiring. - -what_we_keep_track_of: > - Enquiries: they come in, we go and look at the building, we send a - quote, and then we either win it or lose it. Sometimes it is simply - not for us and we say so straight away. - Subcontractors: they apply, we check their company registration, - trade approval and insurance. Often papers are missing and we have to - ask again. Then they are approved or turned down. - Job applications: we read them, invite some to an interview, and hire - or decline. - Things that go wrong on site: a hazard, a near miss, wrong materials - delivered. Someone reports it, the safety officer decides what is - done about it, and closes it when it is fixed. - -who_is_involved: > - Two project managers handle enquiries, subcontractors and hiring. - One safety officer handles everything reported from site. - The crew, ours and the subcontractors' people, are the ones on site - who report things. They are on their phones, with gloves on, and - will not fill in a long form. - -what_slows_us_down: > - Enquiries arrive by phone, email and text and get lost. We never know - which subcontractors have valid papers. Site problems get mentioned - at lunch and forgotten. - - -## Your last attempt was refused - -does not parse as a plan: needs[2].moves_by.checking: invalid type: string "submitter", expected a sequence at line 69 column 27 - -Fix that and return the whole plan again. - -```yaml -business: Nordvik Bygg -language: en -contact: { name: Ingrid Nordvik, email: ingrid@nordvikbygg.example } -about: > - We are twelve people. We survey old buildings, draw up rehabilitation - plans, handle the permit application, and do the building work with - our own carpenters plus subcontractors for electrical, plumbing and - scaffolding. -mail: { from: "Nordvik Bygg ", reply_to: ingrid@nordvikbygg.example } - -does: - - id: assess-your-building - for: building-problem - text: We survey the building, draw up a rehabilitation plan, and handle the permit application. - - id: build-your-project - for: new-build-project - text: Already know what you want built? We do the drawings, the permit and the price, then build it with our own carpenters and trusted subcontractors. - -groups: - - { id: project_managers, label: Project Managers } - - { id: safety_officer, label: Safety Officer } - - { id: crew, label: Crew } - -needs: - - id: building-problem - who: housing boards and private owners with a problem with a building - wants: someone to come and look at the building and tell them what can be done - lands_in: enquiries - handled_by: project_managers - stages: [open, surveyed, quoted, won, lost] - done_when: [won, lost] - success: [won] - skippable: [surveyed, quoted] - mails: { open: submitter, won: submitter, lost: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - { name: address, optional: true, private: true } - - - id: new-build-project - who: owners who already know what they want built - wants: drawings, a permit and a price - lands_in: enquiries - handled_by: project_managers - stages: [open, surveyed, quoted, won, lost] - done_when: [won, lost] - success: [won] - skippable: [surveyed, quoted] - mails: { open: submitter, won: submitter, lost: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: project_description, type: textarea } - - - id: subcontractor-application - who: trade firms who want to be on the list of subcontractors - wants: to be approved as a subcontractor - lands_in: subcontractors - handled_by: project_managers - stages: [open, checking, papers_requested, approved, declined] - done_when: [approved, declined] - success: [approved] - skippable: [papers_requested] - moves_by: { checking: submitter } - mails: { open: submitter, papers_requested: submitter, approved: submitter, declined: submitter } - max_fields: 5 - collects: - - { name: company_name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: trade, type: select, options: [Electrical, Plumbing, Scaffolding, Other] } - - { name: registration_number } - - { name: insurance_info, type: textarea, optional: true } - - - id: job-application - who: carpenters and apprentices asking if we are hiring - wants: a job with us - lands_in: job_applications - handled_by: project_managers - stages: [open, interviewing, hired, declined] - done_when: [hired, declined] - success: [hired] - skippable: [interviewing] - mails: { open: submitter, hired: submitter, declined: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: message, type: textarea } - - - id: report-site-issue - who: crew, ours and the subcontractors' people, on site - wants: to report a hazard, near miss or wrong delivery - enters_as: crew - lands_in: site_issues - handled_by: safety_officer - stages: [open, action_decided, closed] - done_when: [closed] - success: [closed] - max_fields: 3 - collects: - - { name: issue_type, type: select, options: [Hazard, Near miss, Wrong materials, Other] } - - { name: location } - - { name: details, type: textarea, optional: true } - -``` - -Reply with the YAML only, no prose, no code fences. \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/llm/02-reply.md b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/llm/02-reply.md deleted file mode 100644 index a880770..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/llm/02-reply.md +++ /dev/null @@ -1,112 +0,0 @@ -```yaml -business: Nordvik Bygg -language: en -contact: { name: Ingrid Nordvik, email: ingrid@nordvikbygg.example } -about: > - We are twelve people. We survey old buildings, draw up rehabilitation - plans, handle the permit application, and do the building work with - our own carpenters plus subcontractors for electrical, plumbing and - scaffolding. -mail: { from: "Nordvik Bygg ", reply_to: ingrid@nordvikbygg.example } - -does: - - id: assess-your-building - for: building-problem - text: We survey the building, draw up a rehabilitation plan, and handle the permit application. - - id: build-your-project - for: new-build-project - text: Already know what you want built? We do the drawings, the permit and the price, then build it with our own carpenters and trusted subcontractors. - -groups: - - { id: project_managers, label: Project Managers } - - { id: safety_officer, label: Safety Officer } - - { id: crew, label: Crew } - -needs: - - id: building-problem - who: housing boards and private owners with a problem with a building - wants: someone to come and look at the building and tell them what can be done - lands_in: enquiries - handled_by: project_managers - stages: [open, surveyed, quoted, won, lost] - done_when: [won, lost] - success: [won] - skippable: [surveyed, quoted] - mails: { open: submitter, won: submitter, lost: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - { name: address, optional: true, private: true } - - - id: new-build-project - who: owners who already know what they want built - wants: drawings, a permit and a price - lands_in: enquiries - handled_by: project_managers - stages: [open, surveyed, quoted, won, lost] - done_when: [won, lost] - success: [won] - skippable: [surveyed, quoted] - mails: { open: submitter, won: submitter, lost: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: project_description, type: textarea } - - - id: subcontractor-application - who: trade firms who want to be on the list of subcontractors - wants: to be approved as a subcontractor - lands_in: subcontractors - handled_by: project_managers - stages: [open, checking, papers_requested, approved, declined] - done_when: [approved, declined] - success: [approved] - skippable: [papers_requested] - moves_by: { checking: [submitter] } - mails: { open: submitter, papers_requested: submitter, approved: submitter, declined: submitter } - max_fields: 5 - collects: - - { name: company_name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: trade, type: select, options: [Electrical, Plumbing, Scaffolding, Other] } - - { name: registration_number } - - { name: insurance_info, type: textarea, optional: true } - - - id: job-application - who: carpenters and apprentices asking if we are hiring - wants: a job with us - lands_in: job_applications - handled_by: project_managers - stages: [open, interviewing, hired, declined] - done_when: [hired, declined] - success: [hired] - skippable: [interviewing] - mails: { open: submitter, hired: submitter, declined: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: message, type: textarea } - - - id: report-site-issue - who: crew, ours and the subcontractors' people, on site - wants: to report a hazard, near miss or wrong delivery - enters_as: crew - lands_in: site_issues - handled_by: safety_officer - stages: [open, action_decided, closed] - done_when: [closed] - success: [closed] - max_fields: 3 - collects: - - { name: issue_type, type: select, options: [Hazard, Near miss, Wrong materials, Other] } - - { name: location } - - { name: details, type: textarea, optional: true } -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/model.json b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/model.json deleted file mode 100644 index 3868c86..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/model.json +++ /dev/null @@ -1,675 +0,0 @@ -{ - "needs": [ - { - "id": "building-problem", - "who": "housing boards and private owners with a problem with a building", - "wants": "someone to come and look at the building and tell them what can be done", - "enters_as": null, - "lands_in": "enquiries", - "handled_by": "project_managers", - "done_when": [ - "won", - "lost" - ], - "success": [ - "won" - ], - "steps": [ - { - "page": "/", - "question": "What do you need done to a building?", - "context": "Building work you can trust from start to finish: Twelve of us, surveying buildings, drawing up plans, getting the permits sorted, and doing the work ourselves alongside trusted subcontractors. Know what's wrong before you spend a krone: We come look at the building, tell you honestly what's wrong and what it'll take to fix. See your project through from drawing to done: We draw up the plans, apply for the permit, and build it with our own carpenters and trusted subcontractors.", - "options": [ - { - "name": "Find out what's wrong with your building", - "description": "Tell us what's wrong with the building and we'll come take a look." - }, - { - "name": "Get your project drawn, permitted and priced", - "description": "Tell us what you want built and we'll draw it up, handle the permit, and give you a price." - }, - { - "name": "Get work as one of our subcontractors", - "description": "Electrical, plumbing or scaffolding firms, get on our list and we'll bring you in on jobs." - }, - { - "name": "Work with our carpenters", - "description": "Carpenters and apprentices, tell us a bit about yourself and we'll see where you'd fit." - } - ], - "expect": [ - "Find out what's wrong with your building" - ], - "alternative": "Find out what's wrong with your building", - "fields": [ - { - "name": "name", - "label": "Name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "phone", - "label": "Phone", - "type": "tel", - "optional": false, - "options": [] - }, - { - "name": "problem", - "label": "What's the problem?", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "address", - "label": "Address", - "type": "text", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "new-build-project", - "who": "owners who already know what they want built", - "wants": "drawings, a permit and a price", - "enters_as": null, - "lands_in": "enquiries", - "handled_by": "project_managers", - "done_when": [ - "won", - "lost" - ], - "success": [ - "won" - ], - "steps": [ - { - "page": "/", - "question": "What do you need done to a building?", - "context": "Building work you can trust from start to finish: Twelve of us, surveying buildings, drawing up plans, getting the permits sorted, and doing the work ourselves alongside trusted subcontractors. Know what's wrong before you spend a krone: We come look at the building, tell you honestly what's wrong and what it'll take to fix. See your project through from drawing to done: We draw up the plans, apply for the permit, and build it with our own carpenters and trusted subcontractors.", - "options": [ - { - "name": "Find out what's wrong with your building", - "description": "Tell us what's wrong with the building and we'll come take a look." - }, - { - "name": "Get your project drawn, permitted and priced", - "description": "Tell us what you want built and we'll draw it up, handle the permit, and give you a price." - }, - { - "name": "Get work as one of our subcontractors", - "description": "Electrical, plumbing or scaffolding firms, get on our list and we'll bring you in on jobs." - }, - { - "name": "Work with our carpenters", - "description": "Carpenters and apprentices, tell us a bit about yourself and we'll see where you'd fit." - } - ], - "expect": [ - "Get your project drawn, permitted and priced" - ], - "alternative": "Get your project drawn, permitted and priced", - "fields": [ - { - "name": "name", - "label": "Name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "phone", - "label": "Phone", - "type": "tel", - "optional": false, - "options": [] - }, - { - "name": "project_description", - "label": "What do you want to build?", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "subcontractor-application", - "who": "trade firms who want to be on the list of subcontractors", - "wants": "to be approved as a subcontractor", - "enters_as": null, - "lands_in": "subcontractors", - "handled_by": "project_managers", - "done_when": [ - "approved", - "declined" - ], - "success": [ - "approved" - ], - "steps": [ - { - "page": "/", - "question": "What do you need done to a building?", - "context": "Building work you can trust from start to finish: Twelve of us, surveying buildings, drawing up plans, getting the permits sorted, and doing the work ourselves alongside trusted subcontractors. Know what's wrong before you spend a krone: We come look at the building, tell you honestly what's wrong and what it'll take to fix. See your project through from drawing to done: We draw up the plans, apply for the permit, and build it with our own carpenters and trusted subcontractors.", - "options": [ - { - "name": "Find out what's wrong with your building", - "description": "Tell us what's wrong with the building and we'll come take a look." - }, - { - "name": "Get your project drawn, permitted and priced", - "description": "Tell us what you want built and we'll draw it up, handle the permit, and give you a price." - }, - { - "name": "Get work as one of our subcontractors", - "description": "Electrical, plumbing or scaffolding firms, get on our list and we'll bring you in on jobs." - }, - { - "name": "Work with our carpenters", - "description": "Carpenters and apprentices, tell us a bit about yourself and we'll see where you'd fit." - } - ], - "expect": [ - "Get work as one of our subcontractors" - ], - "alternative": "Get work as one of our subcontractors", - "fields": [ - { - "name": "company_name", - "label": "Company name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "phone", - "label": "Phone", - "type": "tel", - "optional": false, - "options": [] - }, - { - "name": "trade", - "label": "Trade", - "type": "select", - "optional": false, - "options": [ - "Electrical", - "Plumbing", - "Scaffolding", - "Other" - ] - }, - { - "name": "registration_number", - "label": "Registration number", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "insurance_info", - "label": "Insurance details", - "type": "textarea", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "job-application", - "who": "carpenters and apprentices asking if we are hiring", - "wants": "a job with us", - "enters_as": null, - "lands_in": "job_applications", - "handled_by": "project_managers", - "done_when": [ - "hired", - "declined" - ], - "success": [ - "hired" - ], - "steps": [ - { - "page": "/", - "question": "What do you need done to a building?", - "context": "Building work you can trust from start to finish: Twelve of us, surveying buildings, drawing up plans, getting the permits sorted, and doing the work ourselves alongside trusted subcontractors. Know what's wrong before you spend a krone: We come look at the building, tell you honestly what's wrong and what it'll take to fix. See your project through from drawing to done: We draw up the plans, apply for the permit, and build it with our own carpenters and trusted subcontractors.", - "options": [ - { - "name": "Find out what's wrong with your building", - "description": "Tell us what's wrong with the building and we'll come take a look." - }, - { - "name": "Get your project drawn, permitted and priced", - "description": "Tell us what you want built and we'll draw it up, handle the permit, and give you a price." - }, - { - "name": "Get work as one of our subcontractors", - "description": "Electrical, plumbing or scaffolding firms, get on our list and we'll bring you in on jobs." - }, - { - "name": "Work with our carpenters", - "description": "Carpenters and apprentices, tell us a bit about yourself and we'll see where you'd fit." - } - ], - "expect": [ - "Work with our carpenters" - ], - "alternative": "Work with our carpenters", - "fields": [ - { - "name": "name", - "label": "Name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "phone", - "label": "Phone", - "type": "tel", - "optional": false, - "options": [] - }, - { - "name": "message", - "label": "Tell us about yourself", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "report-site-issue", - "who": "crew, ours and the subcontractors' people, on site", - "wants": "to report a hazard, near miss or wrong delivery", - "enters_as": "crew", - "lands_in": "site_issues", - "handled_by": "safety_officer", - "done_when": [ - "closed" - ], - "success": [ - "closed" - ], - "steps": [ - { - "page": "/crew/report-site-issue", - "question": "Has something happened on site that needs attention?", - "context": "", - "options": [ - { - "name": "Flag something wrong on site", - "description": "Tell the safety officer about a hazard, near miss or wrong delivery on site." - } - ], - "expect": [ - "Flag something wrong on site" - ], - "alternative": "Flag something wrong on site", - "fields": [ - { - "name": "issue_type", - "label": "Type of issue", - "type": "select", - "optional": false, - "options": [ - "Hazard", - "Near miss", - "Wrong materials", - "Other" - ] - }, - { - "name": "location", - "label": "Where on site", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "details", - "label": "What happened", - "type": "textarea", - "optional": true, - "options": [] - } - ] - } - ] - } - ], - "buckets": { - "enquiries": { - "initial": "open", - "transitions": { - "open": [ - "surveyed", - "quoted", - "won", - "lost" - ], - "quoted": [ - "won", - "lost" - ], - "surveyed": [ - "quoted", - "won", - "lost" - ] - }, - "words": { - "lost": "lost", - "open": "open", - "quoted": "quoted", - "surveyed": "surveyed", - "won": "won" - }, - "desks": [ - { - "page": "/project_managers", - "group": "project_managers", - "moves": [ - { - "from": "open", - "to": "surveyed", - "label": "Mark as surveyed" - }, - { - "from": "open", - "to": "quoted", - "label": "Send straight to quoted" - }, - { - "from": "open", - "to": "won", - "label": "Mark as won" - }, - { - "from": "open", - "to": "lost", - "label": "Mark as lost" - }, - { - "from": "quoted", - "to": "won", - "label": "Mark as won" - }, - { - "from": "quoted", - "to": "lost", - "label": "Mark as lost" - }, - { - "from": "surveyed", - "to": "quoted", - "label": "Quote sent" - }, - { - "from": "surveyed", - "to": "won", - "label": "Mark as won" - }, - { - "from": "surveyed", - "to": "lost", - "label": "Mark as lost" - } - ] - } - ], - "self_moves": [] - }, - "subcontractors": { - "initial": "open", - "transitions": { - "checking": [ - "papers_requested", - "approved", - "declined" - ], - "open": [ - "checking", - "declined" - ], - "papers_requested": [ - "approved", - "declined" - ] - }, - "words": { - "approved": "approved", - "checking": "checking", - "declined": "declined", - "open": "open", - "papers_requested": "papers requested" - }, - "desks": [ - { - "page": "/project_managers", - "group": "project_managers", - "moves": [ - { - "from": "checking", - "to": "papers_requested", - "label": "Ask for their papers" - }, - { - "from": "checking", - "to": "approved", - "label": "Approve them" - }, - { - "from": "checking", - "to": "declined", - "label": "Turn them down" - }, - { - "from": "open", - "to": "declined", - "label": "Turn them down" - }, - { - "from": "papers_requested", - "to": "approved", - "label": "Approve them" - }, - { - "from": "papers_requested", - "to": "declined", - "label": "Turn them down" - } - ] - } - ], - "self_moves": [ - "checking" - ] - }, - "job_applications": { - "initial": "open", - "transitions": { - "interviewing": [ - "hired", - "declined" - ], - "open": [ - "interviewing", - "hired", - "declined" - ] - }, - "words": { - "declined": "declined", - "hired": "hired", - "interviewing": "interviewing", - "open": "open" - }, - "desks": [ - { - "page": "/project_managers", - "group": "project_managers", - "moves": [ - { - "from": "interviewing", - "to": "hired", - "label": "Offer the job" - }, - { - "from": "interviewing", - "to": "declined", - "label": "Not taking them on" - }, - { - "from": "open", - "to": "interviewing", - "label": "Call in for interview" - }, - { - "from": "open", - "to": "hired", - "label": "Offer the job" - }, - { - "from": "open", - "to": "declined", - "label": "Not taking them on" - } - ] - } - ], - "self_moves": [] - }, - "site_issues": { - "initial": "open", - "transitions": { - "action_decided": [ - "closed" - ], - "open": [ - "action_decided" - ] - }, - "words": { - "action_decided": "action decided", - "closed": "closed", - "open": "open" - }, - "desks": [ - { - "page": "/safety_officer", - "group": "safety_officer", - "moves": [ - { - "from": "action_decided", - "to": "closed", - "label": "Mark sorted" - }, - { - "from": "open", - "to": "action_decided", - "label": "Log what we're doing" - } - ] - } - ], - "self_moves": [] - } - }, - "personas": [ - { - "id": "housing-board-damp", - "need": "building-problem", - "text": "I chair the board of a housing cooperative from the seventies. Two ground-floor flats have damp in the walls and we don't know if it's drainage or the facade. We need someone to tell us." - }, - { - "id": "buyer-before-purchase", - "need": "building-problem", - "text": "We are about to buy an old timber house. Before we sign we want a professional to go through it and tell us what is wrong with it." - }, - { - "id": "attic-conversion", - "need": "new-build-project", - "text": "We want to turn our attic into two bedrooms and a bathroom. We need drawings and someone who handles the application to the municipality." - }, - { - "id": "shop-to-flat", - "need": "new-build-project", - "text": "I own a former shop on the ground floor and want to make it a flat. I have no idea what is allowed. Can you sort that out and give me a price?" - }, - { - "id": "electrician-firm", - "need": "subcontractor-application", - "text": "We are a four-person electrical firm, fully certified. We would like to get on your list so you call us when you need electricians." - }, - { - "id": "scaffolder", - "need": "subcontractor-application", - "text": "I run a scaffolding company. How do I get to do jobs for you?" - }, - { - "id": "carpenter-jobseeker", - "need": "job-application", - "text": "I'm a certified carpenter with eight years on rehabilitation jobs. Are you hiring?" - }, - { - "id": "apprentice", - "need": "job-application", - "text": "I finish vocational school this spring and need an apprenticeship as a bricklayer." - }, - { - "id": "loose-railing", - "need": "report-site-issue", - "text": "The railing on the third level of the scaffold on the north side is loose. Nobody got hurt but someone will." - }, - { - "id": "wrong-membrane", - "need": "report-site-issue", - "text": "The bathroom membrane delivered today is not the one in the specification. We stopped work on it." - } - ] -} \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/plan.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/plan.yaml deleted file mode 100644 index f4217b3..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/plan.yaml +++ /dev/null @@ -1,153 +0,0 @@ -business: Nordvik Bygg -language: en -contact: { name: Ingrid Nordvik, email: ingrid@nordvikbygg.example } -about: > - We are twelve people. We survey old buildings, draw up rehabilitation - plans, handle the permit application, and do the building work with - our own carpenters plus subcontractors for electrical, plumbing and - scaffolding. -mail: { from: "Nordvik Bygg ", reply_to: ingrid@nordvikbygg.example } - -does: - - id: assess-your-building - for: building-problem - text: We survey the building, draw up a rehabilitation plan, and handle the permit application. - - id: build-your-project - for: new-build-project - text: Already know what you want built? We do the drawings, the permit and the price, then build it with our own carpenters and trusted subcontractors. - -groups: - - { id: project_managers, label: Project Managers } - - { id: safety_officer, label: Safety Officer } - - { id: crew, label: Crew } - -needs: - - id: building-problem - who: housing boards and private owners with a problem with a building - wants: someone to come and look at the building and tell them what can be done - lands_in: enquiries - handled_by: project_managers - stages: [open, surveyed, quoted, won, lost] - done_when: [won, lost] - success: [won] - skippable: [surveyed, quoted] - mails: { open: submitter, won: submitter, lost: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - { name: address, optional: true, private: true } - - - id: new-build-project - who: owners who already know what they want built - wants: drawings, a permit and a price - lands_in: enquiries - handled_by: project_managers - stages: [open, surveyed, quoted, won, lost] - done_when: [won, lost] - success: [won] - skippable: [surveyed, quoted] - mails: { open: submitter, won: submitter, lost: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: project_description, type: textarea } - - - id: subcontractor-application - who: trade firms who want to be on the list of subcontractors - wants: to be approved as a subcontractor - lands_in: subcontractors - handled_by: project_managers - stages: [open, checking, papers_requested, approved, declined] - done_when: [approved, declined] - success: [approved] - skippable: [papers_requested] - moves_by: { checking: [submitter] } - mails: { open: submitter, papers_requested: submitter, approved: submitter, declined: submitter } - max_fields: 5 - collects: - - { name: company_name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: trade, type: select, options: [Electrical, Plumbing, Scaffolding, Other] } - - { name: registration_number } - - { name: insurance_info, type: textarea, optional: true } - - - id: job-application - who: carpenters and apprentices asking if we are hiring - wants: a job with us - lands_in: job_applications - handled_by: project_managers - stages: [open, interviewing, hired, declined] - done_when: [hired, declined] - success: [hired] - skippable: [interviewing] - mails: { open: submitter, hired: submitter, declined: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: message, type: textarea } - - - id: report-site-issue - who: crew, ours and the subcontractors' people, on site - wants: to report a hazard, near miss or wrong delivery - enters_as: crew - lands_in: site_issues - handled_by: safety_officer - stages: [open, action_decided, closed] - done_when: [closed] - success: [closed] - max_fields: 3 - collects: - - { name: issue_type, type: select, options: [Hazard, Near miss, Wrong materials, Other] } - - { name: location } - - { name: details, type: textarea, optional: true } - -# Held out from every model that writes words. -personas: -- id: housing-board-damp - need: building-problem - text: | - I chair the board of a housing cooperative from the seventies. Two ground-floor flats have damp in the walls and we don't know if it's drainage or the facade. We need someone to tell us. -- id: buyer-before-purchase - need: building-problem - text: | - We are about to buy an old timber house. Before we sign we want a professional to go through it and tell us what is wrong with it. -- id: attic-conversion - need: new-build-project - text: | - We want to turn our attic into two bedrooms and a bathroom. We need drawings and someone who handles the application to the municipality. -- id: shop-to-flat - need: new-build-project - text: | - I own a former shop on the ground floor and want to make it a flat. I have no idea what is allowed. Can you sort that out and give me a price? -- id: electrician-firm - need: subcontractor-application - text: | - We are a four-person electrical firm, fully certified. We would like to get on your list so you call us when you need electricians. -- id: scaffolder - need: subcontractor-application - text: | - I run a scaffolding company. How do I get to do jobs for you? -- id: carpenter-jobseeker - need: job-application - text: | - I'm a certified carpenter with eight years on rehabilitation jobs. Are you hiring? -- id: apprentice - need: job-application - text: | - I finish vocational school this spring and need an apprenticeship as a bricklayer. -- id: loose-railing - need: report-site-issue - text: | - The railing on the third level of the scaffold on the north side is loose. Nobody got hurt but someone will. -- id: wrong-membrane - need: report-site-issue - text: | - The bathroom membrane delivered today is not the one in the specification. We stopped work on it. diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/rated/rate.json b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/rated/rate.json deleted file mode 100644 index 91a3254..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/rated/rate.json +++ /dev/null @@ -1,192 +0,0 @@ -{ - "building-problem": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 27.38888888888889, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "desk /project_managers enquiries": { - "mistaken": [], - "of": 9, - "right": 9 - }, - "desk /project_managers job_applications": { - "mistaken": [], - "of": 5, - "right": 5 - }, - "desk /project_managers subcontractors": { - "mistaken": [], - "of": 5, - "right": 5 - }, - "job-application": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 26.51438053097345, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "mail enquiries:lost": { - "lix": 15.298245614035087, - "words": 39 - }, - "mail enquiries:open": { - "lix": 31.666666666666668, - "words": 20 - }, - "mail enquiries:won": { - "lix": 16.523809523809526, - "words": 22 - }, - "mail job_applications:declined": { - "lix": 30.06060606060606, - "words": 23 - }, - "mail job_applications:hired": { - "lix": 21.285714285714285, - "words": 22 - }, - "mail job_applications:open": { - "lix": 16.424242424242426, - "words": 22 - }, - "mail subcontractors:approved": { - "lix": 11.878787878787879, - "words": 22 - }, - "mail subcontractors:declined": { - "lix": 15.0, - "words": 21 - }, - "mail subcontractors:open": { - "lix": 18.952380952380953, - "words": 25 - }, - "mail subcontractors:papers_requested": { - "lix": 24.5, - "words": 26 - }, - "new-build-project": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 27.407894736842103, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "report-site-issue": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 30.43333333333333, - "options": 1, - "overloaded": false, - "page": "/crew/report-site-issue", - "personas": 2, - "required_fields": 2, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "subcontractor-application": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 27.38888888888889, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 5, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/aggregates.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/aggregates.yaml deleted file mode 100644 index c256ed0..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/aggregates.yaml +++ /dev/null @@ -1,127 +0,0 @@ -aggregates: -- bucket: enquiries - initial: open - states: - lost: - event: lost - mail: - body: Thanks for the chance to look at this - not one we're able to take on. If plans change or you want a second opinion down the line, get in touch. - subject: Not one we can take on this time - to: submitter - open: - event: received - mail: - body: We've had your enquiry land. A project manager will come back to you shortly about a visit. - subject: Got your enquiry - to: submitter - quoted: - event: quoted - surveyed: - event: surveyed - won: - event: won - mail: - body: Good news - we're going ahead with your job. Your project manager will be in touch about next steps. - subject: You're booked in - to: submitter - transitions: - open: - - surveyed - - quoted - - won - - lost - quoted: - - won - - lost - surveyed: - - quoted - - won - - lost -- bucket: job_applications - initial: open - states: - declined: - event: declined - mail: - body: Thanks for applying - we've filled the position for now. We'll keep your details on file if that changes. - subject: No opening right now - to: submitter - hired: - event: hired - mail: - body: Welcome aboard - we'd like to bring you on. We'll be in touch about start dates and paperwork. - subject: Welcome to the team - to: submitter - interviewing: - event: interviewing - open: - event: received - mail: - body: Thanks for reaching out about work with us. We'll look over what you've sent and get back to you. - subject: Got your application - to: submitter - transitions: - interviewing: - - hired - - declined - open: - - interviewing - - hired - - declined -- bucket: site_issues - initial: open - states: - action_decided: - event: action_decided - closed: - event: closed - open: - event: received - transitions: - action_decided: - - closed - open: - - action_decided -- bucket: subcontractors - initial: open - states: - approved: - event: approved - mail: - body: You're on our list of subcontractors now. We'll be in touch when a job comes up that fits. - subject: You're on our list - to: submitter - checking: - event: checking - declined: - event: declined - mail: - body: Thanks for applying - we won't be adding you to our list at this time. - subject: Not adding you to our list - to: submitter - open: - event: received - mail: - body: |- - We've had your application to become a subcontractor. We'll look it over and be in touch. - - What you can do next: {site}/decide/subcontractor-application?chain={chain}&email={email} - subject: Got your application - to: submitter - papers_requested: - event: papers_requested - mail: - body: We need a few papers from you before we can approve you - see the link below for what's missing. - subject: We need some paperwork from you - to: submitter - transitions: - checking: - - papers_requested - - approved - - declined - open: - - checking - - declined - papers_requested: - - approved - - declined diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/01-aggregates.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/01-aggregates.yaml.md deleted file mode 100644 index af6b1b1..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/01-aggregates.yaml.md +++ /dev/null @@ -1,128 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We are twelve people. We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: housing boards and private owners with a problem with a building - wants: someone to come and look at the building and tell them what can be done. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- new-build-project: owners who already know what they want built - wants: drawings, a permit and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- subcontractor-application: trade firms who want to be on the list of subcontractors - wants: to be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> declined. -- job-application: carpenters and apprentices asking if we are hiring - wants: a job with us. Handled by project_managers. Stages: open -> interviewing -> hired -> declined. -- report-site-issue: crew, ours and the subcontractors' people, on site - wants: to report a hazard, near miss or wrong delivery. Handled by safety_officer. Stages: open -> action_decided -> closed. - -The page: aggregates.yaml -It is the mails the site sends. Under each bucket, each stage that sends one has a `subject` and a `body`: the mail a person gets the moment their case enters that stage, saying what happened and what, if anything, they can do now. Plain text, short, in the business's voice. Keep every `{...}` placeholder exactly as it is - `{site}`, `{chain}`, `{email}` and any field name are filled in by the site - and keep any line with a link in it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "enquiries": { - "lost": { - "body": "", - "subject": "" - }, - "open": { - "body": "", - "subject": "" - }, - "won": { - "body": "", - "subject": "" - } - }, - "job_applications": { - "declined": { - "body": "", - "subject": "" - }, - "hired": { - "body": "", - "subject": "" - }, - "open": { - "body": "", - "subject": "" - } - }, - "subcontractors": { - "approved": { - "body": "", - "subject": "" - }, - "declined": { - "body": "", - "subject": "" - }, - "open": { - "body": "", - "subject": "" - }, - "papers_requested": { - "body": "", - "subject": "" - } - } -} - -Reply with the JSON object only. - -=== REPLY === -{ - "enquiries": { - "lost": { - "body": "Thanks for the chance to look at this - not one we're able to take on. If plans change or you want a second opinion down the line, get in touch.", - "subject": "Not one we can take on this time" - }, - "open": { - "body": "We've had your enquiry land. A project manager will come back to you shortly about a visit.", - "subject": "Got your enquiry" - }, - "won": { - "body": "Good news - we're going ahead with your job. Your project manager will be in touch about next steps.", - "subject": "You're booked in" - } - }, - "job_applications": { - "declined": { - "body": "Thanks for applying - we've filled the position for now. We'll keep your details on file if that changes.", - "subject": "No opening right now" - }, - "hired": { - "body": "Welcome aboard - we'd like to bring you on. We'll be in touch about start dates and paperwork.", - "subject": "Welcome to the team" - }, - "open": { - "body": "Thanks for reaching out about work with us. We'll look over what you've sent and get back to you.", - "subject": "Got your application" - } - }, - "subcontractors": { - "approved": { - "body": "You're on our list of subcontractors now. We'll be in touch when a job comes up that fits.", - "subject": "You're on our list" - }, - "declined": { - "body": "Thanks for applying - we won't be adding you to our list at this time.", - "subject": "Not adding you to our list" - }, - "open": { - "body": "We've had your application to become a subcontractor. We'll look it over and be in touch.", - "subject": "Got your application" - }, - "papers_requested": { - "body": "We need a few papers from you before we can approve you - see the link below for what's missing.", - "subject": "We need some paperwork from you" - } - } -} diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/02-questions_crew_index.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/02-questions_crew_index.yaml.md deleted file mode 100644 index acac1d1..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/02-questions_crew_index.yaml.md +++ /dev/null @@ -1,94 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We are twelve people. We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: housing boards and private owners with a problem with a building - wants: someone to come and look at the building and tell them what can be done. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- new-build-project: owners who already know what they want built - wants: drawings, a permit and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- subcontractor-application: trade firms who want to be on the list of subcontractors - wants: to be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> declined. -- job-application: carpenters and apprentices asking if we are hiring - wants: a job with us. Handled by project_managers. Stages: open -> interviewing -> hired -> declined. -- report-site-issue: crew, ours and the subcontractors' people, on site - wants: to report a hazard, near miss or wrong delivery. Handled by safety_officer. Stages: open -> action_decided -> closed. - -The page: questions/crew/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. Under `invites`, each entry is a form that invites a person into that group - they get an account and a one-time link - and `invited` is the list of invites sent. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": {}, - "confirm": "", - "description": "", - "invited": { - "description": "", - "done": "", - "heading": "" - }, - "invites": { - "crew": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "email": "", - "name": "" - } - } - }, - "links": { - "report-site-issue": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": {}, - "confirm": "Confirm", - "description": "Everything on your desk right now: enquiries, quotes, subcontractors and job applications, all in one place.", - "invited": { - "description": "People you've invited who haven't taken up their invite yet, and those who have.", - "done": "Signed up", - "heading": "Who's joined so far" - }, - "invites": { - "crew": { - "button": "Send invite", - "description": "Give a colleague their own login so they can work cases with you.", - "form_title": "Invite a colleague", - "heading": "Bring a colleague onto the desk", - "labels": { - "email": "Their email", - "name": "Their name" - } - } - }, - "links": { - "report-site-issue": { - "button": "Open site issues", - "description": "See what's been reported from site and decide what to do about it.", - "heading": "Handle hazards and near misses reported from site" - } - }, - "question": "What needs your attention right now?" -} -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/03-questions_crew_report-site-issue-sent.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/03-questions_crew_report-site-issue-sent.yaml.md deleted file mode 100644 index a3b0cdc..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/03-questions_crew_report-site-issue-sent.yaml.md +++ /dev/null @@ -1,48 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We are twelve people. We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: housing boards and private owners with a problem with a building - wants: someone to come and look at the building and tell them what can be done. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- new-build-project: owners who already know what they want built - wants: drawings, a permit and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- subcontractor-application: trade firms who want to be on the list of subcontractors - wants: to be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> declined. -- job-application: carpenters and apprentices asking if we are hiring - wants: a job with us. Handled by project_managers. Stages: open -> interviewing -> hired -> declined. -- report-site-issue: crew, ours and the subcontractors' people, on site - wants: to report a hazard, near miss or wrong delivery. Handled by safety_officer. Stages: open -> action_decided -> closed. - -The page: questions/crew/report-site-issue-sent.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to site", - "description": "Thanks for flagging this. It's gone straight to our safety officer.", - "next_description": "Our safety officer looks at every report the same day and decides what needs doing.", - "next_heading": "Safety officer reviews it today", - "question": "What happens now that I've sent this in?" -} -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/04-questions_crew_report-site-issue.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/04-questions_crew_report-site-issue.yaml.md deleted file mode 100644 index 2f99873..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/04-questions_crew_report-site-issue.yaml.md +++ /dev/null @@ -1,88 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We are twelve people. We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: housing boards and private owners with a problem with a building - wants: someone to come and look at the building and tell them what can be done. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- new-build-project: owners who already know what they want built - wants: drawings, a permit and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- subcontractor-application: trade firms who want to be on the list of subcontractors - wants: to be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> declined. -- job-application: carpenters and apprentices asking if we are hiring - wants: a job with us. Handled by project_managers. Stages: open -> interviewing -> hired -> declined. -- report-site-issue: crew, ours and the subcontractors' people, on site - wants: to report a hazard, near miss or wrong delivery. Handled by safety_officer. Stages: open -> action_decided -> closed. - -The page: questions/crew/report-site-issue.yaml -It is a page only one role inside the business can open, holding one form. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "details": "", - "issue_type": "", - "location": "" - }, - "icon": "", - "labels": { - "details": "", - "issue_type": "", - "location": "" - }, - "page_description": "", - "question": "", - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "button": "Report issue", - "description": "Tell the safety officer about a hazard, near miss or wrong delivery on site.", - "encouragement": "Takes a minute — even a rough description helps.", - "form_description": "Say where and what's happened, as plainly as you can.", - "form_title": "Report the issue", - "heading": "Flag something wrong on site", - "hints": { - "details": "Scaffold missing a guardrail on the second lift, someone could fall.", - "issue_type": "Near miss", - "location": "Storgata 14, east scaffold" - }, - "icon": "alert-triangle", - "labels": { - "details": "What happened", - "issue_type": "Type of issue", - "location": "Where on site" - }, - "page_description": "See a hazard, a near miss or the wrong delivery turn up? Let us know before it becomes a problem.", - "question": "Has something happened on site that needs attention?", - "road_description": "Your report goes to the safety officer, who decides what to do about it, then closes it once it's sorted.", - "road_icon": "clipboard-list", - "road_title": "What happens next", - "who_description": "The safety officer reads this directly — if it's urgent, call Ingrid Nordvik on ingrid@nordvikbygg.example in the meantime.", - "who_icon": "shield", - "who_title": "Who sees this" -} -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/05-questions_decide_subcontractor-application.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/05-questions_decide_subcontractor-application.yaml.md deleted file mode 100644 index 84c13c2..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/05-questions_decide_subcontractor-application.yaml.md +++ /dev/null @@ -1,56 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We are twelve people. We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: housing boards and private owners with a problem with a building - wants: someone to come and look at the building and tell them what can be done. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- new-build-project: owners who already know what they want built - wants: drawings, a permit and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- subcontractor-application: trade firms who want to be on the list of subcontractors - wants: to be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> declined. -- job-application: carpenters and apprentices asking if we are hiring - wants: a job with us. Handled by project_managers. Stages: open -> interviewing -> hired -> declined. -- report-site-issue: crew, ours and the subcontractors' people, on site - wants: to report a hazard, near miss or wrong delivery. Handled by safety_officer. Stages: open -> action_decided -> closed. - -The page: questions/decide/subcontractor-application.yaml -It is a page the person who sent a form reaches later, through a private link, to make a decision that is theirs: under `moves`, each entry is one thing they can decide. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "moves": { - "checking": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "We've had a look and want to move forward. Let us know if you're ready to send over your paperwork.", - "moves": { - "checking": { - "button": "Continue review", - "description": "We're still checking you over and will be in touch shortly about next steps.", - "heading": "Keep your application under review" - } - }, - "question": "Are you ready to move this application forward?" -} -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/06-questions_index.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/06-questions_index.yaml.md deleted file mode 100644 index 3adc7c4..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/06-questions_index.yaml.md +++ /dev/null @@ -1,318 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We are twelve people. We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: housing boards and private owners with a problem with a building - wants: someone to come and look at the building and tell them what can be done. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- new-build-project: owners who already know what they want built - wants: drawings, a permit and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- subcontractor-application: trade firms who want to be on the list of subcontractors - wants: to be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> declined. -- job-application: carpenters and apprentices asking if we are hiring - wants: a job with us. Handled by project_managers. Stages: open -> interviewing -> hired -> declined. -- report-site-issue: crew, ours and the subcontractors' people, on site - wants: to report a hazard, near miss or wrong delivery. Handled by safety_officer. Stages: open -> action_decided -> closed. - -The page: questions/index.yaml -It is the front door: the first page any visitor sees. `question` is the page's one question. It opens modestly: `opener` is the first card, what the business does in several features and no button at all - a stranger reads it and decides whether to trust the place, so say what is true and useful, not what to press. `shopping` is the second card, things a visitor may look at before asking for anything. Only then come the offers: under `doors`, each entry is one alternative that leads to a page of its own for one kind of visitor, and its heading must let that visitor recognise themselves from the heading alone; under `needs`, each entry is one alternative with a form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "doors": {}, - "needs": { - "building-problem": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "address": "", - "email": "", - "name": "", - "phone": "", - "problem": "" - }, - "icon": "", - "labels": { - "address": "", - "email": "", - "name": "", - "phone": "", - "problem": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "job-application": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "message": "", - "name": "", - "phone": "" - }, - "icon": "", - "labels": { - "email": "", - "message": "", - "name": "", - "phone": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "new-build-project": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "name": "", - "phone": "", - "project_description": "" - }, - "icon": "", - "labels": { - "email": "", - "name": "", - "phone": "", - "project_description": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "subcontractor-application": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "company_name": "", - "email": "", - "insurance_info": "", - "phone": "", - "registration_number": "", - "trade": "" - }, - "icon": "", - "labels": { - "company_name": "", - "email": "", - "insurance_info": "", - "phone": "", - "registration_number": "", - "trade": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "opener": { - "description": "", - "features": { - "assess-your-building": { - "description": "", - "heading": "", - "icon": "" - }, - "build-your-project": { - "description": "", - "heading": "", - "icon": "" - } - }, - "heading": "" - }, - "question": "", - "shopping": { - "description": "", - "heading": "", - "items": {} - } -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "We look after old buildings and new ones, from the first survey to the last coat of paint, with our own carpenters and trusted subcontractors for the rest.", - "doors": {}, - "needs": { - "building-problem": { - "button": "Get a survey", - "description": "Tell us what's wrong with the building and we'll come take a look.", - "encouragement": "A project manager reads every message and gets back to you, usually within a couple of days.", - "form_description": "A few lines about what you're seeing is enough to start.", - "form_title": "Describe the building", - "heading": "Find out what's wrong with your building", - "hints": { - "address": "Storgata 14, 0155 Oslo", - "email": "kari@example.com", - "name": "Kari Hansen", - "phone": "912 34 567", - "problem": "Damp patches on the ceiling in two flats, worse after rain" - }, - "icon": "search", - "labels": { - "address": "Address", - "email": "Email", - "name": "Name", - "phone": "Phone", - "problem": "What's the problem?" - }, - "road_description": "We look at what you've sent and book a site visit to survey the building. From there we quote the work, and if you go ahead, the job is won and we get started.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A project manager handles this from start to finish, and you can call or email us any time in between.", - "who_icon": "user-check", - "who_title": "Who you'll hear from" - }, - "job-application": { - "button": "Send application", - "description": "Carpenters and apprentices, tell us a bit about yourself and we'll see where you'd fit.", - "encouragement": "No CV needed to get started, just tell us who you are.", - "form_description": "A short message about your experience is all we need to begin.", - "form_title": "Tell us about yourself", - "heading": "Work with our carpenters", - "hints": { - "email": "ola@example.com", - "message": "Trained carpenter, three years on renovation sites, looking for full-time work", - "name": "Ola Berg", - "phone": "901 23 456" - }, - "icon": "hammer", - "labels": { - "email": "Email", - "message": "Tell us about yourself", - "name": "Name", - "phone": "Phone" - }, - "road_description": "We read your message and if it looks like a fit, we call you in for a chat. If that goes well, we'll offer you a start.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A project manager reads applications and can answer questions by phone or email while you wait.", - "who_icon": "user-check", - "who_title": "Who you'll hear from" - }, - "new-build-project": { - "button": "Start my project", - "description": "Tell us what you want built and we'll draw it up, handle the permit, and give you a price.", - "encouragement": "A project manager looks at every project and comes back to you with next steps.", - "form_description": "Sketches or plans help, but a description is enough to start.", - "form_title": "Describe your project", - "heading": "Get your project drawn, permitted and priced", - "hints": { - "email": "per@example.com", - "name": "Per Olsen", - "phone": "923 45 678", - "project_description": "Extending the kitchen with a 20m2 addition and a new terrace" - }, - "icon": "ruler", - "labels": { - "email": "Email", - "name": "Name", - "phone": "Phone", - "project_description": "What do you want to build?" - }, - "road_description": "We survey the site, draw up plans and quote the job. Once you accept, we apply for the permit and get building.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A project manager owns your project and is your point of contact by phone or email throughout.", - "who_icon": "user-check", - "who_title": "Who you'll hear from" - }, - "subcontractor-application": { - "button": "Apply now", - "description": "Electrical, plumbing or scaffolding firms, get on our list and we'll bring you in on jobs.", - "encouragement": "Send what you have now, we'll ask for anything more we need.", - "form_description": "Have your registration number and insurance details to hand.", - "form_title": "Apply as a subcontractor", - "heading": "Get work as one of our subcontractors", - "hints": { - "company_name": "Berg Elektro AS", - "email": "post@bergelektro.example", - "insurance_info": "Liability insurance with If, policy 123456", - "phone": "934 56 789", - "registration_number": "918 234 567", - "trade": "Electrical" - }, - "icon": "handshake", - "labels": { - "company_name": "Company name", - "email": "Email", - "insurance_info": "Insurance details", - "phone": "Phone", - "registration_number": "Registration number", - "trade": "Trade" - }, - "road_description": "We check your papers, and may ask for more documents. Once everything's in order, you're approved and on our list.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A project manager checks applications and can be reached by phone or email if you have questions.", - "who_icon": "user-check", - "who_title": "Who you'll hear from" - } - }, - "opener": { - "description": "Twelve of us, surveying buildings, drawing up plans, getting the permits sorted, and doing the work ourselves alongside trusted subcontractors.", - "features": { - "assess-your-building": { - "description": "We come look at the building, tell you honestly what's wrong and what it'll take to fix.", - "heading": "Know what's wrong before you spend a krone", - "icon": "search" - }, - "build-your-project": { - "description": "We draw up the plans, apply for the permit, and build it with our own carpenters and trusted subcontractors.", - "heading": "See your project through from drawing to done", - "icon": "ruler" - } - }, - "heading": "Building work you can trust from start to finish" - }, - "question": "What do you need done to a building?", - "shopping": { - "description": "Not ready to send anything yet? Have a look at how we work and what we've done before.", - "heading": "See how we work before you get in touch", - "items": {} - } -} -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/07-questions_project_managers_index.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/07-questions_project_managers_index.yaml.md deleted file mode 100644 index 62f5dbb..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/07-questions_project_managers_index.yaml.md +++ /dev/null @@ -1,160 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We are twelve people. We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: housing boards and private owners with a problem with a building - wants: someone to come and look at the building and tell them what can be done. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- new-build-project: owners who already know what they want built - wants: drawings, a permit and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- subcontractor-application: trade firms who want to be on the list of subcontractors - wants: to be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> declined. -- job-application: carpenters and apprentices asking if we are hiring - wants: a job with us. Handled by project_managers. Stages: open -> interviewing -> hired -> declined. -- report-site-issue: crew, ours and the subcontractors' people, on site - wants: to report a hazard, near miss or wrong delivery. Handled by safety_officer. Stages: open -> action_decided -> closed. - -The page: questions/project_managers/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. Under `invites`, each entry is a form that invites a person into that group - they get an account and a one-time link - and `invited` is the list of invites sent. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "enquiries": { - "description": "", - "heading": "", - "moves": { - "open->lost": "lost>", - "open->quoted": "quoted>", - "open->surveyed": "surveyed>", - "open->won": "won>", - "quoted->lost": "lost>", - "quoted->won": "won>", - "surveyed->lost": "lost>", - "surveyed->quoted": "quoted>", - "surveyed->won": "won>" - } - }, - "job_applications": { - "description": "", - "heading": "", - "moves": { - "interviewing->declined": "declined>", - "interviewing->hired": "hired>", - "open->declined": "declined>", - "open->hired": "hired>", - "open->interviewing": "interviewing>" - } - }, - "subcontractors": { - "description": "", - "heading": "", - "moves": { - "checking->approved": "approved>", - "checking->declined": "declined>", - "checking->papers_requested": "papers_requested>", - "open->declined": "declined>", - "papers_requested->approved": "approved>", - "papers_requested->declined": "declined>" - } - } - }, - "confirm": "", - "description": "", - "invited": { - "description": "", - "done": "", - "heading": "" - }, - "invites": { - "project_managers": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "email": "", - "name": "" - } - } - }, - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "enquiries": { - "description": "Every building problem and new-build request that has come in, from first contact to won or lost.", - "heading": "New enquiries and where they stand", - "moves": { - "open->lost": "Mark as lost", - "open->quoted": "Send straight to quoted", - "open->surveyed": "Mark as surveyed", - "open->won": "Mark as won", - "quoted->lost": "Mark as lost", - "quoted->won": "Mark as won", - "surveyed->lost": "Mark as lost", - "surveyed->quoted": "Quote sent", - "surveyed->won": "Mark as won" - } - }, - "job_applications": { - "description": "Carpenters and apprentices who have asked if we're hiring.", - "heading": "People asking for work", - "moves": { - "interviewing->declined": "Not taking them on", - "interviewing->hired": "Offer the job", - "open->declined": "Not taking them on", - "open->hired": "Offer the job", - "open->interviewing": "Call in for interview" - } - }, - "subcontractors": { - "description": "Trade firms asking to get on our subcontractor list, and where each one is in the vetting.", - "heading": "Firms wanting to be a subcontractor", - "moves": { - "checking->approved": "Approve them", - "checking->declined": "Turn them down", - "checking->papers_requested": "Ask for their papers", - "open->declined": "Turn them down", - "papers_requested->approved": "Approve them", - "papers_requested->declined": "Turn them down" - } - } - }, - "confirm": "Confirm", - "description": "Your desk for enquiries, job applications and subcontractors waiting on you.", - "invited": { - "description": "Project managers you've invited who haven't signed in yet.", - "done": "Signed in", - "heading": "Invites waiting to be taken up" - }, - "invites": { - "project_managers": { - "button": "Send invite", - "description": "Bring another project manager onto the desk, with their own login.", - "form_title": "Invite a project manager", - "heading": "Add another project manager", - "labels": { - "email": "Their email address", - "name": "Their name" - } - } - }, - "links": {}, - "question": "What's waiting on me today?" -} -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/08-questions_received_building-problem.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/08-questions_received_building-problem.yaml.md deleted file mode 100644 index d1b3db7..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/08-questions_received_building-problem.yaml.md +++ /dev/null @@ -1,48 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We are twelve people. We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: housing boards and private owners with a problem with a building - wants: someone to come and look at the building and tell them what can be done. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- new-build-project: owners who already know what they want built - wants: drawings, a permit and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- subcontractor-application: trade firms who want to be on the list of subcontractors - wants: to be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> declined. -- job-application: carpenters and apprentices asking if we are hiring - wants: a job with us. Handled by project_managers. Stages: open -> interviewing -> hired -> declined. -- report-site-issue: crew, ours and the subcontractors' people, on site - wants: to report a hazard, near miss or wrong delivery. Handled by safety_officer. Stages: open -> action_decided -> closed. - -The page: questions/received/building-problem.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to home", - "description": "Thanks for telling us about the building. We've logged your report and will take it from here.", - "next_description": "A project manager will go through what you've sent and get in touch to arrange a look at the building.", - "next_heading": "A project manager gets in touch", - "question": "What happens now that we've sent this in?" -} -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/09-questions_received_job-application.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/09-questions_received_job-application.yaml.md deleted file mode 100644 index 953c44c..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/09-questions_received_job-application.yaml.md +++ /dev/null @@ -1,48 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We are twelve people. We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: housing boards and private owners with a problem with a building - wants: someone to come and look at the building and tell them what can be done. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- new-build-project: owners who already know what they want built - wants: drawings, a permit and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- subcontractor-application: trade firms who want to be on the list of subcontractors - wants: to be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> declined. -- job-application: carpenters and apprentices asking if we are hiring - wants: a job with us. Handled by project_managers. Stages: open -> interviewing -> hired -> declined. -- report-site-issue: crew, ours and the subcontractors' people, on site - wants: to report a hazard, near miss or wrong delivery. Handled by safety_officer. Stages: open -> action_decided -> closed. - -The page: questions/received/job-application.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to home", - "description": "Thanks for reaching out. Ingrid or one of the project managers will read it and get back to you.", - "next_description": "We'll go through your application and be in touch, whether that's to set up a chat or let you know where things stand.", - "next_heading": "We'll be in touch about work with us", - "question": "What happens now that I've sent my application?" -} -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/10-questions_received_new-build-project.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/10-questions_received_new-build-project.yaml.md deleted file mode 100644 index 6af9ea0..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/10-questions_received_new-build-project.yaml.md +++ /dev/null @@ -1,48 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We are twelve people. We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: housing boards and private owners with a problem with a building - wants: someone to come and look at the building and tell them what can be done. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- new-build-project: owners who already know what they want built - wants: drawings, a permit and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- subcontractor-application: trade firms who want to be on the list of subcontractors - wants: to be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> declined. -- job-application: carpenters and apprentices asking if we are hiring - wants: a job with us. Handled by project_managers. Stages: open -> interviewing -> hired -> declined. -- report-site-issue: crew, ours and the subcontractors' people, on site - wants: to report a hazard, near miss or wrong delivery. Handled by safety_officer. Stages: open -> action_decided -> closed. - -The page: questions/received/new-build-project.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to homepage", - "description": "Thanks for sending us your project. A project manager will look it over and get back to you with next steps.", - "next_description": "We'll book a site visit to see the building and talk through what you have in mind before we draw anything up.", - "next_heading": "We'll arrange a survey", - "question": "What happens now that we've sent this?" -} -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/11-questions_received_subcontractor-application.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/11-questions_received_subcontractor-application.yaml.md deleted file mode 100644 index e18be5b..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/11-questions_received_subcontractor-application.yaml.md +++ /dev/null @@ -1,46 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We are twelve people. We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: housing boards and private owners with a problem with a building - wants: someone to come and look at the building and tell them what can be done. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- new-build-project: owners who already know what they want built - wants: drawings, a permit and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- subcontractor-application: trade firms who want to be on the list of subcontractors - wants: to be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> declined. -- job-application: carpenters and apprentices asking if we are hiring - wants: a job with us. Handled by project_managers. Stages: open -> interviewing -> hired -> declined. -- report-site-issue: crew, ours and the subcontractors' people, on site - wants: to report a hazard, near miss or wrong delivery. Handled by safety_officer. Stages: open -> action_decided -> closed. - -The page: questions/received/subcontractor-application.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to home", - "description": "Thanks for applying to join our subcontractor list. A project manager will check your details and papers before you're added.", - "next_description": "We'll look over your firm's details and get back to you about what's needed to be approved.", - "next_heading": "We'll review your application", - "question": "What happens now that we've applied?" -} diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/12-questions_safety_officer_index.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/12-questions_safety_officer_index.yaml.md deleted file mode 100644 index 1aa7246..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/llm/12-questions_safety_officer_index.yaml.md +++ /dev/null @@ -1,100 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We are twelve people. We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: housing boards and private owners with a problem with a building - wants: someone to come and look at the building and tell them what can be done. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- new-build-project: owners who already know what they want built - wants: drawings, a permit and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost. -- subcontractor-application: trade firms who want to be on the list of subcontractors - wants: to be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> declined. -- job-application: carpenters and apprentices asking if we are hiring - wants: a job with us. Handled by project_managers. Stages: open -> interviewing -> hired -> declined. -- report-site-issue: crew, ours and the subcontractors' people, on site - wants: to report a hazard, near miss or wrong delivery. Handled by safety_officer. Stages: open -> action_decided -> closed. - -The page: questions/safety_officer/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. Under `invites`, each entry is a form that invites a person into that group - they get an account and a one-time link - and `invited` is the list of invites sent. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "site_issues": { - "description": "", - "heading": "", - "moves": { - "action_decided->closed": "closed>", - "open->action_decided": "action_decided>" - } - } - }, - "confirm": "", - "description": "", - "invited": { - "description": "", - "done": "", - "heading": "" - }, - "invites": { - "safety_officer": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "email": "", - "name": "" - } - } - }, - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "site_issues": { - "description": "Hazards, near misses and delivery mix-ups reported from site, waiting on a decision or a close-out.", - "heading": "What's been reported from site", - "moves": { - "action_decided->closed": "Mark sorted", - "open->action_decided": "Log what we're doing" - } - } - }, - "confirm": "Confirm", - "description": "Everything reported from site, so you can decide what to do and close it out.", - "invited": { - "description": "Safety officers you've invited and whether they've signed up yet.", - "done": "Signed up", - "heading": "Safety officers you've invited" - }, - "invites": { - "safety_officer": { - "button": "Send invite", - "description": "Give another safety officer their own account and a one-time link to sign up.", - "form_title": "Invite a safety officer", - "heading": "Bring in another safety officer", - "labels": { - "email": "Email address", - "name": "Full name" - } - } - }, - "links": {}, - "question": "What's been reported from site that still needs sorting?" -} -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/needs.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/needs.yaml deleted file mode 100644 index 34e8aac..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/needs.yaml +++ /dev/null @@ -1,166 +0,0 @@ -needs: -- done_when: - - won - - lost - enters: / - handled_by: project_managers - id: building-problem - lands_in: enquiries - max_fields: 4 - max_steps: 1 - stage_words: - lost: lost - open: open - quoted: quoted - surveyed: surveyed - won: won - stages: - - open - - surveyed - - quoted - - won - - lost - success: - - won - via: Find out what's wrong with your building - wants: someone to come and look at the building and tell them what can be done - who: housing boards and private owners with a problem with a building -- done_when: - - won - - lost - enters: / - handled_by: project_managers - id: new-build-project - lands_in: enquiries - max_fields: 4 - max_steps: 1 - stage_words: - lost: lost - open: open - quoted: quoted - surveyed: surveyed - won: won - stages: - - open - - surveyed - - quoted - - won - - lost - success: - - won - via: Get your project drawn, permitted and priced - wants: drawings, a permit and a price - who: owners who already know what they want built -- done_when: - - approved - - declined - enters: / - handled_by: project_managers - id: subcontractor-application - lands_in: subcontractors - max_fields: 5 - max_steps: 1 - stage_words: - approved: approved - checking: checking - declined: declined - open: open - papers_requested: papers requested - stages: - - open - - checking - - papers_requested - - approved - - declined - success: - - approved - via: Get work as one of our subcontractors - wants: to be approved as a subcontractor - who: trade firms who want to be on the list of subcontractors -- done_when: - - hired - - declined - enters: / - handled_by: project_managers - id: job-application - lands_in: job_applications - max_fields: 4 - max_steps: 1 - stage_words: - declined: declined - hired: hired - interviewing: interviewing - open: open - stages: - - open - - interviewing - - hired - - declined - success: - - hired - via: Work with our carpenters - wants: a job with us - who: carpenters and apprentices asking if we are hiring -- done_when: - - closed - enters: /crew/report-site-issue - enters_as: crew - handled_by: safety_officer - id: report-site-issue - lands_in: site_issues - max_fields: 3 - max_steps: 1 - stage_words: - action_decided: action decided - closed: closed - open: open - stages: - - open - - action_decided - - closed - success: - - closed - via: Flag something wrong on site - wants: to report a hazard, near miss or wrong delivery - who: crew, ours and the subcontractors' people, on site -personas: -- id: housing-board-damp - need: building-problem - text: | - I chair the board of a housing cooperative from the seventies. Two ground-floor flats have damp in the walls and we don't know if it's drainage or the facade. We need someone to tell us. -- id: buyer-before-purchase - need: building-problem - text: | - We are about to buy an old timber house. Before we sign we want a professional to go through it and tell us what is wrong with it. -- id: attic-conversion - need: new-build-project - text: | - We want to turn our attic into two bedrooms and a bathroom. We need drawings and someone who handles the application to the municipality. -- id: shop-to-flat - need: new-build-project - text: | - I own a former shop on the ground floor and want to make it a flat. I have no idea what is allowed. Can you sort that out and give me a price? -- id: electrician-firm - need: subcontractor-application - text: | - We are a four-person electrical firm, fully certified. We would like to get on your list so you call us when you need electricians. -- id: scaffolder - need: subcontractor-application - text: | - I run a scaffolding company. How do I get to do jobs for you? -- id: carpenter-jobseeker - need: job-application - text: | - I'm a certified carpenter with eight years on rehabilitation jobs. Are you hiring? -- id: apprentice - need: job-application - text: | - I finish vocational school this spring and need an apprenticeship as a bricklayer. -- id: loose-railing - need: report-site-issue - text: | - The railing on the third level of the scaffold on the north side is loose. Nobody got hurt but someone will. -- id: wrong-membrane - need: report-site-issue - text: | - The bathroom membrane delivered today is not the one in the specification. We stopped work on it. diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/crew/_section.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/crew/_section.yaml deleted file mode 100644 index 1f962a5..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/crew/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: crew diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/crew/index.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/crew/index.yaml deleted file mode 100644 index ee4a1f1..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/crew/index.yaml +++ /dev/null @@ -1,44 +0,0 @@ -alternatives: -- action: /crew/report-site-issue - consequence: - - Open site issues - description: See what's been reported from site and decide what to do about it. - name: Handle hazards and near misses reported from site -- action: /crew - consequence: - - Send invite - description: Give a colleague their own login so they can work cases with you. - features: - - description: '' - name: Invite a colleague - requirements: - - label: Their name - name: name - - label: Their email - name: email - type: email - invite: - group: crew - name: Bring a colleague onto the desk -- action: /crew - consequence: - - Confirm - description: People you've invited who haven't taken up their invite yet, and those who have. - features: - - description: '' - name: '' - resource: - requires_group: crew - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Signed up - to: done - name: Who's joined so far -description: 'Everything on your desk right now: enquiries, quotes, subcontractors and job applications, all in one place.' -name: What needs your attention right now? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/crew/report-site-issue-sent.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/crew/report-site-issue-sent.yaml deleted file mode 100644 index 2b3ddf2..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/crew/report-site-issue-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Our safety officer looks at every report the same day and decides what needs doing. - name: Safety officer reviews it today -- action: /crew - consequence: - - Back to site - description: '' - name: Back to site -description: Thanks for flagging this. It's gone straight to our safety officer. -name: What happens now that I've sent this in? diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/crew/report-site-issue.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/crew/report-site-issue.yaml deleted file mode 100644 index 73f83ac..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/crew/report-site-issue.yaml +++ /dev/null @@ -1,43 +0,0 @@ -alternatives: -- action: /crew/report-site-issue-sent - consequence: - - Report issue - description: Tell the safety officer about a hazard, near miss or wrong delivery on site. - encouragements: - - Takes a minute — even a rough description helps. - features: - - description: Your report goes to the safety officer, who decides what to do about it, then closes it once it's sorted. - icon: lucide:clipboard-list - name: What happens next - - description: The safety officer reads this directly — if it's urgent, call Ingrid Nordvik on ingrid@nordvikbygg.example in the meantime. - icon: lucide:shield - name: Who sees this - - description: Say where and what's happened, as plainly as you can. - icon: lucide:alert-triangle - name: Report the issue - requirements: - - label: Type of issue - name: issue_type - options: - - Hazard - - Near miss - - Wrong materials - - Other - type: select - - label: Where on site - name: location - placeholder: Storgata 14, east scaffold - type: text - - label: What happened - name: details - optional: true - placeholder: Scaffold missing a guardrail on the second lift, someone could fall. - type: textarea - name: Flag something wrong on site - record_as: site_issues -description: See a hazard, a near miss or the wrong delivery turn up? Let us know before it becomes a problem. -followup: false -name: Has something happened on site that needs attention? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/decide/subcontractor-application.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/decide/subcontractor-application.yaml deleted file mode 100644 index a9a2812..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/decide/subcontractor-application.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: We're still checking you over and will be in touch shortly about next steps. - name: Keep your application under review - self_transition: - bucket: subcontractors - label: Continue review - to: checking -description: We've had a look and want to move forward. Let us know if you're ready to send over your paperwork. -name: Are you ready to move this application forward? diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/index.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/index.yaml deleted file mode 100644 index 07df80f..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/index.yaml +++ /dev/null @@ -1,173 +0,0 @@ -alternatives: -- description: Twelve of us, surveying buildings, drawing up plans, getting the permits sorted, and doing the work ourselves alongside trusted subcontractors. - features: - - description: We come look at the building, tell you honestly what's wrong and what it'll take to fix. - icon: lucide:search - name: Know what's wrong before you spend a krone - - description: We draw up the plans, apply for the permit, and build it with our own carpenters and trusted subcontractors. - icon: lucide:ruler - name: See your project through from drawing to done - name: Building work you can trust from start to finish -- action: /received/building-problem - consequence: - - Get a survey - description: Tell us what's wrong with the building and we'll come take a look. - encouragements: - - A project manager reads every message and gets back to you, usually within a couple of days. - features: - - description: We look at what you've sent and book a site visit to survey the building. From there we quote the work, and if you go ahead, the job is won and we get started. - icon: lucide:route - name: What happens next - - description: A project manager handles this from start to finish, and you can call or email us any time in between. - icon: lucide:user-check - name: Who you'll hear from - - description: A few lines about what you're seeing is enough to start. - icon: lucide:search - name: Describe the building - requirements: - - label: Name - name: name - placeholder: Kari Hansen - type: text - - label: Email - name: email - placeholder: kari@example.com - type: email - - label: Phone - name: phone - placeholder: 912 34 567 - type: tel - - label: What's the problem? - name: problem - placeholder: Damp patches on the ceiling in two flats, worse after rain - type: textarea - - label: Address - name: address - optional: true - placeholder: Storgata 14, 0155 Oslo - type: text - name: Find out what's wrong with your building - record_as: enquiries -- action: /received/new-build-project - consequence: - - Start my project - description: Tell us what you want built and we'll draw it up, handle the permit, and give you a price. - encouragements: - - A project manager looks at every project and comes back to you with next steps. - features: - - description: We survey the site, draw up plans and quote the job. Once you accept, we apply for the permit and get building. - icon: lucide:route - name: What happens next - - description: A project manager owns your project and is your point of contact by phone or email throughout. - icon: lucide:user-check - name: Who you'll hear from - - description: Sketches or plans help, but a description is enough to start. - icon: lucide:ruler - name: Describe your project - requirements: - - label: Name - name: name - placeholder: Per Olsen - type: text - - label: Email - name: email - placeholder: per@example.com - type: email - - label: Phone - name: phone - placeholder: 923 45 678 - type: tel - - label: What do you want to build? - name: project_description - placeholder: Extending the kitchen with a 20m2 addition and a new terrace - type: textarea - name: Get your project drawn, permitted and priced - record_as: enquiries -- action: /received/subcontractor-application - consequence: - - Apply now - description: Electrical, plumbing or scaffolding firms, get on our list and we'll bring you in on jobs. - encouragements: - - Send what you have now, we'll ask for anything more we need. - features: - - description: We check your papers, and may ask for more documents. Once everything's in order, you're approved and on our list. - icon: lucide:route - name: What happens next - - description: A project manager checks applications and can be reached by phone or email if you have questions. - icon: lucide:user-check - name: Who you'll hear from - - description: Have your registration number and insurance details to hand. - icon: lucide:handshake - name: Apply as a subcontractor - requirements: - - label: Company name - name: company_name - placeholder: Berg Elektro AS - type: text - - label: Email - name: email - placeholder: post@bergelektro.example - type: email - - label: Phone - name: phone - placeholder: 934 56 789 - type: tel - - label: Trade - name: trade - options: - - Electrical - - Plumbing - - Scaffolding - - Other - type: select - - label: Registration number - name: registration_number - placeholder: 918 234 567 - type: text - - label: Insurance details - name: insurance_info - optional: true - placeholder: Liability insurance with If, policy 123456 - type: textarea - name: Get work as one of our subcontractors - record_as: subcontractors -- action: /received/job-application - consequence: - - Send application - description: Carpenters and apprentices, tell us a bit about yourself and we'll see where you'd fit. - encouragements: - - No CV needed to get started, just tell us who you are. - features: - - description: We read your message and if it looks like a fit, we call you in for a chat. If that goes well, we'll offer you a start. - icon: lucide:route - name: What happens next - - description: A project manager reads applications and can answer questions by phone or email while you wait. - icon: lucide:user-check - name: Who you'll hear from - - description: A short message about your experience is all we need to begin. - icon: lucide:hammer - name: Tell us about yourself - requirements: - - label: Name - name: name - placeholder: Ola Berg - type: text - - label: Email - name: email - placeholder: ola@example.com - type: email - - label: Phone - name: phone - placeholder: 901 23 456 - type: tel - - label: Tell us about yourself - name: message - placeholder: Trained carpenter, three years on renovation sites, looking for full-time work - type: textarea - name: Work with our carpenters - record_as: job_applications -description: We look after old buildings and new ones, from the first survey to the last coat of paint, with our own carpenters and trusted subcontractors for the rest. -name: What do you need done to a building? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/project_managers/_section.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/project_managers/_section.yaml deleted file mode 100644 index d8acdff..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/project_managers/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: project_managers diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/project_managers/index.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/project_managers/index.yaml deleted file mode 100644 index 962c5bc..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/project_managers/index.yaml +++ /dev/null @@ -1,141 +0,0 @@ -alternatives: -- action: /project_managers - consequence: - - Confirm - description: Every building problem and new-build request that has come in, from first contact to won or lost. - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: enquiries - kind: kv - transitions: - - from: open - label: Mark as surveyed - to: surveyed - - from: open - label: Send straight to quoted - to: quoted - - from: open - label: Mark as won - to: won - - from: open - label: Mark as lost - to: lost - - from: quoted - label: Mark as won - to: won - - from: quoted - label: Mark as lost - to: lost - - from: surveyed - label: Quote sent - to: quoted - - from: surveyed - label: Mark as won - to: won - - from: surveyed - label: Mark as lost - to: lost - name: New enquiries and where they stand -- action: /project_managers - consequence: - - Confirm - description: Carpenters and apprentices who have asked if we're hiring. - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: job_applications - kind: kv - transitions: - - from: interviewing - label: Offer the job - to: hired - - from: interviewing - label: Not taking them on - to: declined - - from: open - label: Call in for interview - to: interviewing - - from: open - label: Offer the job - to: hired - - from: open - label: Not taking them on - to: declined - name: People asking for work -- action: /project_managers - consequence: - - Confirm - description: Trade firms asking to get on our subcontractor list, and where each one is in the vetting. - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: subcontractors - kind: kv - transitions: - - from: checking - label: Ask for their papers - to: papers_requested - - from: checking - label: Approve them - to: approved - - from: checking - label: Turn them down - to: declined - - from: open - label: Turn them down - to: declined - - from: papers_requested - label: Approve them - to: approved - - from: papers_requested - label: Turn them down - to: declined - name: Firms wanting to be a subcontractor -- action: /project_managers - consequence: - - Send invite - description: Bring another project manager onto the desk, with their own login. - features: - - description: '' - name: Invite a project manager - requirements: - - label: Their name - name: name - - label: Their email address - name: email - type: email - invite: - group: project_managers - name: Add another project manager -- action: /project_managers - consequence: - - Confirm - description: Project managers you've invited who haven't signed in yet. - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Signed in - to: done - name: Invites waiting to be taken up -description: Your desk for enquiries, job applications and subcontractors waiting on you. -name: What's waiting on me today? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/received/building-problem.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/received/building-problem.yaml deleted file mode 100644 index 6b0ec48..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/received/building-problem.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: A project manager will go through what you've sent and get in touch to arrange a look at the building. - name: A project manager gets in touch -- action: / - consequence: - - Back to home - description: '' - name: Back to home -description: Thanks for telling us about the building. We've logged your report and will take it from here. -name: What happens now that we've sent this in? diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/received/job-application.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/received/job-application.yaml deleted file mode 100644 index 53f7005..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/received/job-application.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: We'll go through your application and be in touch, whether that's to set up a chat or let you know where things stand. - name: We'll be in touch about work with us -- action: / - consequence: - - Back to home - description: '' - name: Back to home -description: Thanks for reaching out. Ingrid or one of the project managers will read it and get back to you. -name: What happens now that I've sent my application? diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/received/new-build-project.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/received/new-build-project.yaml deleted file mode 100644 index 40015e0..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/received/new-build-project.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: We'll book a site visit to see the building and talk through what you have in mind before we draw anything up. - name: We'll arrange a survey -- action: / - consequence: - - Back to homepage - description: '' - name: Back to homepage -description: Thanks for sending us your project. A project manager will look it over and get back to you with next steps. -name: What happens now that we've sent this? diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/received/subcontractor-application.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/received/subcontractor-application.yaml deleted file mode 100644 index 1f191f9..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/received/subcontractor-application.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: We'll look over your firm's details and get back to you about what's needed to be approved. - name: We'll review your application -- action: / - consequence: - - Back to home - description: '' - name: Back to home -description: Thanks for applying to join our subcontractor list. A project manager will check your details and papers before you're added. -name: What happens now that we've applied? diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/safety_officer/_section.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/safety_officer/_section.yaml deleted file mode 100644 index d7ea7a1..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/safety_officer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: safety_officer diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/safety_officer/index.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/safety_officer/index.yaml deleted file mode 100644 index 40f93bf..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/questions/safety_officer/index.yaml +++ /dev/null @@ -1,59 +0,0 @@ -alternatives: -- action: /safety_officer - consequence: - - Confirm - description: Hazards, near misses and delivery mix-ups reported from site, waiting on a decision or a close-out. - features: - - description: '' - name: '' - resource: - requires_group: safety_officer - source: - bucket: site_issues - kind: kv - transitions: - - from: action_decided - label: Mark sorted - to: closed - - from: open - label: Log what we're doing - to: action_decided - name: What's been reported from site -- action: /safety_officer - consequence: - - Send invite - description: Give another safety officer their own account and a one-time link to sign up. - features: - - description: '' - name: Invite a safety officer - requirements: - - label: Full name - name: name - - label: Email address - name: email - type: email - invite: - group: safety_officer - name: Bring in another safety officer -- action: /safety_officer - consequence: - - Confirm - description: Safety officers you've invited and whether they've signed up yet. - features: - - description: '' - name: '' - resource: - requires_group: safety_officer - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Signed up - to: done - name: Safety officers you've invited -description: Everything reported from site, so you can decide what to do and close it out. -name: What's been reported from site that still needs sorting? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/site.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/site.yaml deleted file mode 100644 index d632a3a..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/site.yaml +++ /dev/null @@ -1,5 +0,0 @@ -lang: en -mail: - from: Nordvik Bygg - reply_to: ingrid@nordvikbygg.example -title: Nordvik Bygg diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/words.json b/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/words.json deleted file mode 100644 index e93ddcb..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r2/site/words.json +++ /dev/null @@ -1,391 +0,0 @@ -{ - "aggregates.yaml": { - "enquiries": { - "lost": { - "body": "Thanks for the chance to look at this - not one we're able to take on. If plans change or you want a second opinion down the line, get in touch.", - "subject": "Not one we can take on this time" - }, - "open": { - "body": "We've had your enquiry land. A project manager will come back to you shortly about a visit.", - "subject": "Got your enquiry" - }, - "won": { - "body": "Good news - we're going ahead with your job. Your project manager will be in touch about next steps.", - "subject": "You're booked in" - } - }, - "job_applications": { - "declined": { - "body": "Thanks for applying - we've filled the position for now. We'll keep your details on file if that changes.", - "subject": "No opening right now" - }, - "hired": { - "body": "Welcome aboard - we'd like to bring you on. We'll be in touch about start dates and paperwork.", - "subject": "Welcome to the team" - }, - "open": { - "body": "Thanks for reaching out about work with us. We'll look over what you've sent and get back to you.", - "subject": "Got your application" - } - }, - "subcontractors": { - "approved": { - "body": "You're on our list of subcontractors now. We'll be in touch when a job comes up that fits.", - "subject": "You're on our list" - }, - "declined": { - "body": "Thanks for applying - we won't be adding you to our list at this time.", - "subject": "Not adding you to our list" - }, - "open": { - "body": "We've had your application to become a subcontractor. We'll look it over and be in touch.\n\nWhat you can do next: {site}/decide/subcontractor-application?chain={chain}&email={email}", - "subject": "Got your application" - }, - "papers_requested": { - "body": "We need a few papers from you before we can approve you - see the link below for what's missing.", - "subject": "We need some paperwork from you" - } - } - }, - "questions/crew/index.yaml": { - "buckets": {}, - "confirm": "Confirm", - "description": "Everything on your desk right now: enquiries, quotes, subcontractors and job applications, all in one place.", - "invited": { - "description": "People you've invited who haven't taken up their invite yet, and those who have.", - "done": "Signed up", - "heading": "Who's joined so far" - }, - "invites": { - "crew": { - "button": "Send invite", - "description": "Give a colleague their own login so they can work cases with you.", - "form_title": "Invite a colleague", - "heading": "Bring a colleague onto the desk", - "labels": { - "email": "Their email", - "name": "Their name" - } - } - }, - "links": { - "report-site-issue": { - "button": "Open site issues", - "description": "See what's been reported from site and decide what to do about it.", - "heading": "Handle hazards and near misses reported from site" - } - }, - "question": "What needs your attention right now?" - }, - "questions/crew/report-site-issue-sent.yaml": { - "back": "Back to site", - "description": "Thanks for flagging this. It's gone straight to our safety officer.", - "next_description": "Our safety officer looks at every report the same day and decides what needs doing.", - "next_heading": "Safety officer reviews it today", - "question": "What happens now that I've sent this in?" - }, - "questions/crew/report-site-issue.yaml": { - "button": "Report issue", - "description": "Tell the safety officer about a hazard, near miss or wrong delivery on site.", - "encouragement": "Takes a minute — even a rough description helps.", - "form_description": "Say where and what's happened, as plainly as you can.", - "form_title": "Report the issue", - "heading": "Flag something wrong on site", - "hints": { - "details": "Scaffold missing a guardrail on the second lift, someone could fall.", - "issue_type": "Near miss", - "location": "Storgata 14, east scaffold" - }, - "icon": "alert-triangle", - "labels": { - "details": "What happened", - "issue_type": "Type of issue", - "location": "Where on site" - }, - "page_description": "See a hazard, a near miss or the wrong delivery turn up? Let us know before it becomes a problem.", - "question": "Has something happened on site that needs attention?", - "road_description": "Your report goes to the safety officer, who decides what to do about it, then closes it once it's sorted.", - "road_icon": "clipboard-list", - "road_title": "What happens next", - "who_description": "The safety officer reads this directly — if it's urgent, call Ingrid Nordvik on ingrid@nordvikbygg.example in the meantime.", - "who_icon": "shield", - "who_title": "Who sees this" - }, - "questions/decide/subcontractor-application.yaml": { - "description": "We've had a look and want to move forward. Let us know if you're ready to send over your paperwork.", - "moves": { - "checking": { - "button": "Continue review", - "description": "We're still checking you over and will be in touch shortly about next steps.", - "heading": "Keep your application under review" - } - }, - "question": "Are you ready to move this application forward?" - }, - "questions/index.yaml": { - "description": "We look after old buildings and new ones, from the first survey to the last coat of paint, with our own carpenters and trusted subcontractors for the rest.", - "doors": {}, - "needs": { - "building-problem": { - "button": "Get a survey", - "description": "Tell us what's wrong with the building and we'll come take a look.", - "encouragement": "A project manager reads every message and gets back to you, usually within a couple of days.", - "form_description": "A few lines about what you're seeing is enough to start.", - "form_title": "Describe the building", - "heading": "Find out what's wrong with your building", - "hints": { - "address": "Storgata 14, 0155 Oslo", - "email": "kari@example.com", - "name": "Kari Hansen", - "phone": "912 34 567", - "problem": "Damp patches on the ceiling in two flats, worse after rain" - }, - "icon": "search", - "labels": { - "address": "Address", - "email": "Email", - "name": "Name", - "phone": "Phone", - "problem": "What's the problem?" - }, - "road_description": "We look at what you've sent and book a site visit to survey the building. From there we quote the work, and if you go ahead, the job is won and we get started.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A project manager handles this from start to finish, and you can call or email us any time in between.", - "who_icon": "user-check", - "who_title": "Who you'll hear from" - }, - "job-application": { - "button": "Send application", - "description": "Carpenters and apprentices, tell us a bit about yourself and we'll see where you'd fit.", - "encouragement": "No CV needed to get started, just tell us who you are.", - "form_description": "A short message about your experience is all we need to begin.", - "form_title": "Tell us about yourself", - "heading": "Work with our carpenters", - "hints": { - "email": "ola@example.com", - "message": "Trained carpenter, three years on renovation sites, looking for full-time work", - "name": "Ola Berg", - "phone": "901 23 456" - }, - "icon": "hammer", - "labels": { - "email": "Email", - "message": "Tell us about yourself", - "name": "Name", - "phone": "Phone" - }, - "road_description": "We read your message and if it looks like a fit, we call you in for a chat. If that goes well, we'll offer you a start.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A project manager reads applications and can answer questions by phone or email while you wait.", - "who_icon": "user-check", - "who_title": "Who you'll hear from" - }, - "new-build-project": { - "button": "Start my project", - "description": "Tell us what you want built and we'll draw it up, handle the permit, and give you a price.", - "encouragement": "A project manager looks at every project and comes back to you with next steps.", - "form_description": "Sketches or plans help, but a description is enough to start.", - "form_title": "Describe your project", - "heading": "Get your project drawn, permitted and priced", - "hints": { - "email": "per@example.com", - "name": "Per Olsen", - "phone": "923 45 678", - "project_description": "Extending the kitchen with a 20m2 addition and a new terrace" - }, - "icon": "ruler", - "labels": { - "email": "Email", - "name": "Name", - "phone": "Phone", - "project_description": "What do you want to build?" - }, - "road_description": "We survey the site, draw up plans and quote the job. Once you accept, we apply for the permit and get building.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A project manager owns your project and is your point of contact by phone or email throughout.", - "who_icon": "user-check", - "who_title": "Who you'll hear from" - }, - "subcontractor-application": { - "button": "Apply now", - "description": "Electrical, plumbing or scaffolding firms, get on our list and we'll bring you in on jobs.", - "encouragement": "Send what you have now, we'll ask for anything more we need.", - "form_description": "Have your registration number and insurance details to hand.", - "form_title": "Apply as a subcontractor", - "heading": "Get work as one of our subcontractors", - "hints": { - "company_name": "Berg Elektro AS", - "email": "post@bergelektro.example", - "insurance_info": "Liability insurance with If, policy 123456", - "phone": "934 56 789", - "registration_number": "918 234 567", - "trade": "Electrical" - }, - "icon": "handshake", - "labels": { - "company_name": "Company name", - "email": "Email", - "insurance_info": "Insurance details", - "phone": "Phone", - "registration_number": "Registration number", - "trade": "Trade" - }, - "road_description": "We check your papers, and may ask for more documents. Once everything's in order, you're approved and on our list.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A project manager checks applications and can be reached by phone or email if you have questions.", - "who_icon": "user-check", - "who_title": "Who you'll hear from" - } - }, - "opener": { - "description": "Twelve of us, surveying buildings, drawing up plans, getting the permits sorted, and doing the work ourselves alongside trusted subcontractors.", - "features": { - "assess-your-building": { - "description": "We come look at the building, tell you honestly what's wrong and what it'll take to fix.", - "heading": "Know what's wrong before you spend a krone", - "icon": "search" - }, - "build-your-project": { - "description": "We draw up the plans, apply for the permit, and build it with our own carpenters and trusted subcontractors.", - "heading": "See your project through from drawing to done", - "icon": "ruler" - } - }, - "heading": "Building work you can trust from start to finish" - }, - "question": "What do you need done to a building?", - "shopping": { - "description": "Not ready to send anything yet? Have a look at how we work and what we've done before.", - "heading": "See how we work before you get in touch", - "items": {} - } - }, - "questions/project_managers/index.yaml": { - "buckets": { - "enquiries": { - "description": "Every building problem and new-build request that has come in, from first contact to won or lost.", - "heading": "New enquiries and where they stand", - "moves": { - "open->lost": "Mark as lost", - "open->quoted": "Send straight to quoted", - "open->surveyed": "Mark as surveyed", - "open->won": "Mark as won", - "quoted->lost": "Mark as lost", - "quoted->won": "Mark as won", - "surveyed->lost": "Mark as lost", - "surveyed->quoted": "Quote sent", - "surveyed->won": "Mark as won" - } - }, - "job_applications": { - "description": "Carpenters and apprentices who have asked if we're hiring.", - "heading": "People asking for work", - "moves": { - "interviewing->declined": "Not taking them on", - "interviewing->hired": "Offer the job", - "open->declined": "Not taking them on", - "open->hired": "Offer the job", - "open->interviewing": "Call in for interview" - } - }, - "subcontractors": { - "description": "Trade firms asking to get on our subcontractor list, and where each one is in the vetting.", - "heading": "Firms wanting to be a subcontractor", - "moves": { - "checking->approved": "Approve them", - "checking->declined": "Turn them down", - "checking->papers_requested": "Ask for their papers", - "open->declined": "Turn them down", - "papers_requested->approved": "Approve them", - "papers_requested->declined": "Turn them down" - } - } - }, - "confirm": "Confirm", - "description": "Your desk for enquiries, job applications and subcontractors waiting on you.", - "invited": { - "description": "Project managers you've invited who haven't signed in yet.", - "done": "Signed in", - "heading": "Invites waiting to be taken up" - }, - "invites": { - "project_managers": { - "button": "Send invite", - "description": "Bring another project manager onto the desk, with their own login.", - "form_title": "Invite a project manager", - "heading": "Add another project manager", - "labels": { - "email": "Their email address", - "name": "Their name" - } - } - }, - "links": {}, - "question": "What's waiting on me today?" - }, - "questions/received/building-problem.yaml": { - "back": "Back to home", - "description": "Thanks for telling us about the building. We've logged your report and will take it from here.", - "next_description": "A project manager will go through what you've sent and get in touch to arrange a look at the building.", - "next_heading": "A project manager gets in touch", - "question": "What happens now that we've sent this in?" - }, - "questions/received/job-application.yaml": { - "back": "Back to home", - "description": "Thanks for reaching out. Ingrid or one of the project managers will read it and get back to you.", - "next_description": "We'll go through your application and be in touch, whether that's to set up a chat or let you know where things stand.", - "next_heading": "We'll be in touch about work with us", - "question": "What happens now that I've sent my application?" - }, - "questions/received/new-build-project.yaml": { - "back": "Back to homepage", - "description": "Thanks for sending us your project. A project manager will look it over and get back to you with next steps.", - "next_description": "We'll book a site visit to see the building and talk through what you have in mind before we draw anything up.", - "next_heading": "We'll arrange a survey", - "question": "What happens now that we've sent this?" - }, - "questions/received/subcontractor-application.yaml": { - "back": "Back to home", - "description": "Thanks for applying to join our subcontractor list. A project manager will check your details and papers before you're added.", - "next_description": "We'll look over your firm's details and get back to you about what's needed to be approved.", - "next_heading": "We'll review your application", - "question": "What happens now that we've applied?" - }, - "questions/safety_officer/index.yaml": { - "buckets": { - "site_issues": { - "description": "Hazards, near misses and delivery mix-ups reported from site, waiting on a decision or a close-out.", - "heading": "What's been reported from site", - "moves": { - "action_decided->closed": "Mark sorted", - "open->action_decided": "Log what we're doing" - } - } - }, - "confirm": "Confirm", - "description": "Everything reported from site, so you can decide what to do and close it out.", - "invited": { - "description": "Safety officers you've invited and whether they've signed up yet.", - "done": "Signed up", - "heading": "Safety officers you've invited" - }, - "invites": { - "safety_officer": { - "button": "Send invite", - "description": "Give another safety officer their own account and a one-time link to sign up.", - "form_title": "Invite a safety officer", - "heading": "Bring in another safety officer", - "labels": { - "email": "Email address", - "name": "Full name" - } - } - }, - "links": {}, - "question": "What's been reported from site that still needs sorting?" - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/01-prompt.md b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/01-prompt.md deleted file mode 100644 index 0d89f80..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/01-prompt.md +++ /dev/null @@ -1,168 +0,0 @@ -# plan.yaml - -A plan is a needs spec that also says what each form collects. A -builder turns it into a working site with no further decisions, so -every structural fact about the business has to be in it. - -```yaml -business: -language: en # the intake's language code -contact: { name: , email: } -about: > - What the business does, in its own words. -mail: { from: " ", reply_to: } - # who every mail the site sends comes from; required as soon - # as any need has `mails` - -does: # the front door's first card: what the business does, one - - id: kebab-case # or two features, one role each, no button. Say it for the - for: # role the business exists for and the next one it serves. - text: what it does for them, in the intake's own words - -shows: # things a visitor may look at before asking for anything; - - id: kebab-case # each `resource` is portal's resource block, verbatim - text: one line on what it is - resource: { public: true, source: { kind: url, url: https://... } } - -doors: # a first question before the forms, only when the offers - - id: kebab-case # are more than one page holds (measured: four doors beat - who: who comes through it # ten offers on one page; six offers on one page beat doors) - -groups: # groups with a label the public may see: the committees - - { id: traffic, label: Traffic, invited_by: [board] } # a person can ask to join (optional) -invites_by: [board] # groups whose desk may invite people into every desk - -needs: - - id: kebab-case # ASCII only - who: the kind of person, in plain words, in the intake's language - wants: what they want from the business - door: # the door this public need sits behind; omit to put it on the front door - enters_as: # ONLY for a role inside the business; omit for the public - lands_in: # snake_case, ASCII - handled_by: # the role that must see and move the record - stages: [open, , ..., , ] - # EVERY stage the business said a case goes through, first to - # last, read off their own sentences one verb at a time: "they - # come in, we go and look, we send a quote, we win or lose it" - # is [open, surveyed, quoted, won, lost]. A pipeline is not an - # inbox: "answered" is rarely the real outcome. - done_when: [, ] # every stage that counts as finished, good or bad - success: [] # the finished stages that are a good outcome for the business - skippable: [] # stages a case may pass over (papers already complete) - turned_down_from: [open, ] - # the unfinished stages a case can still be turned down from; - # omit for every one. An applicant is declined before they - # start, not after - after, they depart - moves_by: { : [, ...] } - # only where someone other than handled_by moves a case INTO a - # stage: another group, or `submitter` (the person who sent the - # form; the form must then collect a required `email`) - watched_by: [] # groups that see these cases and move nothing; `public` opens a - # read-only page of the bucket to everyone (contact details hidden) - mails: { open: submitter, : submitter, :
} - # who hears when a case enters a stage: `submitter` (the form - # must then collect a required `email`) or one address. Tell the - # person on arrival and on every decision that is about them. - stages_text: { open: , : } - # each stage in the intake's language, where the ASCII id - # would read wrong to a person: "ikke_lost" is "ikke løst" - events: { open: applied } # ONLY when rebuilding a live site: the event names its - # aggregates.yaml already has, so its records keep replaying - attended_by: > # ONLY for a stage no desk button moves: the automation that does - what moves it, in a sentence - max_fields: 4 # decide this BEFORE writing collects, from what the intake - # says about the person; a budget that equals the form's size - # is counted, not decided, and is reported as such - # how many required fields THIS person will tolerate, from what - # the intake says about them: someone on a phone with gloves - # on gets 3, a first enquiry 4 to 6, a firm's paperwork 5 to 6 - collects: # the form; name is snake_case ASCII, type one of - # text (default), email, tel, textarea, date, select - - { name: name } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - { name: urgency, type: select, options: [This week, This month, No rush] } - - { name: can_do, type: select, multiple: true, options: [Drive, Cook, Carry] } # any number - - { name: committee, type: select, options_from: groups } # the labelled groups above - - { name: address, optional: true, private: true } # never on a public page -``` - -Rules: -- One need per (kind of person, thing they want). Work inside the - business counts: a role recording or posting something is a need - with `enters_as`. The intake's "what slows us down" usually names one. -- Groups are the roles the intake names, as snake_case identifiers. -- The front door opens with `does` (at most two features, one role - each) and `shows`, then holds at most seven offers: doors plus needs - with no door. A door with no need behind it, or a door on a need with - `enters_as`, is refused. A role `does` speaks for must have a move - of its own after sending (`moves_by` with `submitter`) or a public - view, or it is a spectator. -- Every need whose form collects an email should tell the person on - arrival and on the decisions about them (`mails`); the plan then - needs `mail: { from }`. -- Needs that land in the same bucket must have the same stages, - done_when, skippable, moves_by, watched_by and handled_by. -- Every required field is one the business will use to act on the - record. If the intake gives no reason to need it, make it optional or - leave it out. The required fields must not exceed max_fields. -- Only `select` lists `options`, and it must list them. -- Everything a person reads (who, wants, about, select options) is in - the intake's language. Everything a machine reads (ids, buckets, - groups, stages, field names) is plain ASCII: no æ, ø, å. -- Write no personas. - - -# Task - -A business filled in this intake. Write its plan.yaml: every need the intake implies, for the public and for each role inside the business, with the stages read off how the business says things progress, the form each need collects, and how much each person will tolerate. - -## Intake - -# An intake as the owner of a small building contractor would fill it -# in: plain words, no portal vocabulary. These are the fields the -# onboarding site asks for. -business: Nordvik Bygg -contact: { name: Ingrid Nordvik, email: ingrid@nordvikbygg.example } -language: en - -what_we_do: > - We are twelve people. We survey old buildings, draw up rehabilitation - plans, handle the permit application, and do the building work with - our own carpenters plus subcontractors for electrical, plumbing and - scaffolding. - -who_comes_to_us: > - Housing boards and private owners who have a problem with a building - and want someone to look at it. Owners who already know what they - want built and need drawings, a permit and a price. Trade firms who - want to be on our list of subcontractors. Carpenters and apprentices - asking if we are hiring. - -what_we_keep_track_of: > - Enquiries: they come in, we go and look at the building, we send a - quote, and then we either win it or lose it. Sometimes it is simply - not for us and we say so straight away. - Subcontractors: they apply, we check their company registration, - trade approval and insurance. Often papers are missing and we have to - ask again. Then they are approved or turned down. - Job applications: we read them, invite some to an interview, and hire - or decline. - Things that go wrong on site: a hazard, a near miss, wrong materials - delivered. Someone reports it, the safety officer decides what is - done about it, and closes it when it is fixed. - -who_is_involved: > - Two project managers handle enquiries, subcontractors and hiring. - One safety officer handles everything reported from site. - The crew, ours and the subcontractors' people, are the ones on site - who report things. They are on their phones, with gloves on, and - will not fill in a long form. - -what_slows_us_down: > - Enquiries arrive by phone, email and text and get lost. We never know - which subcontractors have valid papers. Site problems get mentioned - at lunch and forgotten. - - -Reply with the YAML only, no prose, no code fences. \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/01-reply.md b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/01-reply.md deleted file mode 100644 index 94880e3..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/01-reply.md +++ /dev/null @@ -1,103 +0,0 @@ -```yaml -business: Nordvik Bygg -language: en -contact: { name: Ingrid Nordvik, email: ingrid@nordvikbygg.example } -about: > - We survey old buildings, draw up rehabilitation plans, handle the - permit application, and do the building work with our own carpenters - plus subcontractors for electrical, plumbing and scaffolding. -mail: { from: "Nordvik Bygg ", reply_to: ingrid@nordvikbygg.example } - -does: - - id: survey-and-build - for: enquiry - text: We survey old buildings, draw up rehabilitation plans, handle the permit, and build. - - id: subcontractor-network - for: subcontractor-application - text: We work with subcontractors for electrical, plumbing and scaffolding. - -doors: - - id: work - who: housing boards and owners with a building problem or a project in mind - - id: join - who: trade firms, carpenters and apprentices who want to work with us - -groups: - - id: project_managers - - id: safety_officer - - id: crew - -needs: - - id: enquiry - who: a housing board or private owner with a problem with a building - wants: someone to look at the building and quote the work - door: work - lands_in: enquiries - handled_by: project_managers - stages: [open, surveyed, quoted, won, lost] - done_when: [won, lost] - success: [won] - turned_down_from: [open, surveyed] - mails: { open: submitter, won: submitter, lost: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - - id: subcontractor-application - who: a trade firm that wants to be on the subcontractor list - wants: to be approved as a subcontractor for electrical, plumbing or scaffolding work - door: join - lands_in: subcontractor_applications - handled_by: project_managers - stages: [open, checking_papers, approved, turned_down] - done_when: [approved, turned_down] - success: [approved] - skippable: [checking_papers] - turned_down_from: [open, checking_papers] - mails: { open: submitter, approved: submitter, turned_down: submitter } - max_fields: 5 - collects: - - { name: company_name } - - { name: email, type: email } - - { name: trade, type: select, options: [Electrical, Plumbing, Scaffolding] } - - { name: registration_number } - - { name: insurance_details, type: textarea } - - - id: job-application - who: a carpenter or apprentice asking if we are hiring - wants: to be considered for a job and invited to interview - door: join - lands_in: job_applications - handled_by: project_managers - stages: [open, interview, hired, declined] - done_when: [hired, declined] - success: [hired] - skippable: [interview] - turned_down_from: [open, interview] - mails: { open: submitter, interview: submitter, hired: submitter, declined: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: role, type: select, options: [Carpenter, Apprentice] } - - { name: experience, type: textarea, optional: true } - - - id: site-report - who: crew, ours and the subcontractors' people, on site - wants: to report a hazard, near miss or wrong delivery so it gets fixed - enters_as: crew - lands_in: site_reports - handled_by: safety_officer - stages: [open, in_progress, closed] - done_when: [closed] - success: [closed] - mails: { closed: submitter } - max_fields: 3 - collects: - - { name: email, type: email } - - { name: issue_type, type: select, options: [Hazard, Near miss, Wrong materials] } - - { name: description, type: textarea } -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/02-prompt.md b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/02-prompt.md deleted file mode 100644 index d084d53..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/02-prompt.md +++ /dev/null @@ -1,279 +0,0 @@ -# plan.yaml - -A plan is a needs spec that also says what each form collects. A -builder turns it into a working site with no further decisions, so -every structural fact about the business has to be in it. - -```yaml -business: -language: en # the intake's language code -contact: { name: , email: } -about: > - What the business does, in its own words. -mail: { from: " ", reply_to: } - # who every mail the site sends comes from; required as soon - # as any need has `mails` - -does: # the front door's first card: what the business does, one - - id: kebab-case # or two features, one role each, no button. Say it for the - for: # role the business exists for and the next one it serves. - text: what it does for them, in the intake's own words - -shows: # things a visitor may look at before asking for anything; - - id: kebab-case # each `resource` is portal's resource block, verbatim - text: one line on what it is - resource: { public: true, source: { kind: url, url: https://... } } - -doors: # a first question before the forms, only when the offers - - id: kebab-case # are more than one page holds (measured: four doors beat - who: who comes through it # ten offers on one page; six offers on one page beat doors) - -groups: # groups with a label the public may see: the committees - - { id: traffic, label: Traffic, invited_by: [board] } # a person can ask to join (optional) -invites_by: [board] # groups whose desk may invite people into every desk - -needs: - - id: kebab-case # ASCII only - who: the kind of person, in plain words, in the intake's language - wants: what they want from the business - door: # the door this public need sits behind; omit to put it on the front door - enters_as: # ONLY for a role inside the business; omit for the public - lands_in: # snake_case, ASCII - handled_by: # the role that must see and move the record - stages: [open, , ..., , ] - # EVERY stage the business said a case goes through, first to - # last, read off their own sentences one verb at a time: "they - # come in, we go and look, we send a quote, we win or lose it" - # is [open, surveyed, quoted, won, lost]. A pipeline is not an - # inbox: "answered" is rarely the real outcome. - done_when: [, ] # every stage that counts as finished, good or bad - success: [] # the finished stages that are a good outcome for the business - skippable: [] # stages a case may pass over (papers already complete) - turned_down_from: [open, ] - # the unfinished stages a case can still be turned down from; - # omit for every one. An applicant is declined before they - # start, not after - after, they depart - moves_by: { : [, ...] } - # only where someone other than handled_by moves a case INTO a - # stage: another group, or `submitter` (the person who sent the - # form; the form must then collect a required `email`) - watched_by: [] # groups that see these cases and move nothing; `public` opens a - # read-only page of the bucket to everyone (contact details hidden) - mails: { open: submitter, : submitter, :
} - # who hears when a case enters a stage: `submitter` (the form - # must then collect a required `email`) or one address. Tell the - # person on arrival and on every decision that is about them. - stages_text: { open: , : } - # each stage in the intake's language, where the ASCII id - # would read wrong to a person: "ikke_lost" is "ikke løst" - events: { open: applied } # ONLY when rebuilding a live site: the event names its - # aggregates.yaml already has, so its records keep replaying - attended_by: > # ONLY for a stage no desk button moves: the automation that does - what moves it, in a sentence - max_fields: 4 # decide this BEFORE writing collects, from what the intake - # says about the person; a budget that equals the form's size - # is counted, not decided, and is reported as such - # how many required fields THIS person will tolerate, from what - # the intake says about them: someone on a phone with gloves - # on gets 3, a first enquiry 4 to 6, a firm's paperwork 5 to 6 - collects: # the form; name is snake_case ASCII, type one of - # text (default), email, tel, textarea, date, select - - { name: name } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - { name: urgency, type: select, options: [This week, This month, No rush] } - - { name: can_do, type: select, multiple: true, options: [Drive, Cook, Carry] } # any number - - { name: committee, type: select, options_from: groups } # the labelled groups above - - { name: address, optional: true, private: true } # never on a public page -``` - -Rules: -- One need per (kind of person, thing they want). Work inside the - business counts: a role recording or posting something is a need - with `enters_as`. The intake's "what slows us down" usually names one. -- Groups are the roles the intake names, as snake_case identifiers. -- The front door opens with `does` (at most two features, one role - each) and `shows`, then holds at most seven offers: doors plus needs - with no door. A door with no need behind it, or a door on a need with - `enters_as`, is refused. A role `does` speaks for must have a move - of its own after sending (`moves_by` with `submitter`) or a public - view, or it is a spectator. -- Every need whose form collects an email should tell the person on - arrival and on the decisions about them (`mails`); the plan then - needs `mail: { from }`. -- Needs that land in the same bucket must have the same stages, - done_when, skippable, moves_by, watched_by and handled_by. -- Every required field is one the business will use to act on the - record. If the intake gives no reason to need it, make it optional or - leave it out. The required fields must not exceed max_fields. -- Only `select` lists `options`, and it must list them. -- Everything a person reads (who, wants, about, select options) is in - the intake's language. Everything a machine reads (ids, buckets, - groups, stages, field names) is plain ASCII: no æ, ø, å. -- Write no personas. - - -# Task - -A business filled in this intake. Write its plan.yaml: every need the intake implies, for the public and for each role inside the business, with the stages read off how the business says things progress, the form each need collects, and how much each person will tolerate. - -## Intake - -# An intake as the owner of a small building contractor would fill it -# in: plain words, no portal vocabulary. These are the fields the -# onboarding site asks for. -business: Nordvik Bygg -contact: { name: Ingrid Nordvik, email: ingrid@nordvikbygg.example } -language: en - -what_we_do: > - We are twelve people. We survey old buildings, draw up rehabilitation - plans, handle the permit application, and do the building work with - our own carpenters plus subcontractors for electrical, plumbing and - scaffolding. - -who_comes_to_us: > - Housing boards and private owners who have a problem with a building - and want someone to look at it. Owners who already know what they - want built and need drawings, a permit and a price. Trade firms who - want to be on our list of subcontractors. Carpenters and apprentices - asking if we are hiring. - -what_we_keep_track_of: > - Enquiries: they come in, we go and look at the building, we send a - quote, and then we either win it or lose it. Sometimes it is simply - not for us and we say so straight away. - Subcontractors: they apply, we check their company registration, - trade approval and insurance. Often papers are missing and we have to - ask again. Then they are approved or turned down. - Job applications: we read them, invite some to an interview, and hire - or decline. - Things that go wrong on site: a hazard, a near miss, wrong materials - delivered. Someone reports it, the safety officer decides what is - done about it, and closes it when it is fixed. - -who_is_involved: > - Two project managers handle enquiries, subcontractors and hiring. - One safety officer handles everything reported from site. - The crew, ours and the subcontractors' people, are the ones on site - who report things. They are on their phones, with gloves on, and - will not fill in a long form. - -what_slows_us_down: > - Enquiries arrive by phone, email and text and get lost. We never know - which subcontractors have valid papers. Site problems get mentioned - at lunch and forgotten. - - -## Your last attempt was refused - -does not parse as a plan: groups[0]: missing field `label` at line 25 column 5 - -Fix that and return the whole plan again. - -```yaml -business: Nordvik Bygg -language: en -contact: { name: Ingrid Nordvik, email: ingrid@nordvikbygg.example } -about: > - We survey old buildings, draw up rehabilitation plans, handle the - permit application, and do the building work with our own carpenters - plus subcontractors for electrical, plumbing and scaffolding. -mail: { from: "Nordvik Bygg ", reply_to: ingrid@nordvikbygg.example } - -does: - - id: survey-and-build - for: enquiry - text: We survey old buildings, draw up rehabilitation plans, handle the permit, and build. - - id: subcontractor-network - for: subcontractor-application - text: We work with subcontractors for electrical, plumbing and scaffolding. - -doors: - - id: work - who: housing boards and owners with a building problem or a project in mind - - id: join - who: trade firms, carpenters and apprentices who want to work with us - -groups: - - id: project_managers - - id: safety_officer - - id: crew - -needs: - - id: enquiry - who: a housing board or private owner with a problem with a building - wants: someone to look at the building and quote the work - door: work - lands_in: enquiries - handled_by: project_managers - stages: [open, surveyed, quoted, won, lost] - done_when: [won, lost] - success: [won] - turned_down_from: [open, surveyed] - mails: { open: submitter, won: submitter, lost: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - - id: subcontractor-application - who: a trade firm that wants to be on the subcontractor list - wants: to be approved as a subcontractor for electrical, plumbing or scaffolding work - door: join - lands_in: subcontractor_applications - handled_by: project_managers - stages: [open, checking_papers, approved, turned_down] - done_when: [approved, turned_down] - success: [approved] - skippable: [checking_papers] - turned_down_from: [open, checking_papers] - mails: { open: submitter, approved: submitter, turned_down: submitter } - max_fields: 5 - collects: - - { name: company_name } - - { name: email, type: email } - - { name: trade, type: select, options: [Electrical, Plumbing, Scaffolding] } - - { name: registration_number } - - { name: insurance_details, type: textarea } - - - id: job-application - who: a carpenter or apprentice asking if we are hiring - wants: to be considered for a job and invited to interview - door: join - lands_in: job_applications - handled_by: project_managers - stages: [open, interview, hired, declined] - done_when: [hired, declined] - success: [hired] - skippable: [interview] - turned_down_from: [open, interview] - mails: { open: submitter, interview: submitter, hired: submitter, declined: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: role, type: select, options: [Carpenter, Apprentice] } - - { name: experience, type: textarea, optional: true } - - - id: site-report - who: crew, ours and the subcontractors' people, on site - wants: to report a hazard, near miss or wrong delivery so it gets fixed - enters_as: crew - lands_in: site_reports - handled_by: safety_officer - stages: [open, in_progress, closed] - done_when: [closed] - success: [closed] - mails: { closed: submitter } - max_fields: 3 - collects: - - { name: email, type: email } - - { name: issue_type, type: select, options: [Hazard, Near miss, Wrong materials] } - - { name: description, type: textarea } - -``` - -Reply with the YAML only, no prose, no code fences. \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/02-reply.md b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/02-reply.md deleted file mode 100644 index eca61c8..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/02-reply.md +++ /dev/null @@ -1,103 +0,0 @@ -```yaml -business: Nordvik Bygg -language: en -contact: { name: Ingrid Nordvik, email: ingrid@nordvikbygg.example } -about: > - We survey old buildings, draw up rehabilitation plans, handle the - permit application, and do the building work with our own carpenters - plus subcontractors for electrical, plumbing and scaffolding. -mail: { from: "Nordvik Bygg ", reply_to: ingrid@nordvikbygg.example } - -does: - - id: survey-and-build - for: enquiry - text: We survey old buildings, draw up rehabilitation plans, handle the permit, and build. - - id: subcontractor-network - for: subcontractor-application - text: We work with subcontractors for electrical, plumbing and scaffolding. - -doors: - - id: work - who: housing boards and owners with a building problem or a project in mind - - id: join - who: trade firms, carpenters and apprentices who want to work with us - -groups: - - { id: project_managers, label: Project managers } - - { id: safety_officer, label: Safety officer } - - { id: crew, label: Crew } - -needs: - - id: enquiry - who: a housing board or private owner with a problem with a building - wants: someone to look at the building and quote the work - door: work - lands_in: enquiries - handled_by: project_managers - stages: [open, surveyed, quoted, won, lost] - done_when: [won, lost] - success: [won] - turned_down_from: [open, surveyed] - mails: { open: submitter, won: submitter, lost: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - - id: subcontractor-application - who: a trade firm that wants to be on the subcontractor list - wants: to be approved as a subcontractor for electrical, plumbing or scaffolding work - door: join - lands_in: subcontractor_applications - handled_by: project_managers - stages: [open, checking_papers, approved, turned_down] - done_when: [approved, turned_down] - success: [approved] - skippable: [checking_papers] - turned_down_from: [open, checking_papers] - mails: { open: submitter, approved: submitter, turned_down: submitter } - max_fields: 5 - collects: - - { name: company_name } - - { name: email, type: email } - - { name: trade, type: select, options: [Electrical, Plumbing, Scaffolding] } - - { name: registration_number } - - { name: insurance_details, type: textarea } - - - id: job-application - who: a carpenter or apprentice asking if we are hiring - wants: to be considered for a job and invited to interview - door: join - lands_in: job_applications - handled_by: project_managers - stages: [open, interview, hired, declined] - done_when: [hired, declined] - success: [hired] - skippable: [interview] - turned_down_from: [open, interview] - mails: { open: submitter, interview: submitter, hired: submitter, declined: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: role, type: select, options: [Carpenter, Apprentice] } - - { name: experience, type: textarea, optional: true } - - - id: site-report - who: crew, ours and the subcontractors' people, on site - wants: to report a hazard, near miss or wrong delivery so it gets fixed - enters_as: crew - lands_in: site_reports - handled_by: safety_officer - stages: [open, in_progress, closed] - done_when: [closed] - success: [closed] - mails: { closed: submitter } - max_fields: 3 - collects: - - { name: email, type: email } - - { name: issue_type, type: select, options: [Hazard, Near miss, Wrong materials] } - - { name: description, type: textarea } -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/03-prompt.md b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/03-prompt.md deleted file mode 100644 index 13fa73d..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/03-prompt.md +++ /dev/null @@ -1,280 +0,0 @@ -# plan.yaml - -A plan is a needs spec that also says what each form collects. A -builder turns it into a working site with no further decisions, so -every structural fact about the business has to be in it. - -```yaml -business: -language: en # the intake's language code -contact: { name: , email: } -about: > - What the business does, in its own words. -mail: { from: " ", reply_to: } - # who every mail the site sends comes from; required as soon - # as any need has `mails` - -does: # the front door's first card: what the business does, one - - id: kebab-case # or two features, one role each, no button. Say it for the - for: # role the business exists for and the next one it serves. - text: what it does for them, in the intake's own words - -shows: # things a visitor may look at before asking for anything; - - id: kebab-case # each `resource` is portal's resource block, verbatim - text: one line on what it is - resource: { public: true, source: { kind: url, url: https://... } } - -doors: # a first question before the forms, only when the offers - - id: kebab-case # are more than one page holds (measured: four doors beat - who: who comes through it # ten offers on one page; six offers on one page beat doors) - -groups: # groups with a label the public may see: the committees - - { id: traffic, label: Traffic, invited_by: [board] } # a person can ask to join (optional) -invites_by: [board] # groups whose desk may invite people into every desk - -needs: - - id: kebab-case # ASCII only - who: the kind of person, in plain words, in the intake's language - wants: what they want from the business - door: # the door this public need sits behind; omit to put it on the front door - enters_as: # ONLY for a role inside the business; omit for the public - lands_in: # snake_case, ASCII - handled_by: # the role that must see and move the record - stages: [open, , ..., , ] - # EVERY stage the business said a case goes through, first to - # last, read off their own sentences one verb at a time: "they - # come in, we go and look, we send a quote, we win or lose it" - # is [open, surveyed, quoted, won, lost]. A pipeline is not an - # inbox: "answered" is rarely the real outcome. - done_when: [, ] # every stage that counts as finished, good or bad - success: [] # the finished stages that are a good outcome for the business - skippable: [] # stages a case may pass over (papers already complete) - turned_down_from: [open, ] - # the unfinished stages a case can still be turned down from; - # omit for every one. An applicant is declined before they - # start, not after - after, they depart - moves_by: { : [, ...] } - # only where someone other than handled_by moves a case INTO a - # stage: another group, or `submitter` (the person who sent the - # form; the form must then collect a required `email`) - watched_by: [] # groups that see these cases and move nothing; `public` opens a - # read-only page of the bucket to everyone (contact details hidden) - mails: { open: submitter, : submitter, :
} - # who hears when a case enters a stage: `submitter` (the form - # must then collect a required `email`) or one address. Tell the - # person on arrival and on every decision that is about them. - stages_text: { open: , : } - # each stage in the intake's language, where the ASCII id - # would read wrong to a person: "ikke_lost" is "ikke løst" - events: { open: applied } # ONLY when rebuilding a live site: the event names its - # aggregates.yaml already has, so its records keep replaying - attended_by: > # ONLY for a stage no desk button moves: the automation that does - what moves it, in a sentence - max_fields: 4 # decide this BEFORE writing collects, from what the intake - # says about the person; a budget that equals the form's size - # is counted, not decided, and is reported as such - # how many required fields THIS person will tolerate, from what - # the intake says about them: someone on a phone with gloves - # on gets 3, a first enquiry 4 to 6, a firm's paperwork 5 to 6 - collects: # the form; name is snake_case ASCII, type one of - # text (default), email, tel, textarea, date, select - - { name: name } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - { name: urgency, type: select, options: [This week, This month, No rush] } - - { name: can_do, type: select, multiple: true, options: [Drive, Cook, Carry] } # any number - - { name: committee, type: select, options_from: groups } # the labelled groups above - - { name: address, optional: true, private: true } # never on a public page -``` - -Rules: -- One need per (kind of person, thing they want). Work inside the - business counts: a role recording or posting something is a need - with `enters_as`. The intake's "what slows us down" usually names one. -- Groups are the roles the intake names, as snake_case identifiers. -- The front door opens with `does` (at most two features, one role - each) and `shows`, then holds at most seven offers: doors plus needs - with no door. A door with no need behind it, or a door on a need with - `enters_as`, is refused. A role `does` speaks for must have a move - of its own after sending (`moves_by` with `submitter`) or a public - view, or it is a spectator. -- Every need whose form collects an email should tell the person on - arrival and on the decisions about them (`mails`); the plan then - needs `mail: { from }`. -- Needs that land in the same bucket must have the same stages, - done_when, skippable, moves_by, watched_by and handled_by. -- Every required field is one the business will use to act on the - record. If the intake gives no reason to need it, make it optional or - leave it out. The required fields must not exceed max_fields. -- Only `select` lists `options`, and it must list them. -- Everything a person reads (who, wants, about, select options) is in - the intake's language. Everything a machine reads (ids, buckets, - groups, stages, field names) is plain ASCII: no æ, ø, å. -- Write no personas. - - -# Task - -A business filled in this intake. Write its plan.yaml: every need the intake implies, for the public and for each role inside the business, with the stages read off how the business says things progress, the form each need collects, and how much each person will tolerate. - -## Intake - -# An intake as the owner of a small building contractor would fill it -# in: plain words, no portal vocabulary. These are the fields the -# onboarding site asks for. -business: Nordvik Bygg -contact: { name: Ingrid Nordvik, email: ingrid@nordvikbygg.example } -language: en - -what_we_do: > - We are twelve people. We survey old buildings, draw up rehabilitation - plans, handle the permit application, and do the building work with - our own carpenters plus subcontractors for electrical, plumbing and - scaffolding. - -who_comes_to_us: > - Housing boards and private owners who have a problem with a building - and want someone to look at it. Owners who already know what they - want built and need drawings, a permit and a price. Trade firms who - want to be on our list of subcontractors. Carpenters and apprentices - asking if we are hiring. - -what_we_keep_track_of: > - Enquiries: they come in, we go and look at the building, we send a - quote, and then we either win it or lose it. Sometimes it is simply - not for us and we say so straight away. - Subcontractors: they apply, we check their company registration, - trade approval and insurance. Often papers are missing and we have to - ask again. Then they are approved or turned down. - Job applications: we read them, invite some to an interview, and hire - or decline. - Things that go wrong on site: a hazard, a near miss, wrong materials - delivered. Someone reports it, the safety officer decides what is - done about it, and closes it when it is fixed. - -who_is_involved: > - Two project managers handle enquiries, subcontractors and hiring. - One safety officer handles everything reported from site. - The crew, ours and the subcontractors' people, are the ones on site - who report things. They are on their phones, with gloves on, and - will not fill in a long form. - -what_slows_us_down: > - Enquiries arrive by phone, email and text and get lost. We never know - which subcontractors have valid papers. Site problems get mentioned - at lunch and forgotten. - - -## Your last attempt parsed, with one thing to fix - -- the opener invites a housing board or private owner with a problem with a building in, and after sending they play nothing: give need "enquiry" a move of theirs (moves_by: {: [submitter, ...]}) or a public view (watched_by: [public]) -- the opener invites a trade firm that wants to be on the subcontractor list in, and after sending they play nothing: give need "subcontractor-application" a move of theirs (moves_by: {: [submitter, ...]}) or a public view (watched_by: [public]) - -Give each such need a move the person makes themselves (`moves_by: {: [submitter, ]}`, with a required `email` in its form) or `watched_by: [public]`, and return the whole plan again. - -```yaml -business: Nordvik Bygg -language: en -contact: { name: Ingrid Nordvik, email: ingrid@nordvikbygg.example } -about: > - We survey old buildings, draw up rehabilitation plans, handle the - permit application, and do the building work with our own carpenters - plus subcontractors for electrical, plumbing and scaffolding. -mail: { from: "Nordvik Bygg ", reply_to: ingrid@nordvikbygg.example } - -does: - - id: survey-and-build - for: enquiry - text: We survey old buildings, draw up rehabilitation plans, handle the permit, and build. - - id: subcontractor-network - for: subcontractor-application - text: We work with subcontractors for electrical, plumbing and scaffolding. - -doors: - - id: work - who: housing boards and owners with a building problem or a project in mind - - id: join - who: trade firms, carpenters and apprentices who want to work with us - -groups: - - { id: project_managers, label: Project managers } - - { id: safety_officer, label: Safety officer } - - { id: crew, label: Crew } - -needs: - - id: enquiry - who: a housing board or private owner with a problem with a building - wants: someone to look at the building and quote the work - door: work - lands_in: enquiries - handled_by: project_managers - stages: [open, surveyed, quoted, won, lost] - done_when: [won, lost] - success: [won] - turned_down_from: [open, surveyed] - mails: { open: submitter, won: submitter, lost: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - - id: subcontractor-application - who: a trade firm that wants to be on the subcontractor list - wants: to be approved as a subcontractor for electrical, plumbing or scaffolding work - door: join - lands_in: subcontractor_applications - handled_by: project_managers - stages: [open, checking_papers, approved, turned_down] - done_when: [approved, turned_down] - success: [approved] - skippable: [checking_papers] - turned_down_from: [open, checking_papers] - mails: { open: submitter, approved: submitter, turned_down: submitter } - max_fields: 5 - collects: - - { name: company_name } - - { name: email, type: email } - - { name: trade, type: select, options: [Electrical, Plumbing, Scaffolding] } - - { name: registration_number } - - { name: insurance_details, type: textarea } - - - id: job-application - who: a carpenter or apprentice asking if we are hiring - wants: to be considered for a job and invited to interview - door: join - lands_in: job_applications - handled_by: project_managers - stages: [open, interview, hired, declined] - done_when: [hired, declined] - success: [hired] - skippable: [interview] - turned_down_from: [open, interview] - mails: { open: submitter, interview: submitter, hired: submitter, declined: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: role, type: select, options: [Carpenter, Apprentice] } - - { name: experience, type: textarea, optional: true } - - - id: site-report - who: crew, ours and the subcontractors' people, on site - wants: to report a hazard, near miss or wrong delivery so it gets fixed - enters_as: crew - lands_in: site_reports - handled_by: safety_officer - stages: [open, in_progress, closed] - done_when: [closed] - success: [closed] - mails: { closed: submitter } - max_fields: 3 - collects: - - { name: email, type: email } - - { name: issue_type, type: select, options: [Hazard, Near miss, Wrong materials] } - - { name: description, type: textarea } - -``` - -Reply with the YAML only, no prose, no code fences. \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/03-reply.md b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/03-reply.md deleted file mode 100644 index 497dfea..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/llm/03-reply.md +++ /dev/null @@ -1,105 +0,0 @@ -```yaml -business: Nordvik Bygg -language: en -contact: { name: Ingrid Nordvik, email: ingrid@nordvikbygg.example } -about: > - We survey old buildings, draw up rehabilitation plans, handle the - permit application, and do the building work with our own carpenters - plus subcontractors for electrical, plumbing and scaffolding. -mail: { from: "Nordvik Bygg ", reply_to: ingrid@nordvikbygg.example } - -does: - - id: survey-and-build - for: enquiry - text: We survey old buildings, draw up rehabilitation plans, handle the permit, and build. - - id: subcontractor-network - for: subcontractor-application - text: We work with subcontractors for electrical, plumbing and scaffolding. - -doors: - - id: work - who: housing boards and owners with a building problem or a project in mind - - id: join - who: trade firms, carpenters and apprentices who want to work with us - -groups: - - { id: project_managers, label: Project managers } - - { id: safety_officer, label: Safety officer } - - { id: crew, label: Crew } - -needs: - - id: enquiry - who: a housing board or private owner with a problem with a building - wants: someone to look at the building and quote the work - door: work - lands_in: enquiries - handled_by: project_managers - stages: [open, surveyed, quoted, won, lost] - done_when: [won, lost] - success: [won] - turned_down_from: [open, surveyed] - moves_by: { lost: [submitter, project_managers] } - mails: { open: submitter, won: submitter, lost: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - - id: subcontractor-application - who: a trade firm that wants to be on the subcontractor list - wants: to be approved as a subcontractor for electrical, plumbing or scaffolding work - door: join - lands_in: subcontractor_applications - handled_by: project_managers - stages: [open, checking_papers, approved, turned_down] - done_when: [approved, turned_down] - success: [approved] - skippable: [checking_papers] - turned_down_from: [open, checking_papers] - moves_by: { turned_down: [submitter, project_managers] } - mails: { open: submitter, approved: submitter, turned_down: submitter } - max_fields: 5 - collects: - - { name: company_name } - - { name: email, type: email } - - { name: trade, type: select, options: [Electrical, Plumbing, Scaffolding] } - - { name: registration_number } - - { name: insurance_details, type: textarea } - - - id: job-application - who: a carpenter or apprentice asking if we are hiring - wants: to be considered for a job and invited to interview - door: join - lands_in: job_applications - handled_by: project_managers - stages: [open, interview, hired, declined] - done_when: [hired, declined] - success: [hired] - skippable: [interview] - turned_down_from: [open, interview] - mails: { open: submitter, interview: submitter, hired: submitter, declined: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: role, type: select, options: [Carpenter, Apprentice] } - - { name: experience, type: textarea, optional: true } - - - id: site-report - who: crew, ours and the subcontractors' people, on site - wants: to report a hazard, near miss or wrong delivery so it gets fixed - enters_as: crew - lands_in: site_reports - handled_by: safety_officer - stages: [open, in_progress, closed] - done_when: [closed] - success: [closed] - mails: { closed: submitter } - max_fields: 3 - collects: - - { name: email, type: email } - - { name: issue_type, type: select, options: [Hazard, Near miss, Wrong materials] } - - { name: description, type: textarea } -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/plan.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/plan.yaml deleted file mode 100644 index b0f20a2..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/plan.yaml +++ /dev/null @@ -1,146 +0,0 @@ -business: Nordvik Bygg -language: en -contact: { name: Ingrid Nordvik, email: ingrid@nordvikbygg.example } -about: > - We survey old buildings, draw up rehabilitation plans, handle the - permit application, and do the building work with our own carpenters - plus subcontractors for electrical, plumbing and scaffolding. -mail: { from: "Nordvik Bygg ", reply_to: ingrid@nordvikbygg.example } - -does: - - id: survey-and-build - for: enquiry - text: We survey old buildings, draw up rehabilitation plans, handle the permit, and build. - - id: subcontractor-network - for: subcontractor-application - text: We work with subcontractors for electrical, plumbing and scaffolding. - -doors: - - id: work - who: housing boards and owners with a building problem or a project in mind - - id: join - who: trade firms, carpenters and apprentices who want to work with us - -groups: - - { id: project_managers, label: Project managers } - - { id: safety_officer, label: Safety officer } - - { id: crew, label: Crew } - -needs: - - id: enquiry - who: a housing board or private owner with a problem with a building - wants: someone to look at the building and quote the work - door: work - lands_in: enquiries - handled_by: project_managers - stages: [open, surveyed, quoted, won, lost] - done_when: [won, lost] - success: [won] - turned_down_from: [open, surveyed] - moves_by: { lost: [submitter, project_managers] } - mails: { open: submitter, won: submitter, lost: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - - id: subcontractor-application - who: a trade firm that wants to be on the subcontractor list - wants: to be approved as a subcontractor for electrical, plumbing or scaffolding work - door: join - lands_in: subcontractor_applications - handled_by: project_managers - stages: [open, checking_papers, approved, turned_down] - done_when: [approved, turned_down] - success: [approved] - skippable: [checking_papers] - turned_down_from: [open, checking_papers] - moves_by: { turned_down: [submitter, project_managers] } - mails: { open: submitter, approved: submitter, turned_down: submitter } - max_fields: 5 - collects: - - { name: company_name } - - { name: email, type: email } - - { name: trade, type: select, options: [Electrical, Plumbing, Scaffolding] } - - { name: registration_number } - - { name: insurance_details, type: textarea } - - - id: job-application - who: a carpenter or apprentice asking if we are hiring - wants: to be considered for a job and invited to interview - door: join - lands_in: job_applications - handled_by: project_managers - stages: [open, interview, hired, declined] - done_when: [hired, declined] - success: [hired] - skippable: [interview] - turned_down_from: [open, interview] - mails: { open: submitter, interview: submitter, hired: submitter, declined: submitter } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: role, type: select, options: [Carpenter, Apprentice] } - - { name: experience, type: textarea, optional: true } - - - id: site-report - who: crew, ours and the subcontractors' people, on site - wants: to report a hazard, near miss or wrong delivery so it gets fixed - enters_as: crew - lands_in: site_reports - handled_by: safety_officer - stages: [open, in_progress, closed] - done_when: [closed] - success: [closed] - mails: { closed: submitter } - max_fields: 3 - collects: - - { name: email, type: email } - - { name: issue_type, type: select, options: [Hazard, Near miss, Wrong materials] } - - { name: description, type: textarea } - -# Held out from every model that writes words. -personas: -- id: housing-board-damp - need: enquiry - text: | - I chair the board of a housing cooperative from the seventies. Two ground-floor flats have damp in the walls and we don't know if it's drainage or the facade. We need someone to tell us. -- id: buyer-before-purchase - need: enquiry - text: | - We are about to buy an old timber house. Before we sign we want a professional to go through it and tell us what is wrong with it. -- id: attic-conversion - need: enquiry - text: | - We want to turn our attic into two bedrooms and a bathroom. We need drawings and someone who handles the application to the municipality. -- id: shop-to-flat - need: enquiry - text: | - I own a former shop on the ground floor and want to make it a flat. I have no idea what is allowed. Can you sort that out and give me a price? -- id: electrician-firm - need: subcontractor-application - text: | - We are a four-person electrical firm, fully certified. We would like to get on your list so you call us when you need electricians. -- id: scaffolder - need: subcontractor-application - text: | - I run a scaffolding company. How do I get to do jobs for you? -- id: carpenter-jobseeker - need: job-application - text: | - I'm a certified carpenter with eight years on rehabilitation jobs. Are you hiring? -- id: apprentice - need: job-application - text: | - I finish vocational school this spring and need an apprenticeship as a bricklayer. -- id: loose-railing - need: site-report - text: | - The railing on the third level of the scaffold on the north side is loose. Nobody got hurt but someone will. -- id: wrong-membrane - need: site-report - text: | - The bathroom membrane delivered today is not the one in the specification. We stopped work on it. diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/aggregates.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/aggregates.yaml deleted file mode 100644 index bd6a116..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/aggregates.yaml +++ /dev/null @@ -1,178 +0,0 @@ -aggregates: -- bucket: enquiries - initial: open - states: - lost: - event: lost - mail: - body: |- - Hello {name}, - - What you sent about someone to look at the building and quote the work is now lost. - - Ingrid Nordvik at ingrid@nordvikbygg.example - subject: 'Nordvik Bygg: Lost' - to: submitter - open: - event: received - mail: - body: |- - Hello {name}, - - We have received what you sent about someone to look at the building and quote the work. - - What you can do next: {site}/decide/enquiry?chain={chain}&email={email} - - Ingrid Nordvik at ingrid@nordvikbygg.example - subject: 'Nordvik Bygg: Open' - to: submitter - quoted: - event: quoted - surveyed: - event: surveyed - won: - event: won - mail: - body: |- - Hello {name}, - - What you sent about someone to look at the building and quote the work is now won. - - Ingrid Nordvik at ingrid@nordvikbygg.example - subject: 'Nordvik Bygg: Won' - to: submitter - transitions: - open: - - surveyed - - lost - quoted: - - won - surveyed: - - quoted - - lost -- bucket: job_applications - initial: open - states: - declined: - event: declined - mail: - body: |- - Hello {name}, - - What you sent about to be considered for a job and invited to interview is now declined. - - Ingrid Nordvik at ingrid@nordvikbygg.example - subject: 'Nordvik Bygg: Declined' - to: submitter - hired: - event: hired - mail: - body: |- - Hello {name}, - - What you sent about to be considered for a job and invited to interview is now hired. - - Ingrid Nordvik at ingrid@nordvikbygg.example - subject: 'Nordvik Bygg: Hired' - to: submitter - interview: - event: interview - mail: - body: |- - Hello {name}, - - What you sent about to be considered for a job and invited to interview is now interview. - - Ingrid Nordvik at ingrid@nordvikbygg.example - subject: 'Nordvik Bygg: Interview' - to: submitter - open: - event: received - mail: - body: |- - Hello {name}, - - We have received what you sent about to be considered for a job and invited to interview. - - Ingrid Nordvik at ingrid@nordvikbygg.example - subject: 'Nordvik Bygg: Open' - to: submitter - transitions: - interview: - - hired - - declined - open: - - interview - - hired - - declined -- bucket: site_reports - initial: open - states: - closed: - event: closed - mail: - body: |- - Hello, - - What you sent about to report a hazard, near miss or wrong delivery so it gets fixed is now closed. - - Ingrid Nordvik at ingrid@nordvikbygg.example - subject: 'Nordvik Bygg: Closed' - to: submitter - in_progress: - event: in_progress - open: - event: received - transitions: - in_progress: - - closed - open: - - in_progress -- bucket: subcontractor_applications - initial: open - states: - approved: - event: approved - mail: - body: |- - Hello, - - What you sent about to be approved as a subcontractor for electrical, plumbing or scaffolding work is now approved. - - Ingrid Nordvik at ingrid@nordvikbygg.example - subject: 'Nordvik Bygg: Approved' - to: submitter - checking_papers: - event: checking_papers - open: - event: received - mail: - body: |- - Hello, - - We have received what you sent about to be approved as a subcontractor for electrical, plumbing or scaffolding work. - - What you can do next: {site}/decide/subcontractor-application?chain={chain}&email={email} - - Ingrid Nordvik at ingrid@nordvikbygg.example - subject: 'Nordvik Bygg: Open' - to: submitter - turned_down: - event: turned_down - mail: - body: |- - Hello, - - What you sent about to be approved as a subcontractor for electrical, plumbing or scaffolding work is now turned down. - - Ingrid Nordvik at ingrid@nordvikbygg.example - subject: 'Nordvik Bygg: Turned down' - to: submitter - transitions: - checking_papers: - - approved - - turned_down - open: - - checking_papers - - approved - - turned_down diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/needs.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/needs.yaml deleted file mode 100644 index 16d331d..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/needs.yaml +++ /dev/null @@ -1,138 +0,0 @@ -needs: -- done_when: - - won - - lost - enters: / - handled_by: project_managers - id: enquiry - lands_in: enquiries - max_fields: 4 - max_steps: 2 - stage_words: - lost: lost - open: open - quoted: quoted - surveyed: surveyed - won: won - stages: - - open - - surveyed - - quoted - - won - - lost - success: - - won - via: Work - wants: someone to look at the building and quote the work - who: a housing board or private owner with a problem with a building -- done_when: - - approved - - turned_down - enters: / - handled_by: project_managers - id: subcontractor-application - lands_in: subcontractor_applications - max_fields: 5 - max_steps: 2 - stage_words: - approved: approved - checking_papers: checking papers - open: open - turned_down: turned down - stages: - - open - - checking_papers - - approved - - turned_down - success: - - approved - via: Join - wants: to be approved as a subcontractor for electrical, plumbing or scaffolding work - who: a trade firm that wants to be on the subcontractor list -- done_when: - - hired - - declined - enters: / - handled_by: project_managers - id: job-application - lands_in: job_applications - max_fields: 4 - max_steps: 2 - stage_words: - declined: declined - hired: hired - interview: interview - open: open - stages: - - open - - interview - - hired - - declined - success: - - hired - via: Join - wants: to be considered for a job and invited to interview - who: a carpenter or apprentice asking if we are hiring -- done_when: - - closed - enters: /crew/site-report - enters_as: crew - handled_by: safety_officer - id: site-report - lands_in: site_reports - max_fields: 3 - max_steps: 1 - stage_words: - closed: closed - in_progress: in progress - open: open - stages: - - open - - in_progress - - closed - success: - - closed - via: to report a hazard, near miss or wrong delivery so it gets fixed - wants: to report a hazard, near miss or wrong delivery so it gets fixed - who: crew, ours and the subcontractors' people, on site -personas: -- id: housing-board-damp - need: enquiry - text: | - I chair the board of a housing cooperative from the seventies. Two ground-floor flats have damp in the walls and we don't know if it's drainage or the facade. We need someone to tell us. -- id: buyer-before-purchase - need: enquiry - text: | - We are about to buy an old timber house. Before we sign we want a professional to go through it and tell us what is wrong with it. -- id: attic-conversion - need: enquiry - text: | - We want to turn our attic into two bedrooms and a bathroom. We need drawings and someone who handles the application to the municipality. -- id: shop-to-flat - need: enquiry - text: | - I own a former shop on the ground floor and want to make it a flat. I have no idea what is allowed. Can you sort that out and give me a price? -- id: electrician-firm - need: subcontractor-application - text: | - We are a four-person electrical firm, fully certified. We would like to get on your list so you call us when you need electricians. -- id: scaffolder - need: subcontractor-application - text: | - I run a scaffolding company. How do I get to do jobs for you? -- id: carpenter-jobseeker - need: job-application - text: | - I'm a certified carpenter with eight years on rehabilitation jobs. Are you hiring? -- id: apprentice - need: job-application - text: | - I finish vocational school this spring and need an apprenticeship as a bricklayer. -- id: loose-railing - need: site-report - text: | - The railing on the third level of the scaffold on the north side is loose. Nobody got hurt but someone will. -- id: wrong-membrane - need: site-report - text: | - The bathroom membrane delivered today is not the one in the specification. We stopped work on it. diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/crew/_section.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/crew/_section.yaml deleted file mode 100644 index 1f962a5..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/crew/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: crew diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/crew/index.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/crew/index.yaml deleted file mode 100644 index c072443..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/crew/index.yaml +++ /dev/null @@ -1,44 +0,0 @@ -alternatives: -- action: /crew/site-report - consequence: - - Open - description: '' - name: to report a hazard, near miss or wrong delivery so it gets fixed -- action: /crew - consequence: - - Invite - description: They get an account, a place in Crew, and a one-time link to set their own password or passkey. - features: - - description: '' - name: Who - requirements: - - label: Name - name: name - - label: Email - name: email - type: email - invite: - group: crew - name: Invite someone into Crew -- action: /crew - consequence: - - Confirm - description: Each invite with the link it made. Mark it done when the person is in. - features: - - description: '' - name: '' - resource: - requires_group: crew - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Is in - to: done - name: Invitations sent -description: '' -name: What needs doing? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/crew/site-report-sent.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/crew/site-report-sent.yaml deleted file mode 100644 index a231556..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/crew/site-report-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Questions in the meantime go to Ingrid Nordvik at ingrid@nordvikbygg.example. - name: We read it and come back to you -- action: /crew - consequence: - - Back - description: '' - name: Back -description: It has reached our safety officer. -name: What happens now? diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/crew/site-report.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/crew/site-report.yaml deleted file mode 100644 index b8e1b82..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/crew/site-report.yaml +++ /dev/null @@ -1,35 +0,0 @@ -alternatives: -- action: /crew/site-report-sent - consequence: - - Send - description: For crew, ours and the subcontractors' people, on site. - features: - - description: It is open, then in progress, and ends closed. - icon: lucide:route - name: What happens next - - description: Safety officer. Questions go to Ingrid Nordvik at ingrid@nordvikbygg.example. - icon: lucide:users - name: Who reads it - - name: Details - requirements: - - label: Email - name: email - type: email - - label: Issue type - name: issue_type - options: - - Hazard - - Near miss - - Wrong materials - type: select - - label: Description - name: description - type: textarea - name: to report a hazard, near miss or wrong delivery so it gets fixed - record_as: site_reports -description: '' -followup: false -name: Site report? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/decide/enquiry.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/decide/enquiry.yaml deleted file mode 100644 index a22c40e..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/decide/enquiry.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: '' - name: Lost - self_transition: - bucket: enquiries - label: Lost - to: lost -description: '' -name: What would you like to do? diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/decide/subcontractor-application.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/decide/subcontractor-application.yaml deleted file mode 100644 index 324ee72..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/decide/subcontractor-application.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: '' - name: Turned down - self_transition: - bucket: subcontractor_applications - label: Turned down - to: turned_down -description: '' -name: What would you like to do? diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/index.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/index.yaml deleted file mode 100644 index 0334df7..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/index.yaml +++ /dev/null @@ -1,24 +0,0 @@ -alternatives: -- description: '' - features: - - description: We work with subcontractors for electrical, plumbing and scaffolding. - name: To be approved as a subcontractor for electrical, plumbing or scaffolding work - - description: We survey old buildings, draw up rehabilitation plans, handle the permit, and build. - name: Someone to look at the building and quote the work - name: What we do -- action: /work - consequence: - - Continue - description: For housing boards and owners with a building problem or a project in mind. - name: Work -- action: /join - consequence: - - Continue - description: For trade firms, carpenters and apprentices who want to work with us. - name: Join -description: | - We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -name: What brings you here? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/join/index.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/join/index.yaml deleted file mode 100644 index 804b8db..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/join/index.yaml +++ /dev/null @@ -1,71 +0,0 @@ -alternatives: -- action: /received/subcontractor-application - consequence: - - Send - description: For a trade firm that wants to be on the subcontractor list. - features: - - description: It is open, then checking papers, and ends approved or turned down. - icon: lucide:route - name: What happens next - - description: Project managers. Questions go to Ingrid Nordvik at ingrid@nordvikbygg.example. - icon: lucide:users - name: Who reads it - - name: Details - requirements: - - label: Company name - name: company_name - type: text - - label: Email - name: email - type: email - - label: Trade - name: trade - options: - - Electrical - - Plumbing - - Scaffolding - type: select - - label: Registration number - name: registration_number - type: text - - label: Insurance details - name: insurance_details - type: textarea - name: to be approved as a subcontractor for electrical, plumbing or scaffolding work - record_as: subcontractor_applications -- action: /received/job-application - consequence: - - Send - description: For a carpenter or apprentice asking if we are hiring. - features: - - description: It is open, then interview, and ends hired or declined. - icon: lucide:route - name: What happens next - - description: Project managers. Questions go to Ingrid Nordvik at ingrid@nordvikbygg.example. - icon: lucide:users - name: Who reads it - - name: Details - requirements: - - label: Name - name: name - type: text - - label: Email - name: email - type: email - - label: Role - name: role - options: - - Carpenter - - Apprentice - type: select - - label: Experience - name: experience - optional: true - type: textarea - name: to be considered for a job and invited to interview - record_as: job_applications -description: For trade firms, carpenters and apprentices who want to work with us. -name: What do you need? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/project_managers/_section.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/project_managers/_section.yaml deleted file mode 100644 index d8acdff..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/project_managers/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: project_managers diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/project_managers/index.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/project_managers/index.yaml deleted file mode 100644 index 11680d8..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/project_managers/index.yaml +++ /dev/null @@ -1,126 +0,0 @@ -alternatives: -- action: /project_managers - consequence: - - Confirm - description: '' - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: enquiries - kind: kv - transitions: - - from: open - label: Surveyed - to: surveyed - - from: open - label: Lost - to: lost - - from: quoted - label: Won - to: won - - from: surveyed - label: Quoted - to: quoted - - from: surveyed - label: Lost - to: lost - name: Enquiries -- action: /project_managers - consequence: - - Confirm - description: '' - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: job_applications - kind: kv - transitions: - - from: interview - label: Hired - to: hired - - from: interview - label: Declined - to: declined - - from: open - label: Interview - to: interview - - from: open - label: Hired - to: hired - - from: open - label: Declined - to: declined - name: Job applications -- action: /project_managers - consequence: - - Confirm - description: '' - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: subcontractor_applications - kind: kv - transitions: - - from: checking_papers - label: Approved - to: approved - - from: checking_papers - label: Turned down - to: turned_down - - from: open - label: Checking papers - to: checking_papers - - from: open - label: Approved - to: approved - - from: open - label: Turned down - to: turned_down - name: Subcontractor applications -- action: /project_managers - consequence: - - Invite - description: They get an account, a place in Project managers, and a one-time link to set their own password or passkey. - features: - - description: '' - name: Who - requirements: - - label: Name - name: name - - label: Email - name: email - type: email - invite: - group: project_managers - name: Invite someone into Project managers -- action: /project_managers - consequence: - - Confirm - description: Each invite with the link it made. Mark it done when the person is in. - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Is in - to: done - name: Invitations sent -description: '' -name: What needs doing? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/received/enquiry.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/received/enquiry.yaml deleted file mode 100644 index 6dab0f4..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/received/enquiry.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Questions in the meantime go to Ingrid Nordvik at ingrid@nordvikbygg.example. - name: We read it and come back to you -- action: / - consequence: - - Back - description: '' - name: Back -description: It has reached our project managers. -name: What happens now? diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/received/job-application.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/received/job-application.yaml deleted file mode 100644 index 6dab0f4..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/received/job-application.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Questions in the meantime go to Ingrid Nordvik at ingrid@nordvikbygg.example. - name: We read it and come back to you -- action: / - consequence: - - Back - description: '' - name: Back -description: It has reached our project managers. -name: What happens now? diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/received/subcontractor-application.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/received/subcontractor-application.yaml deleted file mode 100644 index 6dab0f4..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/received/subcontractor-application.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Questions in the meantime go to Ingrid Nordvik at ingrid@nordvikbygg.example. - name: We read it and come back to you -- action: / - consequence: - - Back - description: '' - name: Back -description: It has reached our project managers. -name: What happens now? diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/safety_officer/_section.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/safety_officer/_section.yaml deleted file mode 100644 index d7ea7a1..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/safety_officer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: safety_officer diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/safety_officer/index.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/safety_officer/index.yaml deleted file mode 100644 index 7063c9c..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/safety_officer/index.yaml +++ /dev/null @@ -1,59 +0,0 @@ -alternatives: -- action: /safety_officer - consequence: - - Confirm - description: '' - features: - - description: '' - name: '' - resource: - requires_group: safety_officer - source: - bucket: site_reports - kind: kv - transitions: - - from: in_progress - label: Closed - to: closed - - from: open - label: In progress - to: in_progress - name: Site reports -- action: /safety_officer - consequence: - - Invite - description: They get an account, a place in Safety officer, and a one-time link to set their own password or passkey. - features: - - description: '' - name: Who - requirements: - - label: Name - name: name - - label: Email - name: email - type: email - invite: - group: safety_officer - name: Invite someone into Safety officer -- action: /safety_officer - consequence: - - Confirm - description: Each invite with the link it made. Mark it done when the person is in. - features: - - description: '' - name: '' - resource: - requires_group: safety_officer - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Is in - to: done - name: Invitations sent -description: '' -name: What needs doing? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/work/index.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/work/index.yaml deleted file mode 100644 index 24d6498..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/questions/work/index.yaml +++ /dev/null @@ -1,33 +0,0 @@ -alternatives: -- action: /received/enquiry - consequence: - - Send - description: For a housing board or private owner with a problem with a building. - features: - - description: It is open, then surveyed, then quoted, and ends won or lost. - icon: lucide:route - name: What happens next - - description: Project managers. Questions go to Ingrid Nordvik at ingrid@nordvikbygg.example. - icon: lucide:users - name: Who reads it - - name: Details - requirements: - - label: Name - name: name - type: text - - label: Email - name: email - type: email - - label: Phone - name: phone - type: tel - - label: Problem - name: problem - type: textarea - name: someone to look at the building and quote the work - record_as: enquiries -description: For housing boards and owners with a building problem or a project in mind. -name: What do you need? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/site.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/site.yaml deleted file mode 100644 index d632a3a..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/site.yaml +++ /dev/null @@ -1,5 +0,0 @@ -lang: en -mail: - from: Nordvik Bygg - reply_to: ingrid@nordvikbygg.example -title: Nordvik Bygg diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/words.json b/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/words.json deleted file mode 100644 index 61a66b6..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/r3/site/words.json +++ /dev/null @@ -1,391 +0,0 @@ -{ - "aggregates.yaml": { - "enquiries": { - "lost": { - "body": "Hello {name},\n\nWhat you sent about someone to look at the building and quote the work is now lost.\n\nIngrid Nordvik at ingrid@nordvikbygg.example", - "subject": "Nordvik Bygg: Lost" - }, - "open": { - "body": "Hello {name},\n\nWe have received what you sent about someone to look at the building and quote the work.\n\nWhat you can do next: {site}/decide/enquiry?chain={chain}&email={email}\n\nIngrid Nordvik at ingrid@nordvikbygg.example", - "subject": "Nordvik Bygg: Open" - }, - "won": { - "body": "Hello {name},\n\nWhat you sent about someone to look at the building and quote the work is now won.\n\nIngrid Nordvik at ingrid@nordvikbygg.example", - "subject": "Nordvik Bygg: Won" - } - }, - "job_applications": { - "declined": { - "body": "Hello {name},\n\nWhat you sent about to be considered for a job and invited to interview is now declined.\n\nIngrid Nordvik at ingrid@nordvikbygg.example", - "subject": "Nordvik Bygg: Declined" - }, - "hired": { - "body": "Hello {name},\n\nWhat you sent about to be considered for a job and invited to interview is now hired.\n\nIngrid Nordvik at ingrid@nordvikbygg.example", - "subject": "Nordvik Bygg: Hired" - }, - "interview": { - "body": "Hello {name},\n\nWhat you sent about to be considered for a job and invited to interview is now interview.\n\nIngrid Nordvik at ingrid@nordvikbygg.example", - "subject": "Nordvik Bygg: Interview" - }, - "open": { - "body": "Hello {name},\n\nWe have received what you sent about to be considered for a job and invited to interview.\n\nIngrid Nordvik at ingrid@nordvikbygg.example", - "subject": "Nordvik Bygg: Open" - } - }, - "site_reports": { - "closed": { - "body": "Hello,\n\nWhat you sent about to report a hazard, near miss or wrong delivery so it gets fixed is now closed.\n\nIngrid Nordvik at ingrid@nordvikbygg.example", - "subject": "Nordvik Bygg: Closed" - } - }, - "subcontractor_applications": { - "approved": { - "body": "Hello,\n\nWhat you sent about to be approved as a subcontractor for electrical, plumbing or scaffolding work is now approved.\n\nIngrid Nordvik at ingrid@nordvikbygg.example", - "subject": "Nordvik Bygg: Approved" - }, - "open": { - "body": "Hello,\n\nWe have received what you sent about to be approved as a subcontractor for electrical, plumbing or scaffolding work.\n\nWhat you can do next: {site}/decide/subcontractor-application?chain={chain}&email={email}\n\nIngrid Nordvik at ingrid@nordvikbygg.example", - "subject": "Nordvik Bygg: Open" - }, - "turned_down": { - "body": "Hello,\n\nWhat you sent about to be approved as a subcontractor for electrical, plumbing or scaffolding work is now turned down.\n\nIngrid Nordvik at ingrid@nordvikbygg.example", - "subject": "Nordvik Bygg: Turned down" - } - } - }, - "questions/crew/index.yaml": { - "buckets": {}, - "confirm": "Confirm", - "description": "", - "invited": { - "description": "Each invite with the link it made. Mark it done when the person is in.", - "done": "Is in", - "heading": "Invitations sent" - }, - "invites": { - "crew": { - "button": "Invite", - "description": "They get an account, a place in Crew, and a one-time link to set their own password or passkey.", - "form_title": "Who", - "heading": "Invite someone into Crew", - "labels": { - "email": "Email", - "name": "Name" - } - } - }, - "links": { - "site-report": { - "button": "Open", - "description": "", - "heading": "to report a hazard, near miss or wrong delivery so it gets fixed" - } - }, - "question": "What needs doing?" - }, - "questions/crew/site-report-sent.yaml": { - "back": "Back", - "description": "It has reached our safety officer.", - "next_description": "Questions in the meantime go to Ingrid Nordvik at ingrid@nordvikbygg.example.", - "next_heading": "We read it and come back to you", - "question": "What happens now?" - }, - "questions/crew/site-report.yaml": { - "button": "Send", - "description": "For crew, ours and the subcontractors' people, on site.", - "encouragement": "", - "form_description": "", - "form_title": "Details", - "heading": "to report a hazard, near miss or wrong delivery so it gets fixed", - "hints": { - "description": "", - "email": "", - "issue_type": "" - }, - "icon": "", - "labels": { - "description": "Description", - "email": "Email", - "issue_type": "Issue type" - }, - "page_description": "", - "question": "Site report?", - "road_description": "It is open, then in progress, and ends closed.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "Safety officer. Questions go to Ingrid Nordvik at ingrid@nordvikbygg.example.", - "who_icon": "users", - "who_title": "Who reads it" - }, - "questions/decide/enquiry.yaml": { - "description": "", - "moves": { - "lost": { - "button": "Lost", - "description": "", - "heading": "Lost" - } - }, - "question": "What would you like to do?" - }, - "questions/decide/subcontractor-application.yaml": { - "description": "", - "moves": { - "turned_down": { - "button": "Turned down", - "description": "", - "heading": "Turned down" - } - }, - "question": "What would you like to do?" - }, - "questions/index.yaml": { - "description": "We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding.\n", - "doors": { - "join": { - "button": "Continue", - "description": "For trade firms, carpenters and apprentices who want to work with us.", - "for_whom": "", - "heading": "Join", - "icon": "" - }, - "work": { - "button": "Continue", - "description": "For housing boards and owners with a building problem or a project in mind.", - "for_whom": "", - "heading": "Work", - "icon": "" - } - }, - "needs": {}, - "opener": { - "description": "", - "features": { - "subcontractor-network": { - "description": "We work with subcontractors for electrical, plumbing and scaffolding.", - "heading": "To be approved as a subcontractor for electrical, plumbing or scaffolding work", - "icon": "" - }, - "survey-and-build": { - "description": "We survey old buildings, draw up rehabilitation plans, handle the permit, and build.", - "heading": "Someone to look at the building and quote the work", - "icon": "" - } - }, - "heading": "What we do" - }, - "question": "What brings you here?", - "shopping": { - "description": "", - "heading": "Have a look around", - "items": {} - } - }, - "questions/join/index.yaml": { - "description": "For trade firms, carpenters and apprentices who want to work with us.", - "needs": { - "job-application": { - "button": "Send", - "description": "For a carpenter or apprentice asking if we are hiring.", - "encouragement": "", - "form_description": "", - "form_title": "Details", - "heading": "to be considered for a job and invited to interview", - "hints": { - "email": "", - "experience": "", - "name": "", - "role": "" - }, - "icon": "", - "labels": { - "email": "Email", - "experience": "Experience", - "name": "Name", - "role": "Role" - }, - "road_description": "It is open, then interview, and ends hired or declined.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "Project managers. Questions go to Ingrid Nordvik at ingrid@nordvikbygg.example.", - "who_icon": "users", - "who_title": "Who reads it" - }, - "subcontractor-application": { - "button": "Send", - "description": "For a trade firm that wants to be on the subcontractor list.", - "encouragement": "", - "form_description": "", - "form_title": "Details", - "heading": "to be approved as a subcontractor for electrical, plumbing or scaffolding work", - "hints": { - "company_name": "", - "email": "", - "insurance_details": "", - "registration_number": "", - "trade": "" - }, - "icon": "", - "labels": { - "company_name": "Company name", - "email": "Email", - "insurance_details": "Insurance details", - "registration_number": "Registration number", - "trade": "Trade" - }, - "road_description": "It is open, then checking papers, and ends approved or turned down.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "Project managers. Questions go to Ingrid Nordvik at ingrid@nordvikbygg.example.", - "who_icon": "users", - "who_title": "Who reads it" - } - }, - "question": "What do you need?" - }, - "questions/project_managers/index.yaml": { - "buckets": { - "enquiries": { - "description": "", - "heading": "Enquiries", - "moves": { - "open->lost": "Lost", - "open->surveyed": "Surveyed", - "quoted->won": "Won", - "surveyed->lost": "Lost", - "surveyed->quoted": "Quoted" - } - }, - "job_applications": { - "description": "", - "heading": "Job applications", - "moves": { - "interview->declined": "Declined", - "interview->hired": "Hired", - "open->declined": "Declined", - "open->hired": "Hired", - "open->interview": "Interview" - } - }, - "subcontractor_applications": { - "description": "", - "heading": "Subcontractor applications", - "moves": { - "checking_papers->approved": "Approved", - "checking_papers->turned_down": "Turned down", - "open->approved": "Approved", - "open->checking_papers": "Checking papers", - "open->turned_down": "Turned down" - } - } - }, - "confirm": "Confirm", - "description": "", - "invited": { - "description": "Each invite with the link it made. Mark it done when the person is in.", - "done": "Is in", - "heading": "Invitations sent" - }, - "invites": { - "project_managers": { - "button": "Invite", - "description": "They get an account, a place in Project managers, and a one-time link to set their own password or passkey.", - "form_title": "Who", - "heading": "Invite someone into Project managers", - "labels": { - "email": "Email", - "name": "Name" - } - } - }, - "links": {}, - "question": "What needs doing?" - }, - "questions/received/enquiry.yaml": { - "back": "Back", - "description": "It has reached our project managers.", - "next_description": "Questions in the meantime go to Ingrid Nordvik at ingrid@nordvikbygg.example.", - "next_heading": "We read it and come back to you", - "question": "What happens now?" - }, - "questions/received/job-application.yaml": { - "back": "Back", - "description": "It has reached our project managers.", - "next_description": "Questions in the meantime go to Ingrid Nordvik at ingrid@nordvikbygg.example.", - "next_heading": "We read it and come back to you", - "question": "What happens now?" - }, - "questions/received/subcontractor-application.yaml": { - "back": "Back", - "description": "It has reached our project managers.", - "next_description": "Questions in the meantime go to Ingrid Nordvik at ingrid@nordvikbygg.example.", - "next_heading": "We read it and come back to you", - "question": "What happens now?" - }, - "questions/safety_officer/index.yaml": { - "buckets": { - "site_reports": { - "description": "", - "heading": "Site reports", - "moves": { - "in_progress->closed": "Closed", - "open->in_progress": "In progress" - } - } - }, - "confirm": "Confirm", - "description": "", - "invited": { - "description": "Each invite with the link it made. Mark it done when the person is in.", - "done": "Is in", - "heading": "Invitations sent" - }, - "invites": { - "safety_officer": { - "button": "Invite", - "description": "They get an account, a place in Safety officer, and a one-time link to set their own password or passkey.", - "form_title": "Who", - "heading": "Invite someone into Safety officer", - "labels": { - "email": "Email", - "name": "Name" - } - } - }, - "links": {}, - "question": "What needs doing?" - }, - "questions/work/index.yaml": { - "description": "For housing boards and owners with a building problem or a project in mind.", - "needs": { - "enquiry": { - "button": "Send", - "description": "For a housing board or private owner with a problem with a building.", - "encouragement": "", - "form_description": "", - "form_title": "Details", - "heading": "someone to look at the building and quote the work", - "hints": { - "email": "", - "name": "", - "phone": "", - "problem": "" - }, - "icon": "", - "labels": { - "email": "Email", - "name": "Name", - "phone": "Phone", - "problem": "Problem" - }, - "road_description": "It is open, then surveyed, then quoted, and ends won or lost.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "Project managers. Questions go to Ingrid Nordvik at ingrid@nordvikbygg.example.", - "who_icon": "users", - "who_title": "Who reads it" - } - }, - "question": "What do you need?" - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/rated/rate.json b/vendor/trainer/runs/contractor-planned-2026-09-24/rated/rate.json deleted file mode 100644 index 6977b9e..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/rated/rate.json +++ /dev/null @@ -1,189 +0,0 @@ -{ - "building-problem": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 24.016666666666666, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "job-application": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 21.757246376811594, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "known-project": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 19.21666666666667, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "mail applications:declined": { - "lix": 25.134615384615387, - "words": 39 - }, - "mail applications:hired": { - "lix": 24.166666666666668, - "words": 31 - }, - "mail applications:interview": { - "lix": 17.42741935483871, - "words": 32 - }, - "mail applications:open": { - "lix": 27.897435897435898, - "words": 26 - }, - "mail enquiries:declined": { - "lix": 12.904761904761905, - "words": 29 - }, - "mail enquiries:lost": { - "lix": 24.05128205128205, - "words": 27 - }, - "mail enquiries:open": { - "lix": 30.76190476190476, - "words": 28 - }, - "mail enquiries:quoted": { - "lix": 23.814814814814817, - "words": 29 - }, - "mail enquiries:won": { - "lix": 20.5, - "words": 25 - }, - "mail subcontractors:approved": { - "lix": 20.71014492753623, - "words": 23 - }, - "mail subcontractors:open": { - "lix": 25.057971014492754, - "words": 23 - }, - "mail subcontractors:papers_requested": { - "lix": 16.563218390804597, - "words": 31 - }, - "mail subcontractors:rejected": { - "lix": 27.897435897435898, - "words": 27 - }, - "site-report": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 20.01918976545842, - "options": 1, - "overloaded": false, - "page": "/crew/site-report", - "personas": 2, - "required_fields": 2, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "subcontractor-application": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 22.445121951219512, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 5, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/aggregates.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/site/aggregates.yaml deleted file mode 100644 index 36e64e0..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/aggregates.yaml +++ /dev/null @@ -1,137 +0,0 @@ -aggregates: -- bucket: applications - initial: open - states: - declined: - event: declined - mail: - body: Thanks for taking the time to apply. We've decided to go with other candidates this time, but we'll hang on to your details in case something suits down the line. Good luck out there. - subject: Your application with Nordvik Bygg - to: submitter - hired: - event: hired - mail: - body: Good news - we'd like to bring you on board. Ingrid will be in touch shortly to sort out start date and paperwork. Welcome to the crew. - subject: Welcome to Nordvik Bygg - to: submitter - interview: - event: interview - mail: - body: We'd like to meet you. Someone from our team will call you soon to find a time. Have a couple of past jobs ready to talk through. - subject: Let's talk - Nordvik Bygg - to: submitter - open: - event: received - mail: - body: Thanks for reaching out about work with us. We're looking through applications now and will get back to you soon either way. - subject: We've got your application - to: submitter - transitions: - interview: - - hired - - declined - open: - - interview - - hired - - declined -- bucket: enquiries - initial: open - states: - declined: - event: declined - mail: - body: We won't be able to take this one on. Sorry we can't help this time - feel free to come back to us if things change. - subject: About your enquiry - to: submitter - lost: - event: lost - mail: - body: You've gone with someone else for this job - no hard feelings. If anything else comes up on the building, give us a shout. - subject: About your quote - to: submitter - open: - event: received - mail: - body: We've received your enquiry and will be in touch to arrange a look at the building. No need to do anything else for now. - subject: We've got your enquiry - to: submitter - quoted: - event: quoted - mail: - body: Your quote is ready - see the details at {site}. Let us know if you'd like to go ahead or if anything needs explaining. - subject: Your quote from Nordvik Bygg - to: submitter - surveyed: - event: surveyed - won: - event: won - mail: - body: Great - you're in. We'll be in touch to plan dates and next steps for getting the work started. - subject: You're booked in with Nordvik Bygg - to: submitter - transitions: - open: - - surveyed - - quoted - - won - - lost - - declined - quoted: - - won - - lost - - declined - surveyed: - - quoted - - won - - lost - - declined -- bucket: site_reports - initial: open - states: - closed: - event: closed - open: - event: received - transitions: - open: - - closed -- bucket: subcontractors - initial: open - states: - approved: - event: approved - mail: - body: You're approved and now on our subcontractor list. We'll reach out when work comes up that suits you. - subject: You're on our subcontractor list - to: submitter - checking: - event: checking - open: - event: received - mail: - body: Thanks for applying to work with us. We're going through your details and will come back to you soon. - subject: We've got your application - to: submitter - papers_requested: - event: papers_requested - mail: - body: Before we can approve you, we need a few papers from you - see what's needed at {site}. Send them across when you can. - subject: We need a few documents from you - to: submitter - rejected: - event: rejected - mail: - body: We won't be adding you to our subcontractor list at this time. Thanks for your interest - you're welcome to apply again later. - subject: About your subcontractor application - to: submitter - transitions: - checking: - - papers_requested - - approved - - rejected - open: - - checking - - rejected - papers_requested: - - approved - - rejected diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/01-aggregates.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/01-aggregates.yaml.md deleted file mode 100644 index b6ec0c5..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/01-aggregates.yaml.md +++ /dev/null @@ -1,152 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: A housing board or private owner with a problem with a building - wants: Someone to come and look at it, and tell them what it would cost to fix. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost -> declined. -- known-project: An owner who already knows what they want built - wants: Drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost -> declined. -- subcontractor-application: A trade firm that wants to be on our list of subcontractors - wants: To be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> rejected. -- job-application: A carpenter or apprentice asking if we are hiring - wants: To apply for a job with us. Handled by project_managers. Stages: open -> interview -> hired -> declined. -- site-report: Crew on site, ours or a subcontractor's - wants: To report a hazard, near miss or wrong materials before it is forgotten. Handled by safety_officer. Stages: open -> closed. - -The page: aggregates.yaml -It is the mails the site sends. Under each bucket, each stage that sends one has a `subject` and a `body`: the mail a person gets the moment their case enters that stage, saying what happened and what, if anything, they can do now. Plain text, short, in the business's voice. Keep every `{...}` placeholder exactly as it is - `{site}`, `{chain}`, `{email}` and any field name are filled in by the site - and keep any line with a link in it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "applications": { - "declined": { - "body": "", - "subject": "" - }, - "hired": { - "body": "", - "subject": "" - }, - "interview": { - "body": "", - "subject": "" - }, - "open": { - "body": "", - "subject": "" - } - }, - "enquiries": { - "declined": { - "body": "", - "subject": "" - }, - "lost": { - "body": "", - "subject": "" - }, - "open": { - "body": "", - "subject": "" - }, - "quoted": { - "body": "", - "subject": "" - }, - "won": { - "body": "", - "subject": "" - } - }, - "subcontractors": { - "approved": { - "body": "", - "subject": "" - }, - "open": { - "body": "", - "subject": "" - }, - "papers_requested": { - "body": "", - "subject": "" - }, - "rejected": { - "body": "", - "subject": "" - } - } -} - -Reply with the JSON object only. - -=== REPLY === -{ - "applications": { - "declined": { - "body": "Thanks for taking the time to apply. We've decided to go with other candidates this time, but we'll hang on to your details in case something suits down the line. Good luck out there.", - "subject": "Your application with Nordvik Bygg" - }, - "hired": { - "body": "Good news - we'd like to bring you on board. Ingrid will be in touch shortly to sort out start date and paperwork. Welcome to the crew.", - "subject": "Welcome to Nordvik Bygg" - }, - "interview": { - "body": "We'd like to meet you. Someone from our team will call you soon to find a time. Have a couple of past jobs ready to talk through.", - "subject": "Let's talk - Nordvik Bygg" - }, - "open": { - "body": "Thanks for reaching out about work with us. We're looking through applications now and will get back to you soon either way.", - "subject": "We've got your application" - } - }, - "enquiries": { - "declined": { - "body": "We won't be able to take this one on. Sorry we can't help this time - feel free to come back to us if things change.", - "subject": "About your enquiry" - }, - "lost": { - "body": "You've gone with someone else for this job - no hard feelings. If anything else comes up on the building, give us a shout.", - "subject": "About your quote" - }, - "open": { - "body": "We've received your enquiry and will be in touch to arrange a look at the building. No need to do anything else for now.", - "subject": "We've got your enquiry" - }, - "quoted": { - "body": "Your quote is ready - see the details at {site}. Let us know if you'd like to go ahead or if anything needs explaining.", - "subject": "Your quote from Nordvik Bygg" - }, - "won": { - "body": "Great - you're in. We'll be in touch to plan dates and next steps for getting the work started.", - "subject": "You're booked in with Nordvik Bygg" - } - }, - "subcontractors": { - "approved": { - "body": "You're approved and now on our subcontractor list. We'll reach out when work comes up that suits you.", - "subject": "You're on our subcontractor list" - }, - "open": { - "body": "Thanks for applying to work with us. We're going through your details and will come back to you soon.", - "subject": "We've got your application" - }, - "papers_requested": { - "body": "Before we can approve you, we need a few papers from you - see what's needed at {site}. Send them across when you can.", - "subject": "We need a few documents from you" - }, - "rejected": { - "body": "We won't be adding you to our subcontractor list at this time. Thanks for your interest - you're welcome to apply again later.", - "subject": "About your subcontractor application" - } - } -} diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/02-questions_crew_index.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/02-questions_crew_index.yaml.md deleted file mode 100644 index e47652c..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/02-questions_crew_index.yaml.md +++ /dev/null @@ -1,94 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: A housing board or private owner with a problem with a building - wants: Someone to come and look at it, and tell them what it would cost to fix. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost -> declined. -- known-project: An owner who already knows what they want built - wants: Drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost -> declined. -- subcontractor-application: A trade firm that wants to be on our list of subcontractors - wants: To be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> rejected. -- job-application: A carpenter or apprentice asking if we are hiring - wants: To apply for a job with us. Handled by project_managers. Stages: open -> interview -> hired -> declined. -- site-report: Crew on site, ours or a subcontractor's - wants: To report a hazard, near miss or wrong materials before it is forgotten. Handled by safety_officer. Stages: open -> closed. - -The page: questions/crew/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. Under `invites`, each entry is a form that invites a person into that group - they get an account and a one-time link - and `invited` is the list of invites sent. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": {}, - "confirm": "", - "description": "", - "invited": { - "description": "", - "done": "", - "heading": "" - }, - "invites": { - "crew": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "email": "", - "name": "" - } - } - }, - "links": { - "site-report": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": {}, - "confirm": "Confirm", - "description": "The desk for keeping on top of enquiries, quotes and crew as they move through the job.", - "invited": { - "description": "Everyone you've invited into the crew, and whether they've come on board yet.", - "done": "Joined", - "heading": "Who you've invited so far" - }, - "invites": { - "crew": { - "button": "Send invite", - "description": "Bring another project manager onto the desk so they can see and work the same cases.", - "form_title": "Invite to the crew", - "heading": "Get a colleague working alongside you", - "labels": { - "email": "Their email", - "name": "Their name" - } - } - }, - "links": { - "site-report": { - "button": "Open site reports", - "description": "See what's been flagged from site before it's forgotten - hazards, near misses, wrong materials.", - "heading": "See what the crew has flagged from site" - } - }, - "question": "What needs your attention on the desk right now?" -} -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/03-questions_crew_site-report-sent.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/03-questions_crew_site-report-sent.yaml.md deleted file mode 100644 index 65be451..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/03-questions_crew_site-report-sent.yaml.md +++ /dev/null @@ -1,46 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: A housing board or private owner with a problem with a building - wants: Someone to come and look at it, and tell them what it would cost to fix. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost -> declined. -- known-project: An owner who already knows what they want built - wants: Drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost -> declined. -- subcontractor-application: A trade firm that wants to be on our list of subcontractors - wants: To be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> rejected. -- job-application: A carpenter or apprentice asking if we are hiring - wants: To apply for a job with us. Handled by project_managers. Stages: open -> interview -> hired -> declined. -- site-report: Crew on site, ours or a subcontractor's - wants: To report a hazard, near miss or wrong materials before it is forgotten. Handled by safety_officer. Stages: open -> closed. - -The page: questions/crew/site-report-sent.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to site", - "description": "Your report has gone straight to Ingrid, our safety officer. She reads these as they come in and follows up if it needs action.", - "next_description": "If it's urgent, she'll ring the site directly. Otherwise expect a note once she's looked into it.", - "next_heading": "Ingrid follows up if needed", - "question": "What happens to my report now?" -} diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/04-questions_crew_site-report.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/04-questions_crew_site-report.yaml.md deleted file mode 100644 index 427008c..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/04-questions_crew_site-report.yaml.md +++ /dev/null @@ -1,88 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: A housing board or private owner with a problem with a building - wants: Someone to come and look at it, and tell them what it would cost to fix. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost -> declined. -- known-project: An owner who already knows what they want built - wants: Drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost -> declined. -- subcontractor-application: A trade firm that wants to be on our list of subcontractors - wants: To be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> rejected. -- job-application: A carpenter or apprentice asking if we are hiring - wants: To apply for a job with us. Handled by project_managers. Stages: open -> interview -> hired -> declined. -- site-report: Crew on site, ours or a subcontractor's - wants: To report a hazard, near miss or wrong materials before it is forgotten. Handled by safety_officer. Stages: open -> closed. - -The page: questions/crew/site-report.yaml -It is a page only one role inside the business can open, holding one form. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "description": "", - "location": "", - "type": "" - }, - "icon": "", - "labels": { - "description": "", - "location": "", - "type": "" - }, - "page_description": "", - "question": "", - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "button": "Report it now", - "description": "See a hazard, near miss or wrong materials on site? Log it before it slips your mind.", - "encouragement": "Takes under a minute. Ingrid's team acts on it straight away.", - "form_description": "Just say where and what's wrong, we'll take it from there.", - "form_title": "Report from site", - "heading": "Flag a hazard on site", - "hints": { - "description": "Scaffolding missing a guardrail on the north side, second floor.", - "location": "North side, 2nd floor scaffolding", - "type": "Hazard" - }, - "icon": "alert-triangle", - "labels": { - "description": "What's wrong", - "location": "Where on site", - "type": "What kind of issue" - }, - "page_description": "Spotted something unsafe, a near miss, or the wrong materials on site? Report it here before it's forgotten.", - "question": "Is something on this site unsafe or not right?", - "road_description": "Your report goes straight to the safety officer, who looks into it and closes it out once it's sorted.", - "road_icon": "check-circle", - "road_title": "What happens next", - "who_description": "The safety officer reads every report and follows up directly, call Ingrid Nordvik on ingrid@nordvikbygg.example if it can't wait.", - "who_icon": "shield", - "who_title": "Who sees this" -} -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/05-questions_index.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/05-questions_index.yaml.md deleted file mode 100644 index 49395a4..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/05-questions_index.yaml.md +++ /dev/null @@ -1,314 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: A housing board or private owner with a problem with a building - wants: Someone to come and look at it, and tell them what it would cost to fix. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost -> declined. -- known-project: An owner who already knows what they want built - wants: Drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost -> declined. -- subcontractor-application: A trade firm that wants to be on our list of subcontractors - wants: To be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> rejected. -- job-application: A carpenter or apprentice asking if we are hiring - wants: To apply for a job with us. Handled by project_managers. Stages: open -> interview -> hired -> declined. -- site-report: Crew on site, ours or a subcontractor's - wants: To report a hazard, near miss or wrong materials before it is forgotten. Handled by safety_officer. Stages: open -> closed. - -The page: questions/index.yaml -It is the front door: the first page any visitor sees. `question` is the page's one question. It opens modestly: `opener` is the first card, what the business does in several features and no button at all - a stranger reads it and decides whether to trust the place, so say what is true and useful, not what to press. `shopping` is the second card, things a visitor may look at before asking for anything. Only then come the offers: under `doors`, each entry is one alternative that leads to a page of its own for one kind of visitor, and its heading must let that visitor recognise themselves from the heading alone; under `needs`, each entry is one alternative with a form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "doors": {}, - "needs": { - "building-problem": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "address": "", - "email": "", - "name": "", - "phone": "", - "problem": "" - }, - "icon": "", - "labels": { - "address": "", - "email": "", - "name": "", - "phone": "", - "problem": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "job-application": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "message": "", - "name": "", - "role": "" - }, - "icon": "", - "labels": { - "email": "", - "message": "", - "name": "", - "role": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "known-project": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "address": "", - "email": "", - "name": "", - "project": "" - }, - "icon": "", - "labels": { - "address": "", - "email": "", - "name": "", - "project": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "subcontractor-application": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "company_name": "", - "email": "", - "insurance": "", - "registration_number": "", - "trade": "" - }, - "icon": "", - "labels": { - "company_name": "", - "email": "", - "insurance": "", - "registration_number": "", - "trade": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "opener": { - "description": "", - "features": { - "design-permit-build": { - "description": "", - "heading": "", - "icon": "" - }, - "survey-and-quote": { - "description": "", - "heading": "", - "icon": "" - } - }, - "heading": "" - }, - "question": "", - "shopping": { - "description": "", - "heading": "", - "items": {} - } -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "We survey the building, tell you what it needs and what it costs, get the permit sorted, and do the work ourselves with carpenters and trusted subcontractors.", - "doors": {}, - "needs": { - "building-problem": { - "button": "Send it in", - "description": "Tell us what's wrong and where. We'll come out, take a look, and tell you straight what it needs and what it costs.", - "encouragement": "A few lines and a phone number is all we need to get started.", - "form_description": "The more you can tell us about what you're seeing, the better we can prepare before we come out.", - "form_title": "Tell us about it", - "heading": "Get someone out to look at it", - "hints": { - "address": "Storgata 14, 0155 Oslo", - "email": "you@example.com", - "name": "Kari Hansen", - "phone": "+47 900 00 000", - "problem": "Damp patch spreading across the ceiling in the stairwell" - }, - "icon": "search", - "labels": { - "address": "Address", - "email": "Email", - "name": "Name", - "phone": "Phone", - "problem": "What's the problem?" - }, - "road_description": "We come out and survey the building, then send you a quote. If you go ahead with us, the work is booked in; if not, no hard feelings.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A project manager reads this and gets back to you; call us in the meantime if it's urgent.", - "who_icon": "user-check", - "who_title": "Who you'll hear from" - }, - "known-project": { - "button": "Get a quote", - "description": "You know what you want built. We'll draw it up, handle the permit application, and give you a price.", - "encouragement": "Send what you've got, even a rough sketch or a few notes is enough to start with.", - "form_description": "Tell us what you're planning and where, and we'll take it from there.", - "form_title": "Tell us your plans", - "heading": "Get drawings, a permit and a price", - "hints": { - "address": "Bakkegata 7, 0650 Oslo", - "email": "you@example.com", - "name": "Ola Berg", - "project": "Loft conversion, two new bedrooms and a bathroom" - }, - "icon": "ruler", - "labels": { - "address": "Address", - "email": "Email", - "name": "Name", - "project": "What are you planning?" - }, - "road_description": "We survey the site, then send you a quote covering drawings, permit and build. Say yes and we get to work; say no and that's fine too.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A project manager reads this and gets back to you; call us in the meantime if you'd rather talk it through.", - "who_icon": "user-check", - "who_title": "Who you'll hear from" - }, - "subcontractor-application": { - "button": "Apply", - "description": "Want to work with us on electrical, plumbing or scaffolding jobs? Send us your details and we'll take it from there.", - "encouragement": "Have your registration number and insurance handy, that's really all we need to get started.", - "form_description": "We'll check your papers and get back to you.", - "form_title": "Tell us about your firm", - "heading": "Get on our list of subcontractors", - "hints": { - "company_name": "Berg Elektro AS", - "email": "post@example.com", - "insurance": "Yes, valid through 2027", - "registration_number": "NO 123 456 789", - "trade": "Electrical" - }, - "icon": "handshake", - "labels": { - "company_name": "Company name", - "email": "Email", - "insurance": "Insurance in place?", - "registration_number": "Registration number", - "trade": "Trade" - }, - "road_description": "We check your papers, may ask for more documents, and let you know if you're approved.", - "road_icon": "clipboard-list", - "road_title": "What happens next", - "who_description": "A project manager reviews your application; feel free to call if you have questions while you wait.", - "who_icon": "user-check", - "who_title": "Who you'll hear from" - }, - "job-application": { - "button": "Apply", - "description": "Carpenter or apprentice, we're always glad to hear from good people. Tell us a bit about yourself.", - "encouragement": "No need for a full CV to start, just tell us who you are and what you do.", - "form_description": "A few lines about your experience is a good start.", - "form_title": "Tell us about yourself", - "heading": "Ask if we're hiring", - "hints": { - "email": "you@example.com", - "message": "Trained carpenter, three years on renovation jobs", - "name": "Erik Solheim", - "role": "Carpenter" - }, - "icon": "hammer", - "labels": { - "email": "Email", - "message": "Tell us about yourself", - "name": "Name", - "role": "What kind of work?" - }, - "road_description": "We read what you send, invite you in for a chat if it looks like a fit, and let you know either way.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A project manager reads this and reaches out if there's a fit.", - "who_icon": "user-check", - "who_title": "Who you'll hear from" - } - }, - "opener": { - "description": "We've been surveying, permitting and rebuilding old buildings for years, from the first look to the last coat of paint.", - "features": { - "survey-and-quote": { - "description": "We come look at the building, work out what's actually wrong, and give you a clear price for fixing it.", - "heading": "Know what it needs and what it costs", - "icon": "search" - }, - "design-permit-build": { - "description": "Drawings, the permit application, and the building work, all handled by us and the trades we trust.", - "heading": "One team from drawings to finished build", - "icon": "hammer" - } - }, - "heading": "Old buildings, put right by people who know them" - }, - "question": "What do you need done?", - "shopping": { - "description": "Not ready to reach out yet? Have a look around first.", - "heading": "See how we work", - "items": {} - } -} -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/06-questions_project_managers_index.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/06-questions_project_managers_index.yaml.md deleted file mode 100644 index ab16c3e..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/06-questions_project_managers_index.yaml.md +++ /dev/null @@ -1,168 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: A housing board or private owner with a problem with a building - wants: Someone to come and look at it, and tell them what it would cost to fix. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost -> declined. -- known-project: An owner who already knows what they want built - wants: Drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost -> declined. -- subcontractor-application: A trade firm that wants to be on our list of subcontractors - wants: To be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> rejected. -- job-application: A carpenter or apprentice asking if we are hiring - wants: To apply for a job with us. Handled by project_managers. Stages: open -> interview -> hired -> declined. -- site-report: Crew on site, ours or a subcontractor's - wants: To report a hazard, near miss or wrong materials before it is forgotten. Handled by safety_officer. Stages: open -> closed. - -The page: questions/project_managers/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. Under `invites`, each entry is a form that invites a person into that group - they get an account and a one-time link - and `invited` is the list of invites sent. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "applications": { - "description": "", - "heading": "", - "moves": { - "interview->declined": "declined>", - "interview->hired": "hired>", - "open->declined": "declined>", - "open->hired": "hired>", - "open->interview": "interview>" - } - }, - "enquiries": { - "description": "", - "heading": "", - "moves": { - "open->declined": "declined>", - "open->lost": "lost>", - "open->quoted": "quoted>", - "open->surveyed": "surveyed>", - "open->won": "won>", - "quoted->declined": "declined>", - "quoted->lost": "lost>", - "quoted->won": "won>", - "surveyed->declined": "declined>", - "surveyed->lost": "lost>", - "surveyed->quoted": "quoted>", - "surveyed->won": "won>" - } - }, - "subcontractors": { - "description": "", - "heading": "", - "moves": { - "checking->approved": "approved>", - "checking->papers_requested": "papers_requested>", - "checking->rejected": "rejected>", - "open->checking": "checking>", - "open->rejected": "rejected>", - "papers_requested->approved": "approved>", - "papers_requested->rejected": "rejected>" - } - } - }, - "confirm": "", - "description": "", - "invited": { - "description": "", - "done": "", - "heading": "" - }, - "invites": { - "project_managers": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "email": "", - "name": "" - } - } - }, - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "applications": { - "description": "People asking if we're hiring, from first message through to an offer.", - "heading": "People who want to work here", - "moves": { - "interview->declined": "Not moving forward", - "interview->hired": "Offer the job", - "open->declined": "Not a fit", - "open->hired": "Hire straight away", - "open->interview": "Call in for interview" - } - }, - "enquiries": { - "description": "Everyone who's come to us with a building to fix or a project to build, from first contact to a decision.", - "heading": "Building work people want done", - "moves": { - "open->declined": "Turn down", - "open->lost": "Mark as lost", - "open->quoted": "Send a price", - "open->surveyed": "Log the survey", - "open->won": "Mark as won", - "quoted->declined": "Turn down", - "quoted->lost": "Mark as lost", - "quoted->won": "Mark as won", - "surveyed->declined": "Turn down", - "surveyed->lost": "Mark as lost", - "surveyed->quoted": "Send a price", - "surveyed->won": "Mark as won" - } - }, - "subcontractors": { - "description": "Trade firms asking to be on our list, from first application to a decision.", - "heading": "Firms wanting to work with us", - "moves": { - "checking->approved": "Approve them", - "checking->papers_requested": "Ask for papers", - "checking->rejected": "Turn down", - "open->checking": "Start checking", - "open->rejected": "Turn down", - "papers_requested->approved": "Approve them", - "papers_requested->rejected": "Turn down" - } - } - }, - "confirm": "Confirm", - "description": "Your desk for building enquiries, subcontractor applications and job applications, all in one place.", - "invited": { - "description": "Project managers you've invited who haven't signed in yet.", - "done": "Signed in", - "heading": "Invites sent, waiting on a reply" - }, - "invites": { - "project_managers": { - "button": "Send invite", - "description": "Bring another project manager onto this desk with a one-time link.", - "form_title": "Invite a project manager", - "heading": "Add another project manager", - "labels": { - "email": "Email address", - "name": "Name" - } - } - }, - "links": {}, - "question": "What needs my attention today?" -} -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/07-questions_received_building-problem.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/07-questions_received_building-problem.yaml.md deleted file mode 100644 index e43a298..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/07-questions_received_building-problem.yaml.md +++ /dev/null @@ -1,48 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: A housing board or private owner with a problem with a building - wants: Someone to come and look at it, and tell them what it would cost to fix. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost -> declined. -- known-project: An owner who already knows what they want built - wants: Drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost -> declined. -- subcontractor-application: A trade firm that wants to be on our list of subcontractors - wants: To be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> rejected. -- job-application: A carpenter or apprentice asking if we are hiring - wants: To apply for a job with us. Handled by project_managers. Stages: open -> interview -> hired -> declined. -- site-report: Crew on site, ours or a subcontractor's - wants: To report a hazard, near miss or wrong materials before it is forgotten. Handled by safety_officer. Stages: open -> closed. - -The page: questions/received/building-problem.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to home", - "description": "Thanks for telling us about the building. We've received your report and logged it.", - "next_description": "One of our project managers will look over what you've sent and get in touch to arrange a site visit, usually within a few working days.", - "next_heading": "A project manager will call you", - "question": "What happens now that we've sent our building problem in?" -} -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/08-questions_received_job-application.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/08-questions_received_job-application.yaml.md deleted file mode 100644 index e33ba2c..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/08-questions_received_job-application.yaml.md +++ /dev/null @@ -1,48 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: A housing board or private owner with a problem with a building - wants: Someone to come and look at it, and tell them what it would cost to fix. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost -> declined. -- known-project: An owner who already knows what they want built - wants: Drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost -> declined. -- subcontractor-application: A trade firm that wants to be on our list of subcontractors - wants: To be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> rejected. -- job-application: A carpenter or apprentice asking if we are hiring - wants: To apply for a job with us. Handled by project_managers. Stages: open -> interview -> hired -> declined. -- site-report: Crew on site, ours or a subcontractor's - wants: To report a hazard, near miss or wrong materials before it is forgotten. Handled by safety_officer. Stages: open -> closed. - -The page: questions/received/job-application.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to home", - "description": "Thanks for sending your application. Ingrid will have a look and get back to you.", - "next_description": "Ingrid goes through applications a few times a week and calls if there's a fit.", - "next_heading": "Ingrid reviews your application", - "question": "What happens to my application now?" -} -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/09-questions_received_known-project.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/09-questions_received_known-project.yaml.md deleted file mode 100644 index 2ca646d..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/09-questions_received_known-project.yaml.md +++ /dev/null @@ -1,46 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: A housing board or private owner with a problem with a building - wants: Someone to come and look at it, and tell them what it would cost to fix. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost -> declined. -- known-project: An owner who already knows what they want built - wants: Drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost -> declined. -- subcontractor-application: A trade firm that wants to be on our list of subcontractors - wants: To be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> rejected. -- job-application: A carpenter or apprentice asking if we are hiring - wants: To apply for a job with us. Handled by project_managers. Stages: open -> interview -> hired -> declined. -- site-report: Crew on site, ours or a subcontractor's - wants: To report a hazard, near miss or wrong materials before it is forgotten. Handled by safety_officer. Stages: open -> closed. - -The page: questions/received/known-project.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to home", - "description": "Thanks for sending over your plans. Ingrid will look them over and get back to you with next steps.", - "next_description": "We'll check what you've sent, work out the drawings, permit and price, and be in touch within a couple of days.", - "next_heading": "We'll price up your build", - "question": "What happens now that I've sent this in?" -} diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/10-questions_received_subcontractor-application.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/10-questions_received_subcontractor-application.yaml.md deleted file mode 100644 index 9a329ee..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/10-questions_received_subcontractor-application.yaml.md +++ /dev/null @@ -1,48 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: A housing board or private owner with a problem with a building - wants: Someone to come and look at it, and tell them what it would cost to fix. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost -> declined. -- known-project: An owner who already knows what they want built - wants: Drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost -> declined. -- subcontractor-application: A trade firm that wants to be on our list of subcontractors - wants: To be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> rejected. -- job-application: A carpenter or apprentice asking if we are hiring - wants: To apply for a job with us. Handled by project_managers. Stages: open -> interview -> hired -> declined. -- site-report: Crew on site, ours or a subcontractor's - wants: To report a hazard, near miss or wrong materials before it is forgotten. Handled by safety_officer. Stages: open -> closed. - -The page: questions/received/subcontractor-application.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to home", - "description": "Thanks for applying to join our subcontractor list. We'll go through your papers and get back to you.", - "next_description": "We check your certificates and insurance, then let you know if we need anything else before you're on the list.", - "next_heading": "We review your application", - "question": "What happens now that we've sent this in?" -} -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/11-questions_safety_officer_index.yaml.md b/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/11-questions_safety_officer_index.yaml.md deleted file mode 100644 index 6bce93a..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/llm/11-questions_safety_officer_index.yaml.md +++ /dev/null @@ -1,98 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Nordvik Bygg -About: We survey old buildings, draw up rehabilitation plans, handle the permit application, and do the building work with our own carpenters plus subcontractors for electrical, plumbing and scaffolding. -Contact: Ingrid Nordvik -Language to write in: en - -Everyone the site serves: -- building-problem: A housing board or private owner with a problem with a building - wants: Someone to come and look at it, and tell them what it would cost to fix. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost -> declined. -- known-project: An owner who already knows what they want built - wants: Drawings, a permit application and a price. Handled by project_managers. Stages: open -> surveyed -> quoted -> won -> lost -> declined. -- subcontractor-application: A trade firm that wants to be on our list of subcontractors - wants: To be approved as a subcontractor. Handled by project_managers. Stages: open -> checking -> papers_requested -> approved -> rejected. -- job-application: A carpenter or apprentice asking if we are hiring - wants: To apply for a job with us. Handled by project_managers. Stages: open -> interview -> hired -> declined. -- site-report: Crew on site, ours or a subcontractor's - wants: To report a hazard, near miss or wrong materials before it is forgotten. Handled by safety_officer. Stages: open -> closed. - -The page: questions/safety_officer/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. Under `invites`, each entry is a form that invites a person into that group - they get an account and a one-time link - and `invited` is the list of invites sent. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "site_reports": { - "description": "", - "heading": "", - "moves": { - "open->closed": "closed>" - } - } - }, - "confirm": "", - "description": "", - "invited": { - "description": "", - "done": "", - "heading": "" - }, - "invites": { - "safety_officer": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "email": "", - "name": "" - } - } - }, - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "site_reports": { - "description": "Hazards, near misses and wrong materials reported from site, ours or a subcontractor's.", - "heading": "What's been flagged from site", - "moves": { - "open->closed": "Mark sorted" - } - } - }, - "confirm": "Confirm", - "description": "Reports coming in from site, so nothing gets forgotten before it becomes a problem.", - "invited": { - "description": "Safety officers you've invited, and whether they've taken up the invite yet.", - "done": "Signed up", - "heading": "Who you've invited so far" - }, - "invites": { - "safety_officer": { - "button": "Send invite", - "description": "Give another safety officer their own login so they can see and close reports too.", - "form_title": "Invite a safety officer", - "heading": "Bring in another safety officer", - "labels": { - "email": "Their email", - "name": "Their name" - } - } - }, - "links": {}, - "question": "What's come in from site that needs sorting?" -} -``` diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/needs.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/site/needs.yaml deleted file mode 100644 index 311ce37..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/needs.yaml +++ /dev/null @@ -1,142 +0,0 @@ -needs: -- done_when: - - won - - lost - - declined - enters: / - handled_by: project_managers - id: building-problem - lands_in: enquiries - max_fields: 4 - max_steps: 1 - stages: - - open - - surveyed - - quoted - - won - - lost - - declined - success: - - won - via: Get someone out to look at it - wants: Someone to come and look at it, and tell them what it would cost to fix - who: A housing board or private owner with a problem with a building -- done_when: - - won - - lost - - declined - enters: / - handled_by: project_managers - id: known-project - lands_in: enquiries - max_fields: 4 - max_steps: 1 - stages: - - open - - surveyed - - quoted - - won - - lost - - declined - success: - - won - via: Get drawings, a permit and a price - wants: Drawings, a permit application and a price - who: An owner who already knows what they want built -- done_when: - - approved - - rejected - enters: / - handled_by: project_managers - id: subcontractor-application - lands_in: subcontractors - max_fields: 5 - max_steps: 1 - stages: - - open - - checking - - papers_requested - - approved - - rejected - success: - - approved - via: Get on our list of subcontractors - wants: To be approved as a subcontractor - who: A trade firm that wants to be on our list of subcontractors -- done_when: - - hired - - declined - enters: / - handled_by: project_managers - id: job-application - lands_in: applications - max_fields: 4 - max_steps: 1 - stages: - - open - - interview - - hired - - declined - success: - - hired - via: Ask if we're hiring - wants: To apply for a job with us - who: A carpenter or apprentice asking if we are hiring -- done_when: - - closed - enters: /crew/site-report - enters_as: crew - handled_by: safety_officer - id: site-report - lands_in: site_reports - max_fields: 3 - max_steps: 1 - stages: - - open - - closed - success: - - closed - via: Flag a hazard on site - wants: To report a hazard, near miss or wrong materials before it is forgotten - who: Crew on site, ours or a subcontractor's -personas: -- id: housing-board-damp - need: building-problem - text: | - I chair the board of a housing cooperative from the seventies. Two ground-floor flats have damp in the walls and we don't know if it's drainage or the facade. We need someone to tell us. -- id: buyer-before-purchase - need: building-problem - text: | - We are about to buy an old timber house. Before we sign we want a professional to go through it and tell us what is wrong with it. -- id: attic-conversion - need: known-project - text: | - We want to turn our attic into two bedrooms and a bathroom. We need drawings and someone who handles the application to the municipality. -- id: shop-to-flat - need: known-project - text: | - I own a former shop on the ground floor and want to make it a flat. I have no idea what is allowed. Can you sort that out and give me a price? -- id: electrician-firm - need: subcontractor-application - text: | - We are a four-person electrical firm, fully certified. We would like to get on your list so you call us when you need electricians. -- id: scaffolder - need: subcontractor-application - text: | - I run a scaffolding company. How do I get to do jobs for you? -- id: carpenter-jobseeker - need: job-application - text: | - I'm a certified carpenter with eight years on rehabilitation jobs. Are you hiring? -- id: apprentice - need: job-application - text: | - I finish vocational school this spring and need an apprenticeship as a bricklayer. -- id: loose-railing - need: site-report - text: | - The railing on the third level of the scaffold on the north side is loose. Nobody got hurt but someone will. -- id: wrong-membrane - need: site-report - text: | - The bathroom membrane delivered today is not the one in the specification. We stopped work on it. diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/crew/_section.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/crew/_section.yaml deleted file mode 100644 index 1f962a5..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/crew/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: crew diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/crew/index.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/crew/index.yaml deleted file mode 100644 index eb60ddc..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/crew/index.yaml +++ /dev/null @@ -1,44 +0,0 @@ -alternatives: -- action: /crew/site-report - consequence: - - Open site reports - description: See what's been flagged from site before it's forgotten - hazards, near misses, wrong materials. - name: See what the crew has flagged from site -- action: /crew - consequence: - - Send invite - description: Bring another project manager onto the desk so they can see and work the same cases. - features: - - description: '' - name: Invite to the crew - requirements: - - label: Their name - name: name - - label: Their email - name: email - type: email - invite: - group: crew - name: Get a colleague working alongside you -- action: /crew - consequence: - - Confirm - description: Everyone you've invited into the crew, and whether they've come on board yet. - features: - - description: '' - name: '' - resource: - requires_group: crew - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Joined - to: done - name: Who you've invited so far -description: The desk for keeping on top of enquiries, quotes and crew as they move through the job. -name: What needs your attention on the desk right now? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/crew/site-report-sent.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/crew/site-report-sent.yaml deleted file mode 100644 index a1b0b96..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/crew/site-report-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: If it's urgent, she'll ring the site directly. Otherwise expect a note once she's looked into it. - name: Ingrid follows up if needed -- action: /crew - consequence: - - Back to site - description: '' - name: Back to site -description: Your report has gone straight to Ingrid, our safety officer. She reads these as they come in and follows up if it needs action. -name: What happens to my report now? diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/crew/site-report.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/crew/site-report.yaml deleted file mode 100644 index aa1a854..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/crew/site-report.yaml +++ /dev/null @@ -1,42 +0,0 @@ -alternatives: -- action: /crew/site-report-sent - consequence: - - Report it now - description: See a hazard, near miss or wrong materials on site? Log it before it slips your mind. - encouragements: - - Takes under a minute. Ingrid's team acts on it straight away. - features: - - description: Your report goes straight to the safety officer, who looks into it and closes it out once it's sorted. - icon: lucide:check-circle - name: What happens next - - description: The safety officer reads every report and follows up directly, call Ingrid Nordvik on ingrid@nordvikbygg.example if it can't wait. - icon: lucide:shield - name: Who sees this - - description: Just say where and what's wrong, we'll take it from there. - icon: lucide:alert-triangle - name: Report from site - requirements: - - label: What kind of issue - name: type - options: - - Hazard - - Near miss - - Wrong materials - type: select - - label: What's wrong - name: description - placeholder: Scaffolding missing a guardrail on the north side, second floor. - type: textarea - - label: Where on site - name: location - optional: true - placeholder: North side, 2nd floor scaffolding - type: text - name: Flag a hazard on site - record_as: site_reports -description: Spotted something unsafe, a near miss, or the wrong materials on site? Report it here before it's forgotten. -followup: false -name: Is something on this site unsafe or not right? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/index.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/index.yaml deleted file mode 100644 index 97161c1..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/index.yaml +++ /dev/null @@ -1,170 +0,0 @@ -alternatives: -- description: We've been surveying, permitting and rebuilding old buildings for years, from the first look to the last coat of paint. - features: - - description: Drawings, the permit application, and the building work, all handled by us and the trades we trust. - icon: lucide:hammer - name: One team from drawings to finished build - - description: We come look at the building, work out what's actually wrong, and give you a clear price for fixing it. - icon: lucide:search - name: Know what it needs and what it costs - name: Old buildings, put right by people who know them -- action: /received/building-problem - consequence: - - Send it in - description: Tell us what's wrong and where. We'll come out, take a look, and tell you straight what it needs and what it costs. - encouragements: - - A few lines and a phone number is all we need to get started. - features: - - description: We come out and survey the building, then send you a quote. If you go ahead with us, the work is booked in; if not, no hard feelings. - icon: lucide:route - name: What happens next - - description: A project manager reads this and gets back to you; call us in the meantime if it's urgent. - icon: lucide:user-check - name: Who you'll hear from - - description: The more you can tell us about what you're seeing, the better we can prepare before we come out. - icon: lucide:search - name: Tell us about it - requirements: - - label: Name - name: name - placeholder: Kari Hansen - type: text - - label: Email - name: email - placeholder: you@example.com - type: email - - label: Phone - name: phone - optional: true - placeholder: +47 900 00 000 - type: tel - - label: Address - name: address - placeholder: Storgata 14, 0155 Oslo - type: text - - label: What's the problem? - name: problem - placeholder: Damp patch spreading across the ceiling in the stairwell - type: textarea - name: Get someone out to look at it - record_as: enquiries -- action: /received/known-project - consequence: - - Get a quote - description: You know what you want built. We'll draw it up, handle the permit application, and give you a price. - encouragements: - - Send what you've got, even a rough sketch or a few notes is enough to start with. - features: - - description: We survey the site, then send you a quote covering drawings, permit and build. Say yes and we get to work; say no and that's fine too. - icon: lucide:route - name: What happens next - - description: A project manager reads this and gets back to you; call us in the meantime if you'd rather talk it through. - icon: lucide:user-check - name: Who you'll hear from - - description: Tell us what you're planning and where, and we'll take it from there. - icon: lucide:ruler - name: Tell us your plans - requirements: - - label: Name - name: name - placeholder: Ola Berg - type: text - - label: Email - name: email - placeholder: you@example.com - type: email - - label: Address - name: address - placeholder: Bakkegata 7, 0650 Oslo - type: text - - label: What are you planning? - name: project - placeholder: Loft conversion, two new bedrooms and a bathroom - type: textarea - name: Get drawings, a permit and a price - record_as: enquiries -- action: /received/subcontractor-application - consequence: - - Apply - description: Want to work with us on electrical, plumbing or scaffolding jobs? Send us your details and we'll take it from there. - encouragements: - - Have your registration number and insurance handy, that's really all we need to get started. - features: - - description: We check your papers, may ask for more documents, and let you know if you're approved. - icon: lucide:clipboard-list - name: What happens next - - description: A project manager reviews your application; feel free to call if you have questions while you wait. - icon: lucide:user-check - name: Who you'll hear from - - description: We'll check your papers and get back to you. - icon: lucide:handshake - name: Tell us about your firm - requirements: - - label: Company name - name: company_name - placeholder: Berg Elektro AS - type: text - - label: Registration number - name: registration_number - placeholder: NO 123 456 789 - type: text - - label: Trade - name: trade - options: - - Electrical - - Plumbing - - Scaffolding - - Other - type: select - - label: Insurance in place? - name: insurance - placeholder: Yes, valid through 2027 - type: text - - label: Email - name: email - placeholder: post@example.com - type: email - name: Get on our list of subcontractors - record_as: subcontractors -- action: /received/job-application - consequence: - - Apply - description: Carpenter or apprentice, we're always glad to hear from good people. Tell us a bit about yourself. - encouragements: - - No need for a full CV to start, just tell us who you are and what you do. - features: - - description: We read what you send, invite you in for a chat if it looks like a fit, and let you know either way. - icon: lucide:route - name: What happens next - - description: A project manager reads this and reaches out if there's a fit. - icon: lucide:user-check - name: Who you'll hear from - - description: A few lines about your experience is a good start. - icon: lucide:hammer - name: Tell us about yourself - requirements: - - label: Name - name: name - placeholder: Erik Solheim - type: text - - label: Email - name: email - placeholder: you@example.com - type: email - - label: What kind of work? - name: role - options: - - Carpenter - - Apprentice - type: select - - label: Tell us about yourself - name: message - placeholder: Trained carpenter, three years on renovation jobs - type: textarea - name: Ask if we're hiring - record_as: applications -description: We survey the building, tell you what it needs and what it costs, get the permit sorted, and do the work ourselves with carpenters and trusted subcontractors. -name: What do you need done? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/project_managers/_section.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/project_managers/_section.yaml deleted file mode 100644 index d8acdff..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/project_managers/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: project_managers diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/project_managers/index.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/project_managers/index.yaml deleted file mode 100644 index fd256ef..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/project_managers/index.yaml +++ /dev/null @@ -1,153 +0,0 @@ -alternatives: -- action: /project_managers - consequence: - - Confirm - description: People asking if we're hiring, from first message through to an offer. - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: applications - kind: kv - transitions: - - from: interview - label: Offer the job - to: hired - - from: interview - label: Not moving forward - to: declined - - from: open - label: Call in for interview - to: interview - - from: open - label: Hire straight away - to: hired - - from: open - label: Not a fit - to: declined - name: People who want to work here -- action: /project_managers - consequence: - - Confirm - description: Everyone who's come to us with a building to fix or a project to build, from first contact to a decision. - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: enquiries - kind: kv - transitions: - - from: open - label: Log the survey - to: surveyed - - from: open - label: Send a price - to: quoted - - from: open - label: Mark as won - to: won - - from: open - label: Mark as lost - to: lost - - from: open - label: Turn down - to: declined - - from: quoted - label: Mark as won - to: won - - from: quoted - label: Mark as lost - to: lost - - from: quoted - label: Turn down - to: declined - - from: surveyed - label: Send a price - to: quoted - - from: surveyed - label: Mark as won - to: won - - from: surveyed - label: Mark as lost - to: lost - - from: surveyed - label: Turn down - to: declined - name: Building work people want done -- action: /project_managers - consequence: - - Confirm - description: Trade firms asking to be on our list, from first application to a decision. - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: subcontractors - kind: kv - transitions: - - from: checking - label: Ask for papers - to: papers_requested - - from: checking - label: Approve them - to: approved - - from: checking - label: Turn down - to: rejected - - from: open - label: Start checking - to: checking - - from: open - label: Turn down - to: rejected - - from: papers_requested - label: Approve them - to: approved - - from: papers_requested - label: Turn down - to: rejected - name: Firms wanting to work with us -- action: /project_managers - consequence: - - Send invite - description: Bring another project manager onto this desk with a one-time link. - features: - - description: '' - name: Invite a project manager - requirements: - - label: Name - name: name - - label: Email address - name: email - type: email - invite: - group: project_managers - name: Add another project manager -- action: /project_managers - consequence: - - Confirm - description: Project managers you've invited who haven't signed in yet. - features: - - description: '' - name: '' - resource: - requires_group: project_managers - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Signed in - to: done - name: Invites sent, waiting on a reply -description: Your desk for building enquiries, subcontractor applications and job applications, all in one place. -name: What needs my attention today? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/received/building-problem.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/received/building-problem.yaml deleted file mode 100644 index a104358..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/received/building-problem.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: One of our project managers will look over what you've sent and get in touch to arrange a site visit, usually within a few working days. - name: A project manager will call you -- action: / - consequence: - - Back to home - description: '' - name: Back to home -description: Thanks for telling us about the building. We've received your report and logged it. -name: What happens now that we've sent our building problem in? diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/received/job-application.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/received/job-application.yaml deleted file mode 100644 index c4016f9..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/received/job-application.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Ingrid goes through applications a few times a week and calls if there's a fit. - name: Ingrid reviews your application -- action: / - consequence: - - Back to home - description: '' - name: Back to home -description: Thanks for sending your application. Ingrid will have a look and get back to you. -name: What happens to my application now? diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/received/known-project.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/received/known-project.yaml deleted file mode 100644 index 8505774..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/received/known-project.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: We'll check what you've sent, work out the drawings, permit and price, and be in touch within a couple of days. - name: We'll price up your build -- action: / - consequence: - - Back to home - description: '' - name: Back to home -description: Thanks for sending over your plans. Ingrid will look them over and get back to you with next steps. -name: What happens now that I've sent this in? diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/received/subcontractor-application.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/received/subcontractor-application.yaml deleted file mode 100644 index a922f9f..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/received/subcontractor-application.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: We check your certificates and insurance, then let you know if we need anything else before you're on the list. - name: We review your application -- action: / - consequence: - - Back to home - description: '' - name: Back to home -description: Thanks for applying to join our subcontractor list. We'll go through your papers and get back to you. -name: What happens now that we've sent this in? diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/safety_officer/_section.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/safety_officer/_section.yaml deleted file mode 100644 index d7ea7a1..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/safety_officer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: safety_officer diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/safety_officer/index.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/safety_officer/index.yaml deleted file mode 100644 index 26366b4..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/questions/safety_officer/index.yaml +++ /dev/null @@ -1,56 +0,0 @@ -alternatives: -- action: /safety_officer - consequence: - - Confirm - description: Hazards, near misses and wrong materials reported from site, ours or a subcontractor's. - features: - - description: '' - name: '' - resource: - requires_group: safety_officer - source: - bucket: site_reports - kind: kv - transitions: - - from: open - label: Mark sorted - to: closed - name: What's been flagged from site -- action: /safety_officer - consequence: - - Send invite - description: Give another safety officer their own login so they can see and close reports too. - features: - - description: '' - name: Invite a safety officer - requirements: - - label: Their name - name: name - - label: Their email - name: email - type: email - invite: - group: safety_officer - name: Bring in another safety officer -- action: /safety_officer - consequence: - - Confirm - description: Safety officers you've invited, and whether they've taken up the invite yet. - features: - - description: '' - name: '' - resource: - requires_group: safety_officer - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Signed up - to: done - name: Who you've invited so far -description: Reports coming in from site, so nothing gets forgotten before it becomes a problem. -name: What's come in from site that needs sorting? -responsible: - contact: ingrid@nordvikbygg.example - name: Ingrid Nordvik diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/site.yaml b/vendor/trainer/runs/contractor-planned-2026-09-24/site/site.yaml deleted file mode 100644 index d632a3a..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/site.yaml +++ /dev/null @@ -1,5 +0,0 @@ -lang: en -mail: - from: Nordvik Bygg - reply_to: ingrid@nordvikbygg.example -title: Nordvik Bygg diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/site/words.json b/vendor/trainer/runs/contractor-planned-2026-09-24/site/words.json deleted file mode 100644 index f36e297..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/site/words.json +++ /dev/null @@ -1,393 +0,0 @@ -{ - "aggregates.yaml": { - "applications": { - "declined": { - "body": "Thanks for taking the time to apply. We've decided to go with other candidates this time, but we'll hang on to your details in case something suits down the line. Good luck out there.", - "subject": "Your application with Nordvik Bygg" - }, - "hired": { - "body": "Good news - we'd like to bring you on board. Ingrid will be in touch shortly to sort out start date and paperwork. Welcome to the crew.", - "subject": "Welcome to Nordvik Bygg" - }, - "interview": { - "body": "We'd like to meet you. Someone from our team will call you soon to find a time. Have a couple of past jobs ready to talk through.", - "subject": "Let's talk - Nordvik Bygg" - }, - "open": { - "body": "Thanks for reaching out about work with us. We're looking through applications now and will get back to you soon either way.", - "subject": "We've got your application" - } - }, - "enquiries": { - "declined": { - "body": "We won't be able to take this one on. Sorry we can't help this time - feel free to come back to us if things change.", - "subject": "About your enquiry" - }, - "lost": { - "body": "You've gone with someone else for this job - no hard feelings. If anything else comes up on the building, give us a shout.", - "subject": "About your quote" - }, - "open": { - "body": "We've received your enquiry and will be in touch to arrange a look at the building. No need to do anything else for now.", - "subject": "We've got your enquiry" - }, - "quoted": { - "body": "Your quote is ready - see the details at {site}. Let us know if you'd like to go ahead or if anything needs explaining.", - "subject": "Your quote from Nordvik Bygg" - }, - "won": { - "body": "Great - you're in. We'll be in touch to plan dates and next steps for getting the work started.", - "subject": "You're booked in with Nordvik Bygg" - } - }, - "subcontractors": { - "approved": { - "body": "You're approved and now on our subcontractor list. We'll reach out when work comes up that suits you.", - "subject": "You're on our subcontractor list" - }, - "open": { - "body": "Thanks for applying to work with us. We're going through your details and will come back to you soon.", - "subject": "We've got your application" - }, - "papers_requested": { - "body": "Before we can approve you, we need a few papers from you - see what's needed at {site}. Send them across when you can.", - "subject": "We need a few documents from you" - }, - "rejected": { - "body": "We won't be adding you to our subcontractor list at this time. Thanks for your interest - you're welcome to apply again later.", - "subject": "About your subcontractor application" - } - } - }, - "questions/crew/index.yaml": { - "buckets": {}, - "confirm": "Confirm", - "description": "The desk for keeping on top of enquiries, quotes and crew as they move through the job.", - "invited": { - "description": "Everyone you've invited into the crew, and whether they've come on board yet.", - "done": "Joined", - "heading": "Who you've invited so far" - }, - "invites": { - "crew": { - "button": "Send invite", - "description": "Bring another project manager onto the desk so they can see and work the same cases.", - "form_title": "Invite to the crew", - "heading": "Get a colleague working alongside you", - "labels": { - "email": "Their email", - "name": "Their name" - } - } - }, - "links": { - "site-report": { - "button": "Open site reports", - "description": "See what's been flagged from site before it's forgotten - hazards, near misses, wrong materials.", - "heading": "See what the crew has flagged from site" - } - }, - "question": "What needs your attention on the desk right now?" - }, - "questions/crew/site-report-sent.yaml": { - "back": "Back to site", - "description": "Your report has gone straight to Ingrid, our safety officer. She reads these as they come in and follows up if it needs action.", - "next_description": "If it's urgent, she'll ring the site directly. Otherwise expect a note once she's looked into it.", - "next_heading": "Ingrid follows up if needed", - "question": "What happens to my report now?" - }, - "questions/crew/site-report.yaml": { - "button": "Report it now", - "description": "See a hazard, near miss or wrong materials on site? Log it before it slips your mind.", - "encouragement": "Takes under a minute. Ingrid's team acts on it straight away.", - "form_description": "Just say where and what's wrong, we'll take it from there.", - "form_title": "Report from site", - "heading": "Flag a hazard on site", - "hints": { - "description": "Scaffolding missing a guardrail on the north side, second floor.", - "location": "North side, 2nd floor scaffolding", - "type": "Hazard" - }, - "icon": "alert-triangle", - "labels": { - "description": "What's wrong", - "location": "Where on site", - "type": "What kind of issue" - }, - "page_description": "Spotted something unsafe, a near miss, or the wrong materials on site? Report it here before it's forgotten.", - "question": "Is something on this site unsafe or not right?", - "road_description": "Your report goes straight to the safety officer, who looks into it and closes it out once it's sorted.", - "road_icon": "check-circle", - "road_title": "What happens next", - "who_description": "The safety officer reads every report and follows up directly, call Ingrid Nordvik on ingrid@nordvikbygg.example if it can't wait.", - "who_icon": "shield", - "who_title": "Who sees this" - }, - "questions/index.yaml": { - "description": "We survey the building, tell you what it needs and what it costs, get the permit sorted, and do the work ourselves with carpenters and trusted subcontractors.", - "doors": {}, - "needs": { - "building-problem": { - "button": "Send it in", - "description": "Tell us what's wrong and where. We'll come out, take a look, and tell you straight what it needs and what it costs.", - "encouragement": "A few lines and a phone number is all we need to get started.", - "form_description": "The more you can tell us about what you're seeing, the better we can prepare before we come out.", - "form_title": "Tell us about it", - "heading": "Get someone out to look at it", - "hints": { - "address": "Storgata 14, 0155 Oslo", - "email": "you@example.com", - "name": "Kari Hansen", - "phone": "+47 900 00 000", - "problem": "Damp patch spreading across the ceiling in the stairwell" - }, - "icon": "search", - "labels": { - "address": "Address", - "email": "Email", - "name": "Name", - "phone": "Phone", - "problem": "What's the problem?" - }, - "road_description": "We come out and survey the building, then send you a quote. If you go ahead with us, the work is booked in; if not, no hard feelings.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A project manager reads this and gets back to you; call us in the meantime if it's urgent.", - "who_icon": "user-check", - "who_title": "Who you'll hear from" - }, - "job-application": { - "button": "Apply", - "description": "Carpenter or apprentice, we're always glad to hear from good people. Tell us a bit about yourself.", - "encouragement": "No need for a full CV to start, just tell us who you are and what you do.", - "form_description": "A few lines about your experience is a good start.", - "form_title": "Tell us about yourself", - "heading": "Ask if we're hiring", - "hints": { - "email": "you@example.com", - "message": "Trained carpenter, three years on renovation jobs", - "name": "Erik Solheim", - "role": "Carpenter" - }, - "icon": "hammer", - "labels": { - "email": "Email", - "message": "Tell us about yourself", - "name": "Name", - "role": "What kind of work?" - }, - "road_description": "We read what you send, invite you in for a chat if it looks like a fit, and let you know either way.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A project manager reads this and reaches out if there's a fit.", - "who_icon": "user-check", - "who_title": "Who you'll hear from" - }, - "known-project": { - "button": "Get a quote", - "description": "You know what you want built. We'll draw it up, handle the permit application, and give you a price.", - "encouragement": "Send what you've got, even a rough sketch or a few notes is enough to start with.", - "form_description": "Tell us what you're planning and where, and we'll take it from there.", - "form_title": "Tell us your plans", - "heading": "Get drawings, a permit and a price", - "hints": { - "address": "Bakkegata 7, 0650 Oslo", - "email": "you@example.com", - "name": "Ola Berg", - "project": "Loft conversion, two new bedrooms and a bathroom" - }, - "icon": "ruler", - "labels": { - "address": "Address", - "email": "Email", - "name": "Name", - "project": "What are you planning?" - }, - "road_description": "We survey the site, then send you a quote covering drawings, permit and build. Say yes and we get to work; say no and that's fine too.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A project manager reads this and gets back to you; call us in the meantime if you'd rather talk it through.", - "who_icon": "user-check", - "who_title": "Who you'll hear from" - }, - "subcontractor-application": { - "button": "Apply", - "description": "Want to work with us on electrical, plumbing or scaffolding jobs? Send us your details and we'll take it from there.", - "encouragement": "Have your registration number and insurance handy, that's really all we need to get started.", - "form_description": "We'll check your papers and get back to you.", - "form_title": "Tell us about your firm", - "heading": "Get on our list of subcontractors", - "hints": { - "company_name": "Berg Elektro AS", - "email": "post@example.com", - "insurance": "Yes, valid through 2027", - "registration_number": "NO 123 456 789", - "trade": "Electrical" - }, - "icon": "handshake", - "labels": { - "company_name": "Company name", - "email": "Email", - "insurance": "Insurance in place?", - "registration_number": "Registration number", - "trade": "Trade" - }, - "road_description": "We check your papers, may ask for more documents, and let you know if you're approved.", - "road_icon": "clipboard-list", - "road_title": "What happens next", - "who_description": "A project manager reviews your application; feel free to call if you have questions while you wait.", - "who_icon": "user-check", - "who_title": "Who you'll hear from" - } - }, - "opener": { - "description": "We've been surveying, permitting and rebuilding old buildings for years, from the first look to the last coat of paint.", - "features": { - "design-permit-build": { - "description": "Drawings, the permit application, and the building work, all handled by us and the trades we trust.", - "heading": "One team from drawings to finished build", - "icon": "hammer" - }, - "survey-and-quote": { - "description": "We come look at the building, work out what's actually wrong, and give you a clear price for fixing it.", - "heading": "Know what it needs and what it costs", - "icon": "search" - } - }, - "heading": "Old buildings, put right by people who know them" - }, - "question": "What do you need done?", - "shopping": { - "description": "Not ready to reach out yet? Have a look around first.", - "heading": "See how we work", - "items": {} - } - }, - "questions/project_managers/index.yaml": { - "buckets": { - "applications": { - "description": "People asking if we're hiring, from first message through to an offer.", - "heading": "People who want to work here", - "moves": { - "interview->declined": "Not moving forward", - "interview->hired": "Offer the job", - "open->declined": "Not a fit", - "open->hired": "Hire straight away", - "open->interview": "Call in for interview" - } - }, - "enquiries": { - "description": "Everyone who's come to us with a building to fix or a project to build, from first contact to a decision.", - "heading": "Building work people want done", - "moves": { - "open->declined": "Turn down", - "open->lost": "Mark as lost", - "open->quoted": "Send a price", - "open->surveyed": "Log the survey", - "open->won": "Mark as won", - "quoted->declined": "Turn down", - "quoted->lost": "Mark as lost", - "quoted->won": "Mark as won", - "surveyed->declined": "Turn down", - "surveyed->lost": "Mark as lost", - "surveyed->quoted": "Send a price", - "surveyed->won": "Mark as won" - } - }, - "subcontractors": { - "description": "Trade firms asking to be on our list, from first application to a decision.", - "heading": "Firms wanting to work with us", - "moves": { - "checking->approved": "Approve them", - "checking->papers_requested": "Ask for papers", - "checking->rejected": "Turn down", - "open->checking": "Start checking", - "open->rejected": "Turn down", - "papers_requested->approved": "Approve them", - "papers_requested->rejected": "Turn down" - } - } - }, - "confirm": "Confirm", - "description": "Your desk for building enquiries, subcontractor applications and job applications, all in one place.", - "invited": { - "description": "Project managers you've invited who haven't signed in yet.", - "done": "Signed in", - "heading": "Invites sent, waiting on a reply" - }, - "invites": { - "project_managers": { - "button": "Send invite", - "description": "Bring another project manager onto this desk with a one-time link.", - "form_title": "Invite a project manager", - "heading": "Add another project manager", - "labels": { - "email": "Email address", - "name": "Name" - } - } - }, - "links": {}, - "question": "What needs my attention today?" - }, - "questions/received/building-problem.yaml": { - "back": "Back to home", - "description": "Thanks for telling us about the building. We've received your report and logged it.", - "next_description": "One of our project managers will look over what you've sent and get in touch to arrange a site visit, usually within a few working days.", - "next_heading": "A project manager will call you", - "question": "What happens now that we've sent our building problem in?" - }, - "questions/received/job-application.yaml": { - "back": "Back to home", - "description": "Thanks for sending your application. Ingrid will have a look and get back to you.", - "next_description": "Ingrid goes through applications a few times a week and calls if there's a fit.", - "next_heading": "Ingrid reviews your application", - "question": "What happens to my application now?" - }, - "questions/received/known-project.yaml": { - "back": "Back to home", - "description": "Thanks for sending over your plans. Ingrid will look them over and get back to you with next steps.", - "next_description": "We'll check what you've sent, work out the drawings, permit and price, and be in touch within a couple of days.", - "next_heading": "We'll price up your build", - "question": "What happens now that I've sent this in?" - }, - "questions/received/subcontractor-application.yaml": { - "back": "Back to home", - "description": "Thanks for applying to join our subcontractor list. We'll go through your papers and get back to you.", - "next_description": "We check your certificates and insurance, then let you know if we need anything else before you're on the list.", - "next_heading": "We review your application", - "question": "What happens now that we've sent this in?" - }, - "questions/safety_officer/index.yaml": { - "buckets": { - "site_reports": { - "description": "Hazards, near misses and wrong materials reported from site, ours or a subcontractor's.", - "heading": "What's been flagged from site", - "moves": { - "open->closed": "Mark sorted" - } - } - }, - "confirm": "Confirm", - "description": "Reports coming in from site, so nothing gets forgotten before it becomes a problem.", - "invited": { - "description": "Safety officers you've invited, and whether they've taken up the invite yet.", - "done": "Signed up", - "heading": "Who you've invited so far" - }, - "invites": { - "safety_officer": { - "button": "Send invite", - "description": "Give another safety officer their own login so they can see and close reports too.", - "form_title": "Invite a safety officer", - "heading": "Bring in another safety officer", - "labels": { - "email": "Their email", - "name": "Their name" - } - } - }, - "links": {}, - "question": "What's come in from site that needs sorting?" - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/spread.sh b/vendor/trainer/runs/contractor-planned-2026-09-24/spread.sh deleted file mode 100755 index c43dc8c..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/spread.sh +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/sh -# The noise floor: answer one run's tasks with several seeds and print -# each seed's score, so a change can be told from the visitor's mood. -# runs/spread.sh runs/ [seeds...] (default seeds: 1 2 3) -set -eu -run=${1:?usage: spread.sh runs/ [seeds...]}; shift -seeds=${*:-1 2 3} -IRIS=/var/local/cargo-target/release/iris -T=/var/local/cargo-target/release/portal-trainer -LLM="MODEL=qwen3:8b $(cd "$(dirname "$0")/.." && pwd)/engines/ollama.sh" -cd "$run" -for mode in full skim; do - skim=""; [ "$mode" = skim ] && skim="--skim" - for s in $seeds; do - $T answer --tasks tasks-$mode.jsonl --repo site --llm "$LLM" --seed "$s" > answers-$mode-seed$s.jsonl - printf "%s seed %s: " "$mode" "$s" - $IRIS check --path site/questions --needs-tasks tasks-$mode.jsonl $skim --needs-score answers-$mode-seed$s.jsonl 2>&1 | grep -E "^wording:" - done -done diff --git a/vendor/trainer/runs/contractor-planned-2026-09-24/tasks-full.jsonl b/vendor/trainer/runs/contractor-planned-2026-09-24/tasks-full.jsonl deleted file mode 100644 index 6eb83dc..0000000 --- a/vendor/trainer/runs/contractor-planned-2026-09-24/tasks-full.jsonl +++ /dev/null @@ -1,8 +0,0 @@ -{"id":"housing-board-damp@/","persona":"housing-board-damp","need":"building-problem","page":"/","state":{"body":"I chair the board of a housing cooperative from the seventies. Two ground-floor flats have damp in the walls and we don't know if it's drainage or the facade. We need someone to tell us.","page":"Old buildings, put right by people who know them: We've been surveying, permitting and rebuilding old buildings for years, from the first look to the last coat of paint. One team from drawings to finished build: Drawings, the permit application, and the building work, all handled by us and the trades we trust. Know what it needs and what it costs: We come look at the building, work out what's actually wrong, and give you a clear price for fixing it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need done?\". Which alternative do they choose?","criteria":{"Ask if we're hiring":"Carpenter or apprentice, we're always glad to hear from good people. Tell us a bit about yourself.","Get drawings, a permit and a price":"You know what you want built. We'll draw it up, handle the permit application, and give you a price.","Get on our list of subcontractors":"Want to work with us on electrical, plumbing or scaffolding jobs? Send us your details and we'll take it from there.","Get someone out to look at it":"Tell us what's wrong and where. We'll come out, take a look, and tell you straight what it needs and what it costs."}}},"expect":["Get someone out to look at it"]} -{"id":"buyer-before-purchase@/","persona":"buyer-before-purchase","need":"building-problem","page":"/","state":{"body":"We are about to buy an old timber house. Before we sign we want a professional to go through it and tell us what is wrong with it.","page":"Old buildings, put right by people who know them: We've been surveying, permitting and rebuilding old buildings for years, from the first look to the last coat of paint. One team from drawings to finished build: Drawings, the permit application, and the building work, all handled by us and the trades we trust. Know what it needs and what it costs: We come look at the building, work out what's actually wrong, and give you a clear price for fixing it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need done?\". Which alternative do they choose?","criteria":{"Ask if we're hiring":"Carpenter or apprentice, we're always glad to hear from good people. Tell us a bit about yourself.","Get drawings, a permit and a price":"You know what you want built. We'll draw it up, handle the permit application, and give you a price.","Get on our list of subcontractors":"Want to work with us on electrical, plumbing or scaffolding jobs? Send us your details and we'll take it from there.","Get someone out to look at it":"Tell us what's wrong and where. We'll come out, take a look, and tell you straight what it needs and what it costs."}}},"expect":["Get someone out to look at it"]} -{"id":"attic-conversion@/","persona":"attic-conversion","need":"known-project","page":"/","state":{"body":"We want to turn our attic into two bedrooms and a bathroom. We need drawings and someone who handles the application to the municipality.","page":"Old buildings, put right by people who know them: We've been surveying, permitting and rebuilding old buildings for years, from the first look to the last coat of paint. One team from drawings to finished build: Drawings, the permit application, and the building work, all handled by us and the trades we trust. Know what it needs and what it costs: We come look at the building, work out what's actually wrong, and give you a clear price for fixing it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need done?\". Which alternative do they choose?","criteria":{"Ask if we're hiring":"Carpenter or apprentice, we're always glad to hear from good people. Tell us a bit about yourself.","Get drawings, a permit and a price":"You know what you want built. We'll draw it up, handle the permit application, and give you a price.","Get on our list of subcontractors":"Want to work with us on electrical, plumbing or scaffolding jobs? Send us your details and we'll take it from there.","Get someone out to look at it":"Tell us what's wrong and where. We'll come out, take a look, and tell you straight what it needs and what it costs."}}},"expect":["Get drawings, a permit and a price"]} -{"id":"shop-to-flat@/","persona":"shop-to-flat","need":"known-project","page":"/","state":{"body":"I own a former shop on the ground floor and want to make it a flat. I have no idea what is allowed. Can you sort that out and give me a price?","page":"Old buildings, put right by people who know them: We've been surveying, permitting and rebuilding old buildings for years, from the first look to the last coat of paint. One team from drawings to finished build: Drawings, the permit application, and the building work, all handled by us and the trades we trust. Know what it needs and what it costs: We come look at the building, work out what's actually wrong, and give you a clear price for fixing it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need done?\". Which alternative do they choose?","criteria":{"Ask if we're hiring":"Carpenter or apprentice, we're always glad to hear from good people. Tell us a bit about yourself.","Get drawings, a permit and a price":"You know what you want built. We'll draw it up, handle the permit application, and give you a price.","Get on our list of subcontractors":"Want to work with us on electrical, plumbing or scaffolding jobs? Send us your details and we'll take it from there.","Get someone out to look at it":"Tell us what's wrong and where. We'll come out, take a look, and tell you straight what it needs and what it costs."}}},"expect":["Get drawings, a permit and a price"]} -{"id":"electrician-firm@/","persona":"electrician-firm","need":"subcontractor-application","page":"/","state":{"body":"We are a four-person electrical firm, fully certified. We would like to get on your list so you call us when you need electricians.","page":"Old buildings, put right by people who know them: We've been surveying, permitting and rebuilding old buildings for years, from the first look to the last coat of paint. One team from drawings to finished build: Drawings, the permit application, and the building work, all handled by us and the trades we trust. Know what it needs and what it costs: We come look at the building, work out what's actually wrong, and give you a clear price for fixing it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need done?\". Which alternative do they choose?","criteria":{"Ask if we're hiring":"Carpenter or apprentice, we're always glad to hear from good people. Tell us a bit about yourself.","Get drawings, a permit and a price":"You know what you want built. We'll draw it up, handle the permit application, and give you a price.","Get on our list of subcontractors":"Want to work with us on electrical, plumbing or scaffolding jobs? Send us your details and we'll take it from there.","Get someone out to look at it":"Tell us what's wrong and where. We'll come out, take a look, and tell you straight what it needs and what it costs."}}},"expect":["Get on our list of subcontractors"]} -{"id":"scaffolder@/","persona":"scaffolder","need":"subcontractor-application","page":"/","state":{"body":"I run a scaffolding company. How do I get to do jobs for you?","page":"Old buildings, put right by people who know them: We've been surveying, permitting and rebuilding old buildings for years, from the first look to the last coat of paint. One team from drawings to finished build: Drawings, the permit application, and the building work, all handled by us and the trades we trust. Know what it needs and what it costs: We come look at the building, work out what's actually wrong, and give you a clear price for fixing it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need done?\". Which alternative do they choose?","criteria":{"Ask if we're hiring":"Carpenter or apprentice, we're always glad to hear from good people. Tell us a bit about yourself.","Get drawings, a permit and a price":"You know what you want built. We'll draw it up, handle the permit application, and give you a price.","Get on our list of subcontractors":"Want to work with us on electrical, plumbing or scaffolding jobs? Send us your details and we'll take it from there.","Get someone out to look at it":"Tell us what's wrong and where. We'll come out, take a look, and tell you straight what it needs and what it costs."}}},"expect":["Get on our list of subcontractors"]} -{"id":"carpenter-jobseeker@/","persona":"carpenter-jobseeker","need":"job-application","page":"/","state":{"body":"I'm a certified carpenter with eight years on rehabilitation jobs. Are you hiring?","page":"Old buildings, put right by people who know them: We've been surveying, permitting and rebuilding old buildings for years, from the first look to the last coat of paint. One team from drawings to finished build: Drawings, the permit application, and the building work, all handled by us and the trades we trust. Know what it needs and what it costs: We come look at the building, work out what's actually wrong, and give you a clear price for fixing it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need done?\". Which alternative do they choose?","criteria":{"Ask if we're hiring":"Carpenter or apprentice, we're always glad to hear from good people. Tell us a bit about yourself.","Get drawings, a permit and a price":"You know what you want built. We'll draw it up, handle the permit application, and give you a price.","Get on our list of subcontractors":"Want to work with us on electrical, plumbing or scaffolding jobs? Send us your details and we'll take it from there.","Get someone out to look at it":"Tell us what's wrong and where. We'll come out, take a look, and tell you straight what it needs and what it costs."}}},"expect":["Ask if we're hiring"]} -{"id":"apprentice@/","persona":"apprentice","need":"job-application","page":"/","state":{"body":"I finish vocational school this spring and need an apprenticeship as a bricklayer.","page":"Old buildings, put right by people who know them: We've been surveying, permitting and rebuilding old buildings for years, from the first look to the last coat of paint. One team from drawings to finished build: Drawings, the permit application, and the building work, all handled by us and the trades we trust. Know what it needs and what it costs: We come look at the building, work out what's actually wrong, and give you a clear price for fixing it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need done?\". Which alternative do they choose?","criteria":{"Ask if we're hiring":"Carpenter or apprentice, we're always glad to hear from good people. Tell us a bit about yourself.","Get drawings, a permit and a price":"You know what you want built. We'll draw it up, handle the permit application, and give you a price.","Get on our list of subcontractors":"Want to work with us on electrical, plumbing or scaffolding jobs? Send us your details and we'll take it from there.","Get someone out to look at it":"Tell us what's wrong and where. We'll come out, take a look, and tell you straight what it needs and what it costs."}}},"expect":["Ask if we're hiring"]} diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/README.md b/vendor/trainer/runs/fotballklubb-2026-09-22/README.md deleted file mode 100644 index 8bbbd9d..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/README.md +++ /dev/null @@ -1,31 +0,0 @@ -# A football club, in Norwegian, behind two doors - -`plans/fotballklubb.yaml`: five needs, two doors (foresatte, bidra), -roles overlapping on one aggregate (the coach approves, the treasurer -sees payment). Built with nemotron-3.5-lightning:30b-a3b writing the -words, all 12 pages worded, verifier green by construction. Visitor: -qwen3:8b, one task per call. Nine held-out personas, sixteen tasks. -The same plan built with Claude Sonnet is in -`../fotballklubb-claude-2026-09-22/`, with the comparison. - -| Visitor could read | Routed right | -|---|---| -| Headings and descriptions | 14 of 16 | -| Headings only | 11 of 16 | - -- **The front door fails on headings alone.** Three of five parents - chose "Vil du bidra til klubben?" over "Er det på tide å melde - inn?". "Melde inn" is the club's word for enrolment; a parent who - just moved to the village asks "how does he get on a team?" and - reads "contribute to the club" as the general door. The - descriptions rescue it (14 of 16), which is the definition of a - heading that has failed. -- The laid-off parent asking whether their daughter can keep playing - without paying chose "Meld deg på laget" on the parents' page. - "Hjelp med avgift" is the club's side of it; the parent's side is - "can she keep playing". -- The driver with the big car chose "Støtt klubben i bygda" - (sponsor) over "Bli brukt der det trengs". Offering a car is - support; the volunteer/sponsor split is the club's, not theirs. - -`rate.txt` is the page-by-page rate; see `rate.json`. diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/aggregates.yaml b/vendor/trainer/runs/fotballklubb-2026-09-22/aggregates.yaml deleted file mode 100644 index d7831c2..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/aggregates.yaml +++ /dev/null @@ -1,87 +0,0 @@ -aggregates: -- bucket: avgiftssaker - initial: open - states: - avslatt: - event: avslatt - innvilget: - event: innvilget - open: - event: received - vurdert: - event: vurdert - transitions: - open: - - vurdert - - avslatt - vurdert: - - innvilget - - avslatt -- bucket: baneproblemer - initial: open - states: - open: - event: received - ordnet: - event: ordnet - tatt_tak_i: - event: tatt_tak_i - transitions: - open: - - tatt_tak_i - tatt_tak_i: - - ordnet -- bucket: frivillige - initial: open - states: - avslatt: - event: avslatt - kontaktet: - event: kontaktet - open: - event: received - plassert: - event: plassert - transitions: - kontaktet: - - plassert - - avslatt - open: - - kontaktet - - avslatt -- bucket: innmeldinger - initial: open - states: - betalt: - event: betalt - godkjent: - event: godkjent - open: - event: received - trukket: - event: trukket - transitions: - godkjent: - - betalt - - trukket - open: - - godkjent - - trukket -- bucket: sponsorer - initial: open - states: - avslatt: - event: avslatt - avtalt: - event: avtalt - i_dialog: - event: i_dialog - open: - event: received - transitions: - i_dialog: - - avtalt - - avslatt - open: - - i_dialog - - avslatt diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/answers-full.jsonl b/vendor/trainer/runs/fotballklubb-2026-09-22/answers-full.jsonl deleted file mode 100644 index da3805c..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/answers-full.jsonl +++ /dev/null @@ -1,16 +0,0 @@ -{"choice":"Er det på tide å melde inn?","confidence":0.95,"id":"ny-i-bygda@/"} -{"choice":"Meld deg på laget","confidence":0.95,"id":"ny-i-bygda@/foresatte"} -{"choice":"Er det på tide å melde inn?","confidence":0.95,"id":"tvillinger@/"} -{"choice":"Meld deg på laget","confidence":0.95,"id":"tvillinger@/foresatte"} -{"choice":"Er det på tide å melde inn?","confidence":0.95,"id":"alenefar@/"} -{"choice":"Hjelp med avgift","confidence":0.95,"id":"alenefar@/foresatte"} -{"choice":"Er det på tide å melde inn?","confidence":0.95,"id":"permittert@/"} -{"choice":"Meld deg på laget","confidence":0.85,"id":"permittert@/foresatte"} -{"choice":"Vil du bidra til klubben?","confidence":0.95,"id":"pensjonist@/"} -{"choice":"Bli brukt der det trengs","confidence":0.95,"id":"pensjonist@/bidra"} -{"choice":"Vil du bidra til klubben?","confidence":0.95,"id":"stor-bil@/"} -{"choice":"Støtt klubben i bygda","confidence":0.85,"id":"stor-bil@/bidra"} -{"choice":"Vil du bidra til klubben?","confidence":0.95,"id":"rorlegger@/"} -{"choice":"Støtt klubben i bygda","confidence":0.95,"id":"rorlegger@/bidra"} -{"choice":"Vil du bidra til klubben?","confidence":0.95,"id":"kafeen@/"} -{"choice":"Støtt klubben i bygda","confidence":0.95,"id":"kafeen@/bidra"} diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/answers-skim.jsonl b/vendor/trainer/runs/fotballklubb-2026-09-22/answers-skim.jsonl deleted file mode 100644 index db548fa..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/answers-skim.jsonl +++ /dev/null @@ -1,16 +0,0 @@ -{"choice":"Vil du bidra til klubben?","confidence":0.95,"id":"ny-i-bygda@/"} -{"choice":"Meld deg på laget","confidence":0.95,"id":"ny-i-bygda@/foresatte"} -{"choice":"Vil du bidra til klubben?","confidence":0.95,"id":"tvillinger@/"} -{"choice":"Meld deg på laget","confidence":0.95,"id":"tvillinger@/foresatte"} -{"choice":"Er det på tide å melde inn?","confidence":0.95,"id":"alenefar@/"} -{"choice":"Hjelp med avgift","confidence":0.95,"id":"alenefar@/foresatte"} -{"choice":"Vil du bidra til klubben?","confidence":0.95,"id":"permittert@/"} -{"choice":"Meld deg på laget","confidence":0.85,"id":"permittert@/foresatte"} -{"choice":"Vil du bidra til klubben?","confidence":0.95,"id":"pensjonist@/"} -{"choice":"Bli brukt der det trengs","confidence":0.95,"id":"pensjonist@/bidra"} -{"choice":"Vil du bidra til klubben?","confidence":0.95,"id":"stor-bil@/"} -{"choice":"Støtt klubben i bygda","confidence":0.85,"id":"stor-bil@/bidra"} -{"choice":"Vil du bidra til klubben?","confidence":0.95,"id":"rorlegger@/"} -{"choice":"Støtt klubben i bygda","confidence":0.95,"id":"rorlegger@/bidra"} -{"choice":"Vil du bidra til klubben?","confidence":0.95,"id":"kafeen@/"} -{"choice":"Støtt klubben i bygda","confidence":0.95,"id":"kafeen@/bidra"} diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/build.log b/vendor/trainer/runs/fotballklubb-2026-09-22/build.log deleted file mode 100644 index 7f59176..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/build.log +++ /dev/null @@ -1,20 +0,0 @@ -words: questions/bidra/index.yaml -words: questions/foresatte/index.yaml -words: questions/index.yaml -words: questions/kasserer/index.yaml -words: questions/received/avgiftssak.yaml -words: questions/received/frivillig.yaml -words: questions/received/innmelding.yaml -words: questions/received/sponsor.yaml -words: questions/styret/index.yaml -words: questions/trenere/baneproblem-sent.yaml -words: questions/trenere/baneproblem.yaml -words: questions/trenere/index.yaml -content repo written to runs/fotballklubb-2026-09-22 -OK: 12 question(s), 6 aggregate(s) valid -need "innmelding": / [Er det på tide å melde inn?] -> /foresatte [Meld deg på laget] -> "innmeldinger" -need "avgiftssak": / [Er det på tide å melde inn?] -> /foresatte [Hjelp med avgift] -> "avgiftssaker" -need "frivillig": / [Vil du bidra til klubben?] -> /bidra [Bli brukt der det trengs] -> "frivillige" -need "sponsor": / [Vil du bidra til klubben?] -> /bidra [Støtt klubben i bygda] -> "sponsorer" -need "baneproblem": /trenere/baneproblem [Rapporter baneproblem] -> "baneproblemer" -OK: 5 need(s) structurally met, 0 planned, 9 persona(s) diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/01-questions_bidra_index.yaml.md b/vendor/trainer/runs/fotballklubb-2026-09-22/llm/01-questions_bidra_index.yaml.md deleted file mode 100644 index fc9d90e..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/01-questions_bidra_index.yaml.md +++ /dev/null @@ -1,90 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/bidra/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "frivillig": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "hva_kan_du": "", - "navn": "", - "telefon": "" - } - }, - "sponsor": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "bedrift": "", - "hva_tenker_dere": "", - "kontaktperson": "", - "telefon": "" - } - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "description": "Er du interessert i å bli med på laget?", - "needs": { - "frivillig": { - "button": "Meldeg inn", - "description": "Hjelp til som trener, lagleder eller på dugnad", - "form_title": "Bli frivillig", - "heading": "Bli brukt der det trengs", - "labels": { - "hva_kan_du": "Hva kan du hjelpe med?", - "navn": "Navn", - "telefon": "Telefon" - } - }, - "sponsor": { - "button": "Kontakt oss", - "description": "Lett dialog om hva bedriften kan bidra med", - "form_title": "Sponsor-samtale", - "heading": "Støtt klubben i bygda", - "labels": { - "bedrift": "Bedrift", - "hva_tenker_dere": "Hva tenker dere om å støtte?", - "kontaktperson": "Kontaktperson", - "telefon": "Telefon" - } - } - }, - "question": "Hva kan du bidra med?" -} diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/02-questions_foresatte_index.yaml.md b/vendor/trainer/runs/fotballklubb-2026-09-22/llm/02-questions_foresatte_index.yaml.md deleted file mode 100644 index acb256b..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/02-questions_foresatte_index.yaml.md +++ /dev/null @@ -1,96 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/foresatte/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "avgiftssak": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "barnets_navn": "", - "foresatt": "", - "hva_gjelder_det": "", - "telefon": "" - } - }, - "innmelding": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "barnets_navn": "", - "epost": "", - "fodselsar": "", - "foresatt": "", - "spilt_for": "", - "telefon": "" - } - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "description": "Har du barn som vil spille fotball, eller hjelpe klubben på?", - "needs": { - "avgiftssak": { - "button": "Del opp avgift", - "description": "Vi hjelper deg å finne en løsning hvis du har vansker med å betale.", - "form_title": "Avgiftssak", - "heading": "Hjelp med avgift", - "labels": { - "barnets_navn": "Barns navn", - "foresatt": "Foresatt navn", - "hva_gjelder_det": "Hva gjelder?", - "telefon": "Telefon" - } - }, - "innmelding": { - "button": "Meld på", - "description": "Sett barnet på laget for sitt årskull. Treneren håndterer dette.", - "form_title": "Innmelding", - "heading": "Meld deg på laget", - "labels": { - "barnets_navn": "Barns navn", - "epost": "E-post", - "fodselsar": "Fødselsår", - "foresatt": "Foresatt navn", - "spilt_for": "Spiller for", - "telefon": "Telefon" - } - } - }, - "question": "Har du barn som vil spille fotball?" -} diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/03-questions_index.yaml.md b/vendor/trainer/runs/fotballklubb-2026-09-22/llm/03-questions_index.yaml.md deleted file mode 100644 index 96c2a82..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/03-questions_index.yaml.md +++ /dev/null @@ -1,66 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/index.yaml -It is the front door: the first page any visitor sees. `question` is the page's one question. Under `doors`, each entry is one alternative that leads to a page of its own for one kind of visitor: its heading must let that visitor recognise themselves from the heading alone. Under `needs`, each entry is one alternative with a form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "doors": { - "bidra": { - "button": "", - "description": "", - "heading": "" - }, - "foresatte": { - "button": "", - "description": "", - "heading": "" - } - }, - "needs": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "description": "Er du foreldre, trener eller representant fra lokal samfunn? Her finner du veien inn til det du trenger.", - "doors": { - "bidra": { - "button": "Hjelp klubben", - "description": "Som frivillig trener, lagleder, sjåfør eller støttende bedrift.", - "heading": "Vil du bidra til klubben?" - }, - "foresatte": { - "button": "Meld inn barnet", - "description": "For foreldre som vil at barnet skal spille på laget sitt årskull.", - "heading": "Er det på tide å melde inn?" - } - }, - "needs": {}, - "question": "Hva hjelper vi deg med i dag?" -} diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/04-questions_kasserer_index.yaml.md b/vendor/trainer/runs/fotballklubb-2026-09-22/llm/04-questions_kasserer_index.yaml.md deleted file mode 100644 index c9aca96..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/04-questions_kasserer_index.yaml.md +++ /dev/null @@ -1,62 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/kasserer/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "innmeldinger": { - "description": "", - "heading": "", - "moves": { - "godkjent->betalt": "betalt>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "buckets": { - "innmeldinger": { - "description": "Her finner du saker som trenger godkjennelse for at barnet kan spille.", - "heading": "Innmeldinger som trenger godkjennelse", - "moves": { - "godkjent->betalt": "Godkjenn og ta betalt" - } - } - }, - "confirm": "Lagre endringer", - "description": "Kassereren tar seg av innmeldinger, avgifter og frivillighet.", - "links": {}, - "question": "Hva trenger din oppmerksomhet i dag?" -} diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/05-questions_received_avgiftssak.yaml.md b/vendor/trainer/runs/fotballklubb-2026-09-22/llm/05-questions_received_avgiftssak.yaml.md deleted file mode 100644 index a2fd00b..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/05-questions_received_avgiftssak.yaml.md +++ /dev/null @@ -1,46 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/received/avgiftssak.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Tilbake", - "description": "Styret behandler avgiftssaker for å finne en løsning som passer dere.", - "next_description": "Når styret har vurdert sakken, vil dere få beskjed om resultatet.", - "next_heading": "Hva skjer neste?", - "question": "Hva skjer med avgiftssaken din?" -} diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/06-questions_received_frivillig.yaml.md b/vendor/trainer/runs/fotballklubb-2026-09-22/llm/06-questions_received_frivillig.yaml.md deleted file mode 100644 index 46d8a2f..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/06-questions_received_frivillig.yaml.md +++ /dev/null @@ -1,46 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/received/frivillig.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Tilbake", - "description": "Du har sendt inn en melding om at du vil bidra frivillig. Her ser du status og hva som skjer videre.", - "next_description": "Styret vil behandle meldingen din og finne et passende oppdrag for deg.", - "next_heading": "Behandling på vei", - "question": "Hva skjer nå med min melding?" -} diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/07-questions_received_innmelding.yaml.md b/vendor/trainer/runs/fotballklubb-2026-09-22/llm/07-questions_received_innmelding.yaml.md deleted file mode 100644 index 1f787c1..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/07-questions_received_innmelding.yaml.md +++ /dev/null @@ -1,46 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/received/innmelding.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Tilbake", - "description": "Du har sendt inn en innmeldingskjema for barnet ditt. Her finner du informasjon om hva som skjer videre.", - "next_description": "Så snart lagets trener har lest kjemaet, blir det vurdert om barnet får plass.", - "next_heading": "Venter på trenerens vurdering", - "question": "Hva skjer nå med innmeldingen?" -} diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/08-questions_received_sponsor.yaml.md b/vendor/trainer/runs/fotballklubb-2026-09-22/llm/08-questions_received_sponsor.yaml.md deleted file mode 100644 index fa1980c..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/08-questions_received_sponsor.yaml.md +++ /dev/null @@ -1,46 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/received/sponsor.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Tilbake", - "description": "Kontaktmeldingen din er mottatt av klubbens styret. De jobber for å få det løst raskt.", - "next_description": "Styret vil vurdere meldingen og ta kontakt med deg innen kort tid.", - "next_heading": "Hva skjer nå?", - "question": "Hva skjer med min melding?" -} diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/09-questions_styret_index.yaml.md b/vendor/trainer/runs/fotballklubb-2026-09-22/llm/09-questions_styret_index.yaml.md deleted file mode 100644 index 0af89f1..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/09-questions_styret_index.yaml.md +++ /dev/null @@ -1,124 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/styret/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "avgiftssaker": { - "description": "", - "heading": "", - "moves": { - "open->avslatt": "avslatt>", - "open->vurdert": "vurdert>", - "vurdert->avslatt": "avslatt>", - "vurdert->innvilget": "innvilget>" - } - }, - "baneproblemer": { - "description": "", - "heading": "", - "moves": { - "open->tatt_tak_i": "tatt_tak_i>", - "tatt_tak_i->ordnet": "ordnet>" - } - }, - "frivillige": { - "description": "", - "heading": "", - "moves": { - "kontaktet->avslatt": "avslatt>", - "kontaktet->plassert": "plassert>", - "open->avslatt": "avslatt>", - "open->kontaktet": "kontaktet>" - } - }, - "sponsorer": { - "description": "", - "heading": "", - "moves": { - "i_dialog->avslatt": "avslatt>", - "i_dialog->avtalt": "avtalt>", - "open->avslatt": "avslatt>", - "open->i_dialog": "i_dialog>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "buckets": { - "avgiftssaker": { - "description": "Her finner du saker rundt treningavgifter for barn. Du kan dele opp betalingen eller søke om å slippe unna.", - "heading": "Avgiftssaker", - "moves": { - "open->avslatt": "Avslutt", - "open->vurdert": "Vurdert", - "vurdert->avslatt": "Avslutt", - "vurdert->innvilget": "Innvilget" - } - }, - "baneproblemer": { - "description": "Meld når noe på anlegget trenger oppmerksomhet. Styret tar imeldingen og sørger for at det blir ordnet.", - "heading": "Baneproblemer", - "moves": { - "open->tatt_tak_i": "Tatt tak i", - "tatt_tak_i->ordnet": "Ordet" - } - }, - "frivillige": { - "description": "Her kan du melde deg som frivillig hjelper. Styret finner ut hvor trengs hjelp, f.eks. som trener, lagleder, sjåfør eller på dugnad.", - "heading": "Frivillige", - "moves": { - "kontaktet->avslatt": "Avslutt", - "kontaktet->plassert": "Plassert", - "open->avslatt": "Avslutt", - "open->kontaktet": "Kontakt" - } - }, - "sponsorer": { - "description": "Her håndteres samarbeidet med bedrifter i bygda som støtter klubben. Du finner hva de kan bidra med og avtaler sammen.", - "heading": "Sponsorer", - "moves": { - "i_dialog->avslatt": "Avslutt", - "i_dialog->avtalt": "Avtalt", - "open->avslatt": "Avslutt", - "open->i_dialog": "Start dialog" - } - } - }, - "confirm": "Bekreft", - "description": "Her kan du se og behandle saker som trenger oppmerksomhet fra styret.", - "links": {}, - "question": "Hva trenger din oppmerksomhet?" -} diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/10-questions_trenere_baneproblem-sent.yaml.md b/vendor/trainer/runs/fotballklubb-2026-09-22/llm/10-questions_trenere_baneproblem-sent.yaml.md deleted file mode 100644 index 9aaae6b..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/10-questions_trenere_baneproblem-sent.yaml.md +++ /dev/null @@ -1,46 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/trenere/baneproblem-sent.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Tilbake", - "description": "Du har meldt et problem med banen. Her ser du hvem som tar vare på meldingen og hva som skjer videre.", - "next_description": "Styret vil bli varslet og jobbe for å få rettet problemet.", - "next_heading": "Så snart styret har sett på det", - "question": "Hvem tar vare på meldingen?" -} diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/11-questions_trenere_baneproblem.yaml.md b/vendor/trainer/runs/fotballklubb-2026-09-22/llm/11-questions_trenere_baneproblem.yaml.md deleted file mode 100644 index 279ffef..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/11-questions_trenere_baneproblem.yaml.md +++ /dev/null @@ -1,56 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/trenere/baneproblem.yaml -It is a page only one role inside the business can open, holding one form. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "hva": "", - "hvor": "" - }, - "page_description": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "button": "Send melding", - "description": "Fortell oss hva du har sett eller mangler på anlegget, så tar vi vare på meldingen.", - "form_title": "Meld baneproblem", - "heading": "Rapporter baneproblem", - "labels": { - "hva": "Hva er problemet?", - "hvor": "Hvor på anlegget?" - }, - "page_description": "Her kan du rapportere et problem med fotballanlegget.", - "question": "Er det noe på anlegget som trenger oppmerksomhet?" -} diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/12-questions_trenere_index.yaml.md b/vendor/trainer/runs/fotballklubb-2026-09-22/llm/12-questions_trenere_index.yaml.md deleted file mode 100644 index 2b5bda8..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/llm/12-questions_trenere_index.yaml.md +++ /dev/null @@ -1,78 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/trenere/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "innmeldinger": { - "description": "", - "heading": "", - "moves": { - "godkjent->trukket": "trukket>", - "open->godkjent": "godkjent>", - "open->trukket": "trukket>" - } - } - }, - "confirm": "", - "description": "", - "links": { - "baneproblem": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "buckets": { - "innmeldinger": { - "description": "Her finner du saker om å få med barnet på laget. Styring og økonomi håndteres av trenerne og styret.", - "heading": "Innmelding og lagplass", - "moves": { - "godkjent->trukket": "Trukket ut", - "open->godkjent": "Godkjent", - "open->trukket": "Trukket ut" - } - } - }, - "confirm": "Lagre", - "description": "Side for trenere som trenger oversikt over saker og handlinger.", - "links": { - "baneproblem": { - "button": "Registrer", - "description": "Meld deg inn om noe som trenger oppmerksomhet på anlegget.", - "heading": "Baneproblem" - } - }, - "question": "Hva trenger du hjelp med i dag?" -} diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/model.json b/vendor/trainer/runs/fotballklubb-2026-09-22/model.json deleted file mode 100644 index 265e726..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/model.json +++ /dev/null @@ -1,664 +0,0 @@ -{ - "buckets": { - "avgiftssaker": { - "desks": [ - { - "group": "styret", - "moves": [ - { - "from": "open", - "label": "Vurdert", - "to": "vurdert" - }, - { - "from": "open", - "label": "Avslutt", - "to": "avslatt" - }, - { - "from": "vurdert", - "label": "Innvilget", - "to": "innvilget" - }, - { - "from": "vurdert", - "label": "Avslutt", - "to": "avslatt" - } - ], - "page": "/styret" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "vurdert", - "avslatt" - ], - "vurdert": [ - "innvilget", - "avslatt" - ] - } - }, - "baneproblemer": { - "desks": [ - { - "group": "styret", - "moves": [ - { - "from": "open", - "label": "Tatt tak i", - "to": "tatt_tak_i" - }, - { - "from": "tatt_tak_i", - "label": "Ordet", - "to": "ordnet" - } - ], - "page": "/styret" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "tatt_tak_i" - ], - "tatt_tak_i": [ - "ordnet" - ] - } - }, - "frivillige": { - "desks": [ - { - "group": "styret", - "moves": [ - { - "from": "kontaktet", - "label": "Plassert", - "to": "plassert" - }, - { - "from": "kontaktet", - "label": "Avslutt", - "to": "avslatt" - }, - { - "from": "open", - "label": "Kontakt", - "to": "kontaktet" - }, - { - "from": "open", - "label": "Avslutt", - "to": "avslatt" - } - ], - "page": "/styret" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "kontaktet": [ - "plassert", - "avslatt" - ], - "open": [ - "kontaktet", - "avslatt" - ] - } - }, - "innmeldinger": { - "desks": [ - { - "group": "kasserer", - "moves": [ - { - "from": "godkjent", - "label": "Godkjenn og ta betalt", - "to": "betalt" - } - ], - "page": "/kasserer" - }, - { - "group": "trenere", - "moves": [ - { - "from": "godkjent", - "label": "Trukket ut", - "to": "trukket" - }, - { - "from": "open", - "label": "Godkjent", - "to": "godkjent" - }, - { - "from": "open", - "label": "Trukket ut", - "to": "trukket" - } - ], - "page": "/trenere" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "godkjent": [ - "betalt", - "trukket" - ], - "open": [ - "godkjent", - "trukket" - ] - } - }, - "sponsorer": { - "desks": [ - { - "group": "styret", - "moves": [ - { - "from": "i_dialog", - "label": "Avtalt", - "to": "avtalt" - }, - { - "from": "i_dialog", - "label": "Avslutt", - "to": "avslatt" - }, - { - "from": "open", - "label": "Start dialog", - "to": "i_dialog" - }, - { - "from": "open", - "label": "Avslutt", - "to": "avslatt" - } - ], - "page": "/styret" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "i_dialog": [ - "avtalt", - "avslatt" - ], - "open": [ - "i_dialog", - "avslatt" - ] - } - } - }, - "needs": [ - { - "done_when": [ - "betalt", - "trukket" - ], - "enters_as": null, - "handled_by": "trenere", - "id": "innmelding", - "lands_in": "innmeldinger", - "steps": [ - { - "alternative": "Er det på tide å melde inn?", - "expect": [ - "Er det på tide å melde inn?" - ], - "fields": [], - "options": [ - { - "description": "For foreldre som vil at barnet skal spille på laget sitt årskull.", - "name": "Er det på tide å melde inn?" - }, - { - "description": "Som frivillig trener, lagleder, sjåfør eller støttende bedrift.", - "name": "Vil du bidra til klubben?" - } - ], - "page": "/", - "question": "Hva hjelper vi deg med i dag?" - }, - { - "alternative": "Meld deg på laget", - "expect": [ - "Meld deg på laget" - ], - "fields": [ - { - "label": "Barns navn", - "name": "barnets_navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Fødselsår", - "name": "fodselsar", - "optional": false, - "options": [ - "2010", - "2011", - "2012", - "2013", - "2014", - "2015", - "2016", - "2017", - "2018", - "2019", - "2020" - ], - "type": "select" - }, - { - "label": "Foresatt navn", - "name": "foresatt", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Telefon", - "name": "telefon", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "E-post", - "name": "epost", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Spiller for", - "name": "spilt_for", - "optional": true, - "options": [], - "type": "text" - } - ], - "options": [ - { - "description": "Sett barnet på laget for sitt årskull. Treneren håndterer dette.", - "name": "Meld deg på laget" - }, - { - "description": "Vi hjelper deg å finne en løsning hvis du har vansker med å betale.", - "name": "Hjelp med avgift" - } - ], - "page": "/foresatte", - "question": "Har du barn som vil spille fotball?" - } - ], - "success": [ - "betalt" - ], - "wants": "at barnet får plass på laget for sitt årskull", - "who": "en forelder som vil ha ungen med på et lag" - }, - { - "done_when": [ - "innvilget", - "avslatt" - ], - "enters_as": null, - "handled_by": "styret", - "id": "avgiftssak", - "lands_in": "avgiftssaker", - "steps": [ - { - "alternative": "Er det på tide å melde inn?", - "expect": [ - "Er det på tide å melde inn?" - ], - "fields": [], - "options": [ - { - "description": "For foreldre som vil at barnet skal spille på laget sitt årskull.", - "name": "Er det på tide å melde inn?" - }, - { - "description": "Som frivillig trener, lagleder, sjåfør eller støttende bedrift.", - "name": "Vil du bidra til klubben?" - } - ], - "page": "/", - "question": "Hva hjelper vi deg med i dag?" - }, - { - "alternative": "Hjelp med avgift", - "expect": [ - "Hjelp med avgift" - ], - "fields": [ - { - "label": "Barns navn", - "name": "barnets_navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Foresatt navn", - "name": "foresatt", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hva gjelder?", - "name": "hva_gjelder_det", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "Telefon", - "name": "telefon", - "optional": true, - "options": [], - "type": "tel" - } - ], - "options": [ - { - "description": "Sett barnet på laget for sitt årskull. Treneren håndterer dette.", - "name": "Meld deg på laget" - }, - { - "description": "Vi hjelper deg å finne en løsning hvis du har vansker med å betale.", - "name": "Hjelp med avgift" - } - ], - "page": "/foresatte", - "question": "Har du barn som vil spille fotball?" - } - ], - "success": [ - "innvilget" - ], - "wants": "å dele den opp, eller slippe den", - "who": "en forelder som sliter med treningsavgiften" - }, - { - "done_when": [ - "plassert", - "avslatt" - ], - "enters_as": null, - "handled_by": "styret", - "id": "frivillig", - "lands_in": "frivillige", - "steps": [ - { - "alternative": "Vil du bidra til klubben?", - "expect": [ - "Vil du bidra til klubben?" - ], - "fields": [], - "options": [ - { - "description": "For foreldre som vil at barnet skal spille på laget sitt årskull.", - "name": "Er det på tide å melde inn?" - }, - { - "description": "Som frivillig trener, lagleder, sjåfør eller støttende bedrift.", - "name": "Vil du bidra til klubben?" - } - ], - "page": "/", - "question": "Hva hjelper vi deg med i dag?" - }, - { - "alternative": "Bli brukt der det trengs", - "expect": [ - "Bli brukt der det trengs" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Telefon", - "name": "telefon", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "Hva kan du hjelpe med?", - "name": "hva_kan_du", - "optional": false, - "options": [ - "Trene et lag", - "Være lagleder", - "Kjøre til kamper", - "Dugnad", - "Annet" - ], - "type": "select" - } - ], - "options": [ - { - "description": "Hjelp til som trener, lagleder eller på dugnad", - "name": "Bli brukt der det trengs" - }, - { - "description": "Lett dialog om hva bedriften kan bidra med", - "name": "Støtt klubben i bygda" - } - ], - "page": "/bidra", - "question": "Hva kan du bidra med?" - } - ], - "success": [ - "plassert" - ], - "wants": "å bli brukt der det trengs", - "who": "en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad" - }, - { - "done_when": [ - "avtalt", - "avslatt" - ], - "enters_as": null, - "handled_by": "styret", - "id": "sponsor", - "lands_in": "sponsorer", - "steps": [ - { - "alternative": "Vil du bidra til klubben?", - "expect": [ - "Vil du bidra til klubben?" - ], - "fields": [], - "options": [ - { - "description": "For foreldre som vil at barnet skal spille på laget sitt årskull.", - "name": "Er det på tide å melde inn?" - }, - { - "description": "Som frivillig trener, lagleder, sjåfør eller støttende bedrift.", - "name": "Vil du bidra til klubben?" - } - ], - "page": "/", - "question": "Hva hjelper vi deg med i dag?" - }, - { - "alternative": "Støtt klubben i bygda", - "expect": [ - "Støtt klubben i bygda" - ], - "fields": [ - { - "label": "Bedrift", - "name": "bedrift", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Kontaktperson", - "name": "kontaktperson", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Telefon", - "name": "telefon", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "Hva tenker dere om å støtte?", - "name": "hva_tenker_dere", - "optional": true, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Hjelp til som trener, lagleder eller på dugnad", - "name": "Bli brukt der det trengs" - }, - { - "description": "Lett dialog om hva bedriften kan bidra med", - "name": "Støtt klubben i bygda" - } - ], - "page": "/bidra", - "question": "Hva kan du bidra med?" - } - ], - "success": [ - "avtalt" - ], - "wants": "en prat om hva de kan bidra med, og en avtale", - "who": "en bedrift i bygda som vil støtte klubben" - }, - { - "done_when": [ - "ordnet" - ], - "enters_as": "trenere", - "handled_by": "styret", - "id": "baneproblem", - "lands_in": "baneproblemer", - "steps": [ - { - "alternative": "Rapporter baneproblem", - "expect": [ - "Rapporter baneproblem" - ], - "fields": [ - { - "label": "Hvor på anlegget?", - "name": "hvor", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hva er problemet?", - "name": "hva", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Fortell oss hva du har sett eller mangler på anlegget, så tar vi vare på meldingen.", - "name": "Rapporter baneproblem" - } - ], - "page": "/trenere/baneproblem", - "question": "Er det noe på anlegget som trenger oppmerksomhet?" - } - ], - "success": [ - "ordnet" - ], - "wants": "at styret får vite det og ordner det", - "who": "en trener som ser at noe på anlegget ikke er i orden" - } - ], - "personas": [ - { - "id": "ny-i-bygda", - "need": "innmelding", - "text": "Vi flyttet hit i sommer og sønnen vår på ni har spilt fotball før. Hvordan får vi ham med på et lag her?" - }, - { - "id": "tvillinger", - "need": "innmelding", - "text": "Jeg har tvillingjenter på sju som maser om å begynne. Er det plass, og hva koster det?" - }, - { - "id": "alenefar", - "need": "avgiftssak", - "text": "Jeg er alene med tre unger og treningsavgiften for alle tre blir for mye på en gang. Går det an å dele den opp?" - }, - { - "id": "permittert", - "need": "avgiftssak", - "text": "Jeg ble permittert i vinter. Kan dattera mi fortsette å spille selv om vi ikke klarer avgiften akkurat nå?" - }, - { - "id": "pensjonist", - "need": "frivillig", - "text": "Jeg er pensjonert og spilte selv i mange år. Har dere bruk for en som kan ta de minste et par kvelder i uka?" - }, - { - "id": "stor-bil", - "need": "frivillig", - "text": "Jeg kan ikke trene noen, men jeg har stor bil og kan kjøre til bortekamper." - }, - { - "id": "rorlegger", - "need": "sponsor", - "text": "Jeg driver rørleggerfirma her i bygda og vil gjerne ha logoen vår på draktene til et lag. Hvem snakker jeg med?" - }, - { - "id": "kafeen", - "need": "sponsor", - "text": "Vi har kafé i sentrum og kan bidra med noe til cupen i mai, kanskje vafler eller litt penger." - }, - { - "id": "lyset-slukker", - "need": "baneproblem", - "text": "Lyset på kunstgresset slår seg av halv åtte og vi trener til åtte. Ungene løper i mørket." - } - ] -} \ No newline at end of file diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/needs.yaml b/vendor/trainer/runs/fotballklubb-2026-09-22/needs.yaml deleted file mode 100644 index 26691fc..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/needs.yaml +++ /dev/null @@ -1,125 +0,0 @@ -needs: -- also_moved_by: - - kasserer - done_when: - - betalt - - trukket - enters: / - handled_by: trenere - id: innmelding - lands_in: innmeldinger - max_fields: 5 - max_steps: 2 - stages: - - open - - godkjent - - betalt - - trukket - success: - - betalt - via: Er det på tide å melde inn? - wants: at barnet får plass på laget for sitt årskull - who: en forelder som vil ha ungen med på et lag -- done_when: - - innvilget - - avslatt - enters: / - handled_by: styret - id: avgiftssak - lands_in: avgiftssaker - max_fields: 3 - max_steps: 2 - stages: - - open - - vurdert - - innvilget - - avslatt - success: - - innvilget - via: Er det på tide å melde inn? - wants: å dele den opp, eller slippe den - who: en forelder som sliter med treningsavgiften -- done_when: - - plassert - - avslatt - enters: / - handled_by: styret - id: frivillig - lands_in: frivillige - max_fields: 3 - max_steps: 2 - stages: - - open - - kontaktet - - plassert - - avslatt - success: - - plassert - via: Vil du bidra til klubben? - wants: å bli brukt der det trengs - who: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad -- done_when: - - avtalt - - avslatt - enters: / - handled_by: styret - id: sponsor - lands_in: sponsorer - max_fields: 3 - max_steps: 2 - stages: - - open - - i_dialog - - avtalt - - avslatt - success: - - avtalt - via: Vil du bidra til klubben? - wants: en prat om hva de kan bidra med, og en avtale - who: en bedrift i bygda som vil støtte klubben -- done_when: - - ordnet - enters: /trenere/baneproblem - enters_as: trenere - handled_by: styret - id: baneproblem - lands_in: baneproblemer - max_fields: 2 - max_steps: 1 - stages: - - open - - tatt_tak_i - - ordnet - success: - - ordnet - via: Rapporter baneproblem - wants: at styret får vite det og ordner det - who: en trener som ser at noe på anlegget ikke er i orden -personas: -- id: ny-i-bygda - need: innmelding - text: Vi flyttet hit i sommer og sønnen vår på ni har spilt fotball før. Hvordan får vi ham med på et lag her? -- id: tvillinger - need: innmelding - text: Jeg har tvillingjenter på sju som maser om å begynne. Er det plass, og hva koster det? -- id: alenefar - need: avgiftssak - text: Jeg er alene med tre unger og treningsavgiften for alle tre blir for mye på en gang. Går det an å dele den opp? -- id: permittert - need: avgiftssak - text: Jeg ble permittert i vinter. Kan dattera mi fortsette å spille selv om vi ikke klarer avgiften akkurat nå? -- id: pensjonist - need: frivillig - text: Jeg er pensjonert og spilte selv i mange år. Har dere bruk for en som kan ta de minste et par kvelder i uka? -- id: stor-bil - need: frivillig - text: Jeg kan ikke trene noen, men jeg har stor bil og kan kjøre til bortekamper. -- id: rorlegger - need: sponsor - text: Jeg driver rørleggerfirma her i bygda og vil gjerne ha logoen vår på draktene til et lag. Hvem snakker jeg med? -- id: kafeen - need: sponsor - text: Vi har kafé i sentrum og kan bidra med noe til cupen i mai, kanskje vafler eller litt penger. -- id: lyset-slukker - need: baneproblem - text: Lyset på kunstgresset slår seg av halv åtte og vi trener til åtte. Ungene løper i mørket. diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/bidra/index.yaml b/vendor/trainer/runs/fotballklubb-2026-09-22/questions/bidra/index.yaml deleted file mode 100644 index 8ae09b4..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/bidra/index.yaml +++ /dev/null @@ -1,52 +0,0 @@ -alternatives: -- action: /received/frivillig - consequence: - - Meldeg inn - description: Hjelp til som trener, lagleder eller på dugnad - features: - - name: Bli frivillig - requirements: - - label: Navn - name: navn - type: text - - label: Telefon - name: telefon - type: tel - - label: Hva kan du hjelpe med? - name: hva_kan_du - options: - - Trene et lag - - Være lagleder - - Kjøre til kamper - - Dugnad - - Annet - type: select - name: Bli brukt der det trengs - record_as: frivillige -- action: /received/sponsor - consequence: - - Kontakt oss - description: Lett dialog om hva bedriften kan bidra med - features: - - name: Sponsor-samtale - requirements: - - label: Bedrift - name: bedrift - type: text - - label: Kontaktperson - name: kontaktperson - type: text - - label: Telefon - name: telefon - type: tel - - label: Hva tenker dere om å støtte? - name: hva_tenker_dere - optional: true - type: textarea - name: Støtt klubben i bygda - record_as: sponsorer -description: Er du interessert i å bli med på laget? -name: Hva kan du bidra med? -responsible: - contact: kari@liail.example - name: Kari Lien diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/foresatte/index.yaml b/vendor/trainer/runs/fotballklubb-2026-09-22/questions/foresatte/index.yaml deleted file mode 100644 index 6a56add..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/foresatte/index.yaml +++ /dev/null @@ -1,68 +0,0 @@ -alternatives: -- action: /received/innmelding - consequence: - - Meld på - description: Sett barnet på laget for sitt årskull. Treneren håndterer dette. - features: - - name: Innmelding - requirements: - - label: Barns navn - name: barnets_navn - type: text - - label: Fødselsår - name: fodselsar - options: - - '2010' - - '2011' - - '2012' - - '2013' - - '2014' - - '2015' - - '2016' - - '2017' - - '2018' - - '2019' - - '2020' - type: select - - label: Foresatt navn - name: foresatt - type: text - - label: Telefon - name: telefon - type: tel - - label: E-post - name: epost - type: email - - label: Spiller for - name: spilt_for - optional: true - type: text - name: Meld deg på laget - record_as: innmeldinger -- action: /received/avgiftssak - consequence: - - Del opp avgift - description: Vi hjelper deg å finne en løsning hvis du har vansker med å betale. - features: - - name: Avgiftssak - requirements: - - label: Barns navn - name: barnets_navn - type: text - - label: Foresatt navn - name: foresatt - type: text - - label: Hva gjelder? - name: hva_gjelder_det - type: textarea - - label: Telefon - name: telefon - optional: true - type: tel - name: Hjelp med avgift - record_as: avgiftssaker -description: Har du barn som vil spille fotball, eller hjelpe klubben på? -name: Har du barn som vil spille fotball? -responsible: - contact: kari@liail.example - name: Kari Lien diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/index.yaml b/vendor/trainer/runs/fotballklubb-2026-09-22/questions/index.yaml deleted file mode 100644 index 5fe098c..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/index.yaml +++ /dev/null @@ -1,16 +0,0 @@ -alternatives: -- action: /foresatte - consequence: - - Meld inn barnet - description: For foreldre som vil at barnet skal spille på laget sitt årskull. - name: Er det på tide å melde inn? -- action: /bidra - consequence: - - Hjelp klubben - description: Som frivillig trener, lagleder, sjåfør eller støttende bedrift. - name: Vil du bidra til klubben? -description: Er du foreldre, trener eller representant fra lokal samfunn? Her finner du veien inn til det du trenger. -name: Hva hjelper vi deg med i dag? -responsible: - contact: kari@liail.example - name: Kari Lien diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/kasserer/_section.yaml b/vendor/trainer/runs/fotballklubb-2026-09-22/questions/kasserer/_section.yaml deleted file mode 100644 index 2f8af2f..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/kasserer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: kasserer diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/kasserer/index.yaml b/vendor/trainer/runs/fotballklubb-2026-09-22/questions/kasserer/index.yaml deleted file mode 100644 index 6c5f663..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/kasserer/index.yaml +++ /dev/null @@ -1,23 +0,0 @@ -alternatives: -- action: /kasserer - consequence: - - Lagre endringer - description: Her finner du saker som trenger godkjennelse for at barnet kan spille. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: innmeldinger - kind: kv - transitions: - - from: godkjent - label: Godkjenn og ta betalt - to: betalt - name: Innmeldinger som trenger godkjennelse -description: Kassereren tar seg av innmeldinger, avgifter og frivillighet. -name: Hva trenger din oppmerksomhet i dag? -responsible: - contact: kari@liail.example - name: Kari Lien diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/received/avgiftssak.yaml b/vendor/trainer/runs/fotballklubb-2026-09-22/questions/received/avgiftssak.yaml deleted file mode 100644 index 79e8966..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/received/avgiftssak.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Når styret har vurdert sakken, vil dere få beskjed om resultatet. - name: Hva skjer neste? -- action: / - consequence: - - Tilbake - description: '' - name: Tilbake -description: Styret behandler avgiftssaker for å finne en løsning som passer dere. -name: Hva skjer med avgiftssaken din? diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/received/frivillig.yaml b/vendor/trainer/runs/fotballklubb-2026-09-22/questions/received/frivillig.yaml deleted file mode 100644 index 1fa6689..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/received/frivillig.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Styret vil behandle meldingen din og finne et passende oppdrag for deg. - name: Behandling på vei -- action: / - consequence: - - Tilbake - description: '' - name: Tilbake -description: Du har sendt inn en melding om at du vil bidra frivillig. Her ser du status og hva som skjer videre. -name: Hva skjer nå med min melding? diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/received/innmelding.yaml b/vendor/trainer/runs/fotballklubb-2026-09-22/questions/received/innmelding.yaml deleted file mode 100644 index 4f8ab4e..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/received/innmelding.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Så snart lagets trener har lest kjemaet, blir det vurdert om barnet får plass. - name: Venter på trenerens vurdering -- action: / - consequence: - - Tilbake - description: '' - name: Tilbake -description: Du har sendt inn en innmeldingskjema for barnet ditt. Her finner du informasjon om hva som skjer videre. -name: Hva skjer nå med innmeldingen? diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/received/sponsor.yaml b/vendor/trainer/runs/fotballklubb-2026-09-22/questions/received/sponsor.yaml deleted file mode 100644 index 20cd845..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/received/sponsor.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Styret vil vurdere meldingen og ta kontakt med deg innen kort tid. - name: Hva skjer nå? -- action: / - consequence: - - Tilbake - description: '' - name: Tilbake -description: Kontaktmeldingen din er mottatt av klubbens styret. De jobber for å få det løst raskt. -name: Hva skjer med min melding? diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/styret/_section.yaml b/vendor/trainer/runs/fotballklubb-2026-09-22/questions/styret/_section.yaml deleted file mode 100644 index 5a34160..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/styret/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: styret diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/styret/index.yaml b/vendor/trainer/runs/fotballklubb-2026-09-22/questions/styret/index.yaml deleted file mode 100644 index 9dbeed6..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/styret/index.yaml +++ /dev/null @@ -1,104 +0,0 @@ -alternatives: -- action: /styret - consequence: - - Bekreft - description: Her finner du saker rundt treningavgifter for barn. Du kan dele opp betalingen eller søke om å slippe unna. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: avgiftssaker - kind: kv - transitions: - - from: open - label: Vurdert - to: vurdert - - from: open - label: Avslutt - to: avslatt - - from: vurdert - label: Innvilget - to: innvilget - - from: vurdert - label: Avslutt - to: avslatt - name: Avgiftssaker -- action: /styret - consequence: - - Bekreft - description: Meld når noe på anlegget trenger oppmerksomhet. Styret tar imeldingen og sørger for at det blir ordnet. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: baneproblemer - kind: kv - transitions: - - from: open - label: Tatt tak i - to: tatt_tak_i - - from: tatt_tak_i - label: Ordet - to: ordnet - name: Baneproblemer -- action: /styret - consequence: - - Bekreft - description: Her kan du melde deg som frivillig hjelper. Styret finner ut hvor trengs hjelp, f.eks. som trener, lagleder, sjåfør eller på dugnad. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: frivillige - kind: kv - transitions: - - from: kontaktet - label: Plassert - to: plassert - - from: kontaktet - label: Avslutt - to: avslatt - - from: open - label: Kontakt - to: kontaktet - - from: open - label: Avslutt - to: avslatt - name: Frivillige -- action: /styret - consequence: - - Bekreft - description: Her håndteres samarbeidet med bedrifter i bygda som støtter klubben. Du finner hva de kan bidra med og avtaler sammen. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: sponsorer - kind: kv - transitions: - - from: i_dialog - label: Avtalt - to: avtalt - - from: i_dialog - label: Avslutt - to: avslatt - - from: open - label: Start dialog - to: i_dialog - - from: open - label: Avslutt - to: avslatt - name: Sponsorer -description: Her kan du se og behandle saker som trenger oppmerksomhet fra styret. -name: Hva trenger din oppmerksomhet? -responsible: - contact: kari@liail.example - name: Kari Lien diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/trenere/_section.yaml b/vendor/trainer/runs/fotballklubb-2026-09-22/questions/trenere/_section.yaml deleted file mode 100644 index 03a1f29..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/trenere/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: trenere diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/trenere/baneproblem-sent.yaml b/vendor/trainer/runs/fotballklubb-2026-09-22/questions/trenere/baneproblem-sent.yaml deleted file mode 100644 index 5c15320..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/trenere/baneproblem-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Styret vil bli varslet og jobbe for å få rettet problemet. - name: Så snart styret har sett på det -- action: /trenere - consequence: - - Tilbake - description: '' - name: Tilbake -description: Du har meldt et problem med banen. Her ser du hvem som tar vare på meldingen og hva som skjer videre. -name: Hvem tar vare på meldingen? diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/trenere/baneproblem.yaml b/vendor/trainer/runs/fotballklubb-2026-09-22/questions/trenere/baneproblem.yaml deleted file mode 100644 index 91e3d69..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/trenere/baneproblem.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- action: /trenere/baneproblem-sent - consequence: - - Send melding - description: Fortell oss hva du har sett eller mangler på anlegget, så tar vi vare på meldingen. - features: - - name: Meld baneproblem - requirements: - - label: Hvor på anlegget? - name: hvor - type: text - - label: Hva er problemet? - name: hva - type: textarea - name: Rapporter baneproblem - record_as: baneproblemer -description: Her kan du rapportere et problem med fotballanlegget. -followup: false -name: Er det noe på anlegget som trenger oppmerksomhet? -responsible: - contact: kari@liail.example - name: Kari Lien diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/trenere/index.yaml b/vendor/trainer/runs/fotballklubb-2026-09-22/questions/trenere/index.yaml deleted file mode 100644 index b19b30e..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/questions/trenere/index.yaml +++ /dev/null @@ -1,34 +0,0 @@ -alternatives: -- action: /trenere - consequence: - - Lagre - description: Her finner du saker om å få med barnet på laget. Styring og økonomi håndteres av trenerne og styret. - features: - - description: '' - name: '' - resource: - requires_group: trenere - source: - bucket: innmeldinger - kind: kv - transitions: - - from: godkjent - label: Trukket ut - to: trukket - - from: open - label: Godkjent - to: godkjent - - from: open - label: Trukket ut - to: trukket - name: Innmelding og lagplass -- action: /trenere/baneproblem - consequence: - - Registrer - description: Meld deg inn om noe som trenger oppmerksomhet på anlegget. - name: Baneproblem -description: Side for trenere som trenger oversikt over saker og handlinger. -name: Hva trenger du hjelp med i dag? -responsible: - contact: kari@liail.example - name: Kari Lien diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/rate.json b/vendor/trainer/runs/fotballklubb-2026-09-22/rate.json deleted file mode 100644 index 3684637..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/rate.json +++ /dev/null @@ -1,207 +0,0 @@ -{ - "avgiftssak": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 34.925925925925924, - "options": 2, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 33.361635220125784, - "options": 2, - "overloaded": false, - "page": "/foresatte", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "baneproblem": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 30.84285714285714, - "options": 1, - "overloaded": false, - "page": "/trenere/baneproblem", - "personas": 1, - "required_fields": 2, - "understanding": { - "asked": 1, - "next": 1, - "which": 1 - } - } - ], - "steps": 1 - }, - "frivillig": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 34.925925925925924, - "options": 2, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 1, - "next": 0, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 23.814814814814817, - "options": 2, - "overloaded": false, - "page": "/bidra", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "innmelding": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 34.925925925925924, - "options": 2, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 26.46031746031746, - "options": 2, - "overloaded": false, - "page": "/foresatte", - "personas": 2, - "required_fields": 5, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "sponsor": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 34.925925925925924, - "options": 2, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 1, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 1, - "next": 0, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 24.666666666666668, - "options": 2, - "overloaded": false, - "page": "/bidra", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/rate.txt b/vendor/trainer/runs/fotballklubb-2026-09-22/rate.txt deleted file mode 100644 index 79e18ff..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/rate.txt +++ /dev/null @@ -1,10 +0,0 @@ -need LIX which asked next gutted twin says page load -innmelding @/ 35 easy 2/2 0/2 - 0/0/- ok 2 options, 0 required -innmelding @/foresatte 26 very easy 2/2 2/2 2/2 0/0/0 ok 2 options, 5 required -avgiftssak @/ 35 easy 2/2 0/2 - 0/0/- ok 2 options, 0 required -avgiftssak @/foresatte 33 easy 2/2 2/2 2/2 0/0/0 ok 2 options, 3 required -frivillig @/ 35 easy 2/2 0/2 - 0/0/- ok 2 options, 0 required -frivillig @/bidra 24 very easy 2/2 2/2 2/2 0/1/0 FAILED: asked 2 options, 3 required -sponsor @/ 35 easy 2/2 1/2 - 0/0/- ok 2 options, 0 required -sponsor @/bidra 25 very easy 2/2 2/2 2/2 0/1/0 FAILED: asked 2 options, 3 required -baneproblem 31 easy 1/1 1/1 1/1 0/0/0 ok 1 options, 2 required diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/score-full.txt b/vendor/trainer/runs/fotballklubb-2026-09-22/score-full.txt deleted file mode 100644 index b504f11..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/score-full.txt +++ /dev/null @@ -1,3 +0,0 @@ -MISROUTE: permittert@/foresatte: picked "Meld deg på laget" (0.85), the need is met by ["Hjelp med avgift"] -MISROUTE: stor-bil@/bidra: picked "Støtt klubben i bygda" (0.85), the need is met by ["Bli brukt der det trengs"] -wording: 14/16 routed right (88%) diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/score-skim.txt b/vendor/trainer/runs/fotballklubb-2026-09-22/score-skim.txt deleted file mode 100644 index b9b7344..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/score-skim.txt +++ /dev/null @@ -1,6 +0,0 @@ -MISROUTE: ny-i-bygda@/: picked "Vil du bidra til klubben?" (0.95), the need is met by ["Er det på tide å melde inn?"] -MISROUTE: tvillinger@/: picked "Vil du bidra til klubben?" (0.95), the need is met by ["Er det på tide å melde inn?"] -MISROUTE: permittert@/: picked "Vil du bidra til klubben?" (0.95), the need is met by ["Er det på tide å melde inn?"] -MISROUTE: permittert@/foresatte: picked "Meld deg på laget" (0.85), the need is met by ["Hjelp med avgift"] -MISROUTE: stor-bil@/bidra: picked "Støtt klubben i bygda" (0.85), the need is met by ["Bli brukt der det trengs"] -wording: 11/16 routed right (69%) diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/site.yaml b/vendor/trainer/runs/fotballklubb-2026-09-22/site.yaml deleted file mode 100644 index e7785ad..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/site.yaml +++ /dev/null @@ -1,2 +0,0 @@ -lang: nb -title: Lia IL Fotball diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/tasks-full.jsonl b/vendor/trainer/runs/fotballklubb-2026-09-22/tasks-full.jsonl deleted file mode 100644 index 144cfac..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/tasks-full.jsonl +++ /dev/null @@ -1,16 +0,0 @@ -{"id":"ny-i-bygda@/","persona":"ny-i-bygda","need":"innmelding","page":"/","state":{"body":"Vi flyttet hit i sommer og sønnen vår på ni har spilt fotball før. Hvordan får vi ham med på et lag her?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva hjelper vi deg med i dag?\". Which alternative do they choose?","criteria":{"Er det på tide å melde inn?":"For foreldre som vil at barnet skal spille på laget sitt årskull.","Vil du bidra til klubben?":"Som frivillig trener, lagleder, sjåfør eller støttende bedrift."}}},"expect":["Er det på tide å melde inn?"]} -{"id":"ny-i-bygda@/foresatte","persona":"ny-i-bygda","need":"innmelding","page":"/foresatte","state":{"body":"Vi flyttet hit i sommer og sønnen vår på ni har spilt fotball før. Hvordan får vi ham med på et lag her?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Har du barn som vil spille fotball?\". Which alternative do they choose?","criteria":{"Hjelp med avgift":"Vi hjelper deg å finne en løsning hvis du har vansker med å betale.","Meld deg på laget":"Sett barnet på laget for sitt årskull. Treneren håndterer dette."}}},"expect":["Meld deg på laget"]} -{"id":"tvillinger@/","persona":"tvillinger","need":"innmelding","page":"/","state":{"body":"Jeg har tvillingjenter på sju som maser om å begynne. Er det plass, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva hjelper vi deg med i dag?\". Which alternative do they choose?","criteria":{"Er det på tide å melde inn?":"For foreldre som vil at barnet skal spille på laget sitt årskull.","Vil du bidra til klubben?":"Som frivillig trener, lagleder, sjåfør eller støttende bedrift."}}},"expect":["Er det på tide å melde inn?"]} -{"id":"tvillinger@/foresatte","persona":"tvillinger","need":"innmelding","page":"/foresatte","state":{"body":"Jeg har tvillingjenter på sju som maser om å begynne. Er det plass, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Har du barn som vil spille fotball?\". Which alternative do they choose?","criteria":{"Hjelp med avgift":"Vi hjelper deg å finne en løsning hvis du har vansker med å betale.","Meld deg på laget":"Sett barnet på laget for sitt årskull. Treneren håndterer dette."}}},"expect":["Meld deg på laget"]} -{"id":"alenefar@/","persona":"alenefar","need":"avgiftssak","page":"/","state":{"body":"Jeg er alene med tre unger og treningsavgiften for alle tre blir for mye på en gang. Går det an å dele den opp?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva hjelper vi deg med i dag?\". Which alternative do they choose?","criteria":{"Er det på tide å melde inn?":"For foreldre som vil at barnet skal spille på laget sitt årskull.","Vil du bidra til klubben?":"Som frivillig trener, lagleder, sjåfør eller støttende bedrift."}}},"expect":["Er det på tide å melde inn?"]} -{"id":"alenefar@/foresatte","persona":"alenefar","need":"avgiftssak","page":"/foresatte","state":{"body":"Jeg er alene med tre unger og treningsavgiften for alle tre blir for mye på en gang. Går det an å dele den opp?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Har du barn som vil spille fotball?\". Which alternative do they choose?","criteria":{"Hjelp med avgift":"Vi hjelper deg å finne en løsning hvis du har vansker med å betale.","Meld deg på laget":"Sett barnet på laget for sitt årskull. Treneren håndterer dette."}}},"expect":["Hjelp med avgift"]} -{"id":"permittert@/","persona":"permittert","need":"avgiftssak","page":"/","state":{"body":"Jeg ble permittert i vinter. Kan dattera mi fortsette å spille selv om vi ikke klarer avgiften akkurat nå?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva hjelper vi deg med i dag?\". Which alternative do they choose?","criteria":{"Er det på tide å melde inn?":"For foreldre som vil at barnet skal spille på laget sitt årskull.","Vil du bidra til klubben?":"Som frivillig trener, lagleder, sjåfør eller støttende bedrift."}}},"expect":["Er det på tide å melde inn?"]} -{"id":"permittert@/foresatte","persona":"permittert","need":"avgiftssak","page":"/foresatte","state":{"body":"Jeg ble permittert i vinter. Kan dattera mi fortsette å spille selv om vi ikke klarer avgiften akkurat nå?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Har du barn som vil spille fotball?\". Which alternative do they choose?","criteria":{"Hjelp med avgift":"Vi hjelper deg å finne en løsning hvis du har vansker med å betale.","Meld deg på laget":"Sett barnet på laget for sitt årskull. Treneren håndterer dette."}}},"expect":["Hjelp med avgift"]} -{"id":"pensjonist@/","persona":"pensjonist","need":"frivillig","page":"/","state":{"body":"Jeg er pensjonert og spilte selv i mange år. Har dere bruk for en som kan ta de minste et par kvelder i uka?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva hjelper vi deg med i dag?\". Which alternative do they choose?","criteria":{"Er det på tide å melde inn?":"For foreldre som vil at barnet skal spille på laget sitt årskull.","Vil du bidra til klubben?":"Som frivillig trener, lagleder, sjåfør eller støttende bedrift."}}},"expect":["Vil du bidra til klubben?"]} -{"id":"pensjonist@/bidra","persona":"pensjonist","need":"frivillig","page":"/bidra","state":{"body":"Jeg er pensjonert og spilte selv i mange år. Har dere bruk for en som kan ta de minste et par kvelder i uka?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva kan du bidra med?\". Which alternative do they choose?","criteria":{"Bli brukt der det trengs":"Hjelp til som trener, lagleder eller på dugnad","Støtt klubben i bygda":"Lett dialog om hva bedriften kan bidra med"}}},"expect":["Bli brukt der det trengs"]} -{"id":"stor-bil@/","persona":"stor-bil","need":"frivillig","page":"/","state":{"body":"Jeg kan ikke trene noen, men jeg har stor bil og kan kjøre til bortekamper."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva hjelper vi deg med i dag?\". Which alternative do they choose?","criteria":{"Er det på tide å melde inn?":"For foreldre som vil at barnet skal spille på laget sitt årskull.","Vil du bidra til klubben?":"Som frivillig trener, lagleder, sjåfør eller støttende bedrift."}}},"expect":["Vil du bidra til klubben?"]} -{"id":"stor-bil@/bidra","persona":"stor-bil","need":"frivillig","page":"/bidra","state":{"body":"Jeg kan ikke trene noen, men jeg har stor bil og kan kjøre til bortekamper."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva kan du bidra med?\". Which alternative do they choose?","criteria":{"Bli brukt der det trengs":"Hjelp til som trener, lagleder eller på dugnad","Støtt klubben i bygda":"Lett dialog om hva bedriften kan bidra med"}}},"expect":["Bli brukt der det trengs"]} -{"id":"rorlegger@/","persona":"rorlegger","need":"sponsor","page":"/","state":{"body":"Jeg driver rørleggerfirma her i bygda og vil gjerne ha logoen vår på draktene til et lag. Hvem snakker jeg med?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva hjelper vi deg med i dag?\". Which alternative do they choose?","criteria":{"Er det på tide å melde inn?":"For foreldre som vil at barnet skal spille på laget sitt årskull.","Vil du bidra til klubben?":"Som frivillig trener, lagleder, sjåfør eller støttende bedrift."}}},"expect":["Vil du bidra til klubben?"]} -{"id":"rorlegger@/bidra","persona":"rorlegger","need":"sponsor","page":"/bidra","state":{"body":"Jeg driver rørleggerfirma her i bygda og vil gjerne ha logoen vår på draktene til et lag. Hvem snakker jeg med?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva kan du bidra med?\". Which alternative do they choose?","criteria":{"Bli brukt der det trengs":"Hjelp til som trener, lagleder eller på dugnad","Støtt klubben i bygda":"Lett dialog om hva bedriften kan bidra med"}}},"expect":["Støtt klubben i bygda"]} -{"id":"kafeen@/","persona":"kafeen","need":"sponsor","page":"/","state":{"body":"Vi har kafé i sentrum og kan bidra med noe til cupen i mai, kanskje vafler eller litt penger."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva hjelper vi deg med i dag?\". Which alternative do they choose?","criteria":{"Er det på tide å melde inn?":"For foreldre som vil at barnet skal spille på laget sitt årskull.","Vil du bidra til klubben?":"Som frivillig trener, lagleder, sjåfør eller støttende bedrift."}}},"expect":["Vil du bidra til klubben?"]} -{"id":"kafeen@/bidra","persona":"kafeen","need":"sponsor","page":"/bidra","state":{"body":"Vi har kafé i sentrum og kan bidra med noe til cupen i mai, kanskje vafler eller litt penger."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva kan du bidra med?\". Which alternative do they choose?","criteria":{"Bli brukt der det trengs":"Hjelp til som trener, lagleder eller på dugnad","Støtt klubben i bygda":"Lett dialog om hva bedriften kan bidra med"}}},"expect":["Støtt klubben i bygda"]} diff --git a/vendor/trainer/runs/fotballklubb-2026-09-22/tasks-skim.jsonl b/vendor/trainer/runs/fotballklubb-2026-09-22/tasks-skim.jsonl deleted file mode 100644 index 219b4ac..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-22/tasks-skim.jsonl +++ /dev/null @@ -1,16 +0,0 @@ -{"id":"ny-i-bygda@/","persona":"ny-i-bygda","need":"innmelding","page":"/","state":{"body":"Vi flyttet hit i sommer og sønnen vår på ni har spilt fotball før. Hvordan får vi ham med på et lag her?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva hjelper vi deg med i dag?\". Which alternative do they choose?","criteria":{"Er det på tide å melde inn?":"Er det på tide å melde inn?","Vil du bidra til klubben?":"Vil du bidra til klubben?"}}},"expect":["Er det på tide å melde inn?"]} -{"id":"ny-i-bygda@/foresatte","persona":"ny-i-bygda","need":"innmelding","page":"/foresatte","state":{"body":"Vi flyttet hit i sommer og sønnen vår på ni har spilt fotball før. Hvordan får vi ham med på et lag her?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Har du barn som vil spille fotball?\". Which alternative do they choose?","criteria":{"Hjelp med avgift":"Hjelp med avgift","Meld deg på laget":"Meld deg på laget"}}},"expect":["Meld deg på laget"]} -{"id":"tvillinger@/","persona":"tvillinger","need":"innmelding","page":"/","state":{"body":"Jeg har tvillingjenter på sju som maser om å begynne. Er det plass, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva hjelper vi deg med i dag?\". Which alternative do they choose?","criteria":{"Er det på tide å melde inn?":"Er det på tide å melde inn?","Vil du bidra til klubben?":"Vil du bidra til klubben?"}}},"expect":["Er det på tide å melde inn?"]} -{"id":"tvillinger@/foresatte","persona":"tvillinger","need":"innmelding","page":"/foresatte","state":{"body":"Jeg har tvillingjenter på sju som maser om å begynne. Er det plass, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Har du barn som vil spille fotball?\". Which alternative do they choose?","criteria":{"Hjelp med avgift":"Hjelp med avgift","Meld deg på laget":"Meld deg på laget"}}},"expect":["Meld deg på laget"]} -{"id":"alenefar@/","persona":"alenefar","need":"avgiftssak","page":"/","state":{"body":"Jeg er alene med tre unger og treningsavgiften for alle tre blir for mye på en gang. Går det an å dele den opp?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva hjelper vi deg med i dag?\". Which alternative do they choose?","criteria":{"Er det på tide å melde inn?":"Er det på tide å melde inn?","Vil du bidra til klubben?":"Vil du bidra til klubben?"}}},"expect":["Er det på tide å melde inn?"]} -{"id":"alenefar@/foresatte","persona":"alenefar","need":"avgiftssak","page":"/foresatte","state":{"body":"Jeg er alene med tre unger og treningsavgiften for alle tre blir for mye på en gang. Går det an å dele den opp?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Har du barn som vil spille fotball?\". Which alternative do they choose?","criteria":{"Hjelp med avgift":"Hjelp med avgift","Meld deg på laget":"Meld deg på laget"}}},"expect":["Hjelp med avgift"]} -{"id":"permittert@/","persona":"permittert","need":"avgiftssak","page":"/","state":{"body":"Jeg ble permittert i vinter. Kan dattera mi fortsette å spille selv om vi ikke klarer avgiften akkurat nå?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva hjelper vi deg med i dag?\". Which alternative do they choose?","criteria":{"Er det på tide å melde inn?":"Er det på tide å melde inn?","Vil du bidra til klubben?":"Vil du bidra til klubben?"}}},"expect":["Er det på tide å melde inn?"]} -{"id":"permittert@/foresatte","persona":"permittert","need":"avgiftssak","page":"/foresatte","state":{"body":"Jeg ble permittert i vinter. Kan dattera mi fortsette å spille selv om vi ikke klarer avgiften akkurat nå?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Har du barn som vil spille fotball?\". Which alternative do they choose?","criteria":{"Hjelp med avgift":"Hjelp med avgift","Meld deg på laget":"Meld deg på laget"}}},"expect":["Hjelp med avgift"]} -{"id":"pensjonist@/","persona":"pensjonist","need":"frivillig","page":"/","state":{"body":"Jeg er pensjonert og spilte selv i mange år. Har dere bruk for en som kan ta de minste et par kvelder i uka?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva hjelper vi deg med i dag?\". Which alternative do they choose?","criteria":{"Er det på tide å melde inn?":"Er det på tide å melde inn?","Vil du bidra til klubben?":"Vil du bidra til klubben?"}}},"expect":["Vil du bidra til klubben?"]} -{"id":"pensjonist@/bidra","persona":"pensjonist","need":"frivillig","page":"/bidra","state":{"body":"Jeg er pensjonert og spilte selv i mange år. Har dere bruk for en som kan ta de minste et par kvelder i uka?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva kan du bidra med?\". Which alternative do they choose?","criteria":{"Bli brukt der det trengs":"Bli brukt der det trengs","Støtt klubben i bygda":"Støtt klubben i bygda"}}},"expect":["Bli brukt der det trengs"]} -{"id":"stor-bil@/","persona":"stor-bil","need":"frivillig","page":"/","state":{"body":"Jeg kan ikke trene noen, men jeg har stor bil og kan kjøre til bortekamper."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva hjelper vi deg med i dag?\". Which alternative do they choose?","criteria":{"Er det på tide å melde inn?":"Er det på tide å melde inn?","Vil du bidra til klubben?":"Vil du bidra til klubben?"}}},"expect":["Vil du bidra til klubben?"]} -{"id":"stor-bil@/bidra","persona":"stor-bil","need":"frivillig","page":"/bidra","state":{"body":"Jeg kan ikke trene noen, men jeg har stor bil og kan kjøre til bortekamper."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva kan du bidra med?\". Which alternative do they choose?","criteria":{"Bli brukt der det trengs":"Bli brukt der det trengs","Støtt klubben i bygda":"Støtt klubben i bygda"}}},"expect":["Bli brukt der det trengs"]} -{"id":"rorlegger@/","persona":"rorlegger","need":"sponsor","page":"/","state":{"body":"Jeg driver rørleggerfirma her i bygda og vil gjerne ha logoen vår på draktene til et lag. Hvem snakker jeg med?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva hjelper vi deg med i dag?\". Which alternative do they choose?","criteria":{"Er det på tide å melde inn?":"Er det på tide å melde inn?","Vil du bidra til klubben?":"Vil du bidra til klubben?"}}},"expect":["Vil du bidra til klubben?"]} -{"id":"rorlegger@/bidra","persona":"rorlegger","need":"sponsor","page":"/bidra","state":{"body":"Jeg driver rørleggerfirma her i bygda og vil gjerne ha logoen vår på draktene til et lag. Hvem snakker jeg med?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva kan du bidra med?\". Which alternative do they choose?","criteria":{"Bli brukt der det trengs":"Bli brukt der det trengs","Støtt klubben i bygda":"Støtt klubben i bygda"}}},"expect":["Støtt klubben i bygda"]} -{"id":"kafeen@/","persona":"kafeen","need":"sponsor","page":"/","state":{"body":"Vi har kafé i sentrum og kan bidra med noe til cupen i mai, kanskje vafler eller litt penger."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva hjelper vi deg med i dag?\". Which alternative do they choose?","criteria":{"Er det på tide å melde inn?":"Er det på tide å melde inn?","Vil du bidra til klubben?":"Vil du bidra til klubben?"}}},"expect":["Vil du bidra til klubben?"]} -{"id":"kafeen@/bidra","persona":"kafeen","need":"sponsor","page":"/bidra","state":{"body":"Vi har kafé i sentrum og kan bidra med noe til cupen i mai, kanskje vafler eller litt penger."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva kan du bidra med?\". Which alternative do they choose?","criteria":{"Bli brukt der det trengs":"Bli brukt der det trengs","Støtt klubben i bygda":"Støtt klubben i bygda"}}},"expect":["Støtt klubben i bygda"]} diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/README.md b/vendor/trainer/runs/fotballklubb-2026-09-24/README.md deleted file mode 100644 index d764a84..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/README.md +++ /dev/null @@ -1,36 +0,0 @@ -# Liail IL, the football club, with this week's keys, 2026-09-24 - -The Norwegian football club plan given what the vel got: a sender, -`stages_text` on every need, and mails to the household on the three -stages of an enrolment; the email field renamed to `email` so the -mails can go to it. Words by Sonnet in one pass, in Norwegian (the -language guard raised nothing), iris green. - -| Score | Result | -|---|---| -| Routing with descriptions, seeds 0, 1, 2 | 14, 11, 13 of 16 | -| Same plan, 2026-09-22, Sonnet words, one seed | 13 of 16 | -| Desks (buttons a row shows, outcome in words) | 13 of 14 | -| Mails, LIX | 30 to 39, easy; 33 to 40 words | - -Level with the earlier build inside a spread of three, which on -sixteen tasks is the noise floor. The one desk miss is a rejection -from `open` read as "contacted". The mails are on the long side for -a club; a `--llm-for aggregates.yaml` pass asking for shorter would -be the next thing to try, and the second Norwegian site where every -Norwegian-specific fix of the last day held: stage words in the desk -score, Norwegian mails, the language guard. - -## The mails, shorter by prompt - -The mail prompt now asks for at most three short sentences plus the -link line. Same model, same plan, two passes: the three enrolment -mails went from 33 to 40 words to 16 to 19 on one pass and 21 to 27 -on the next, LIX from 30 to 39 to 29 to 40. The site here carries the -second pass; its approved mail reads "{child} har fått plass på laget -for sitt årskull. Faktura for treningsavgiften kommer, og plassen er -klar når den er betalt." The stray `{chain}` the model left at the end of each is gone: the -cleanup now runs on the final words, whatever wrote them. On the vel the same prompt -evened six mails out at 17 to 24 words with both links kept. A first -version of this note quoted a mail that did not exist and copied the -vel's aggregates over the club's; both corrected here. diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/answers-full-seed0.jsonl b/vendor/trainer/runs/fotballklubb-2026-09-24/answers-full-seed0.jsonl deleted file mode 100644 index b555057..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/answers-full-seed0.jsonl +++ /dev/null @@ -1,16 +0,0 @@ -{"choice":"Få barnet ditt med på laget","confidence":0.95,"id":"ny-i-bygda@/"} -{"choice":"Meld ungen din på laget","confidence":0.95,"id":"ny-i-bygda@/foresatte"} -{"choice":"Få barnet ditt med på laget","confidence":0.95,"id":"tvillinger@/"} -{"choice":"Meld ungen din på laget","confidence":0.95,"id":"tvillinger@/foresatte"} -{"choice":"Få barnet ditt med på laget","confidence":0.95,"id":"alenefar@/"} -{"choice":"Få hjelp med treningsavgiften","confidence":0.95,"id":"alenefar@/foresatte"} -{"choice":"Få barnet ditt med på laget","confidence":0.95,"id":"permittert@/"} -{"choice":"Få hjelp med treningsavgiften","confidence":0.95,"id":"permittert@/foresatte"} -{"choice":"Hjelp til eller støtt klubben","confidence":0.85,"id":"pensjonist@/"} -{"choice":"Bidra med det du kan","confidence":0.95,"id":"pensjonist@/bidra"} -{"choice":"Få barnet ditt med på laget","confidence":0.95,"id":"stor-bil@/"} -{"choice":"Bidra med det du kan","confidence":0.95,"id":"stor-bil@/bidra"} -{"choice":"Hjelp til eller støtt klubben","confidence":0.85,"id":"rorlegger@/"} -{"choice":"Støtt fotballen på bygda","confidence":0.95,"id":"rorlegger@/bidra"} -{"choice":"Hjelp til eller støtt klubben","confidence":0.95,"id":"kafeen@/"} -{"choice":"Bidra med det du kan","confidence":0.95,"id":"kafeen@/bidra"} diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/answers-full-seed1.jsonl b/vendor/trainer/runs/fotballklubb-2026-09-24/answers-full-seed1.jsonl deleted file mode 100644 index bec3bae..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/answers-full-seed1.jsonl +++ /dev/null @@ -1,16 +0,0 @@ -{"choice":"Få barnet ditt med på laget","confidence":0.95,"id":"ny-i-bygda@/"} -{"choice":"Meld ungen din på laget","confidence":0.95,"id":"ny-i-bygda@/foresatte"} -{"choice":"Få barnet ditt med på laget","confidence":0.95,"id":"tvillinger@/"} -{"choice":"Få hjelp med treningsavgiften","confidence":0.95,"id":"tvillinger@/foresatte"} -{"choice":"Få barnet ditt med på laget","confidence":0.95,"id":"alenefar@/"} -{"choice":"Få hjelp med treningsavgiften","confidence":0.95,"id":"alenefar@/foresatte"} -{"choice":"Få barnet ditt med på laget","confidence":0.85,"id":"permittert@/"} -{"choice":"Få hjelp med treningsavgiften","confidence":0.85,"id":"permittert@/foresatte"} -{"choice":"Få barnet ditt med på laget","confidence":0.95,"id":"pensjonist@/"} -{"choice":"Bidra med det du kan","confidence":0.85,"id":"pensjonist@/bidra"} -{"choice":"Få barnet ditt med på laget","confidence":0.95,"id":"stor-bil@/"} -{"choice":"Bidra med det du kan","confidence":0.95,"id":"stor-bil@/bidra"} -{"choice":"Få barnet ditt med på laget","confidence":0.95,"id":"rorlegger@/"} -{"choice":"Støtt fotballen på bygda","confidence":0.95,"id":"rorlegger@/bidra"} -{"choice":"Hjelp til eller støtt klubben","confidence":0.85,"id":"kafeen@/"} -{"choice":"Bidra med det du kan","confidence":0.95,"id":"kafeen@/bidra"} diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/answers-full-seed2.jsonl b/vendor/trainer/runs/fotballklubb-2026-09-24/answers-full-seed2.jsonl deleted file mode 100644 index ebb3b01..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/answers-full-seed2.jsonl +++ /dev/null @@ -1,16 +0,0 @@ -{"choice":"Få barnet ditt med på laget","confidence":0.95,"id":"ny-i-bygda@/"} -{"choice":"Meld ungen din på laget","confidence":0.95,"id":"ny-i-bygda@/foresatte"} -{"choice":"Få barnet ditt med på laget","confidence":0.95,"id":"tvillinger@/"} -{"choice":"Få hjelp med treningsavgiften","confidence":0.95,"id":"tvillinger@/foresatte"} -{"choice":"Få barnet ditt med på laget","confidence":0.95,"id":"alenefar@/"} -{"choice":"Få hjelp med treningsavgiften","confidence":0.95,"id":"alenefar@/foresatte"} -{"choice":"Få barnet ditt med på laget","confidence":0.95,"id":"permittert@/"} -{"choice":"Få hjelp med treningsavgiften","confidence":0.85,"id":"permittert@/foresatte"} -{"choice":"Hjelp til eller støtt klubben","confidence":0.85,"id":"pensjonist@/"} -{"choice":"Bidra med det du kan","confidence":0.95,"id":"pensjonist@/bidra"} -{"choice":"Hjelp til eller støtt klubben","confidence":0.85,"id":"stor-bil@/"} -{"choice":"Bidra med det du kan","confidence":0.95,"id":"stor-bil@/bidra"} -{"choice":"Få barnet ditt med på laget","confidence":0.95,"id":"rorlegger@/"} -{"choice":"Støtt fotballen på bygda","confidence":0.95,"id":"rorlegger@/bidra"} -{"choice":"Hjelp til eller støtt klubben","confidence":0.95,"id":"kafeen@/"} -{"choice":"Bidra med det du kan","confidence":0.95,"id":"kafeen@/bidra"} diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/model.json b/vendor/trainer/runs/fotballklubb-2026-09-24/model.json deleted file mode 100644 index 1cb9218..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/model.json +++ /dev/null @@ -1,702 +0,0 @@ -{ - "needs": [ - { - "id": "innmelding", - "who": "en forelder som vil ha ungen med på et lag", - "wants": "at barnet får plass på laget for sitt årskull", - "enters_as": null, - "lands_in": "innmeldinger", - "handled_by": "trenere", - "done_when": [ - "betalt", - "trukket" - ], - "success": [ - "betalt" - ], - "steps": [ - { - "page": "/", - "question": "Hva vil du gjøre hos oss?", - "context": "Fotball for ungene i bygda: Rundt hundre og tjue unger fra seks til seksten år spiller fotball hos oss, fordelt på lag etter årskull. Få hjelp med treningsavgiften: Sliter du med treningsavgiften, kan vi se på en avtale. Meld barnet på et lag: Meld ungen på laget for sitt årskull.", - "options": [ - { - "name": "Få barnet ditt med på laget", - "description": "Meld på ungen, spør om treningsavgiften, eller si fra om noe på banen." - }, - { - "name": "Hjelp til eller støtt klubben", - "description": "Vi trenger trenere, lagledere, sjåfører og folk på dugnad – og bedrifter som vil støtte laget." - } - ], - "expect": [ - "Få barnet ditt med på laget" - ], - "alternative": "Få barnet ditt med på laget", - "fields": [] - }, - { - "page": "/foresatte", - "question": "Vil du melde på ungen din, eller trenger dere hjelp med avgiften?", - "context": "", - "options": [ - { - "name": "Meld ungen din på laget", - "description": "Meld ungen din på laget for sitt årskull, så tar trenerne det derfra." - }, - { - "name": "Få hjelp med treningsavgiften", - "description": "Vi finner en løsning sammen, enten det er å dele opp betalingen eller søke om støtte. Ingen unger skal stå utenfor på grunn av avgiften." - } - ], - "expect": [ - "Meld ungen din på laget" - ], - "alternative": "Meld ungen din på laget", - "fields": [ - { - "name": "barnets_navn", - "label": "Barnets navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "fodselsar", - "label": "Fødselsår", - "type": "select", - "optional": false, - "options": [ - "2010", - "2011", - "2012", - "2013", - "2014", - "2015", - "2016", - "2017", - "2018", - "2019", - "2020" - ] - }, - { - "name": "foresatt", - "label": "Ditt navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "telefon", - "label": "Telefon", - "type": "tel", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "E-post", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "spilt_for", - "label": "Spilt for tidligere", - "type": "text", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "avgiftssak", - "who": "en forelder som sliter med treningsavgiften", - "wants": "å dele den opp, eller slippe den", - "enters_as": null, - "lands_in": "avgiftssaker", - "handled_by": "styret", - "done_when": [ - "innvilget", - "avslatt" - ], - "success": [ - "innvilget" - ], - "steps": [ - { - "page": "/", - "question": "Hva vil du gjøre hos oss?", - "context": "Fotball for ungene i bygda: Rundt hundre og tjue unger fra seks til seksten år spiller fotball hos oss, fordelt på lag etter årskull. Få hjelp med treningsavgiften: Sliter du med treningsavgiften, kan vi se på en avtale. Meld barnet på et lag: Meld ungen på laget for sitt årskull.", - "options": [ - { - "name": "Få barnet ditt med på laget", - "description": "Meld på ungen, spør om treningsavgiften, eller si fra om noe på banen." - }, - { - "name": "Hjelp til eller støtt klubben", - "description": "Vi trenger trenere, lagledere, sjåfører og folk på dugnad – og bedrifter som vil støtte laget." - } - ], - "expect": [ - "Få barnet ditt med på laget" - ], - "alternative": "Få barnet ditt med på laget", - "fields": [] - }, - { - "page": "/foresatte", - "question": "Vil du melde på ungen din, eller trenger dere hjelp med avgiften?", - "context": "", - "options": [ - { - "name": "Meld ungen din på laget", - "description": "Meld ungen din på laget for sitt årskull, så tar trenerne det derfra." - }, - { - "name": "Få hjelp med treningsavgiften", - "description": "Vi finner en løsning sammen, enten det er å dele opp betalingen eller søke om støtte. Ingen unger skal stå utenfor på grunn av avgiften." - } - ], - "expect": [ - "Få hjelp med treningsavgiften" - ], - "alternative": "Få hjelp med treningsavgiften", - "fields": [ - { - "name": "barnets_navn", - "label": "Barnets navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "foresatt", - "label": "Ditt navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "hva_gjelder_det", - "label": "Hva gjelder det", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "telefon", - "label": "Telefon", - "type": "tel", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "frivillig", - "who": "en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad", - "wants": "å bli brukt der det trengs", - "enters_as": null, - "lands_in": "frivillige", - "handled_by": "styret", - "done_when": [ - "plassert", - "avslatt" - ], - "success": [ - "plassert" - ], - "steps": [ - { - "page": "/", - "question": "Hva vil du gjøre hos oss?", - "context": "Fotball for ungene i bygda: Rundt hundre og tjue unger fra seks til seksten år spiller fotball hos oss, fordelt på lag etter årskull. Få hjelp med treningsavgiften: Sliter du med treningsavgiften, kan vi se på en avtale. Meld barnet på et lag: Meld ungen på laget for sitt årskull.", - "options": [ - { - "name": "Få barnet ditt med på laget", - "description": "Meld på ungen, spør om treningsavgiften, eller si fra om noe på banen." - }, - { - "name": "Hjelp til eller støtt klubben", - "description": "Vi trenger trenere, lagledere, sjåfører og folk på dugnad – og bedrifter som vil støtte laget." - } - ], - "expect": [ - "Hjelp til eller støtt klubben" - ], - "alternative": "Hjelp til eller støtt klubben", - "fields": [] - }, - { - "page": "/bidra", - "question": "Vil du hjelpe til eller støtte klubben?", - "context": "", - "options": [ - { - "name": "Bidra med det du kan", - "description": "Trenere, lagledere, sjåfører og folk på dugnad - vi trenger alltid flere hender." - }, - { - "name": "Støtt fotballen på bygda", - "description": "Er du fra en bedrift i bygda som vil støtte fotballgruppa? Vi tar gjerne en prat om hva dere kan bidra med." - } - ], - "expect": [ - "Bidra med det du kan" - ], - "alternative": "Bidra med det du kan", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "telefon", - "label": "Telefon", - "type": "tel", - "optional": false, - "options": [] - }, - { - "name": "hva_kan_du", - "label": "Hva kan du bidra med?", - "type": "select", - "optional": false, - "options": [ - "Trene et lag", - "Være lagleder", - "Kjøre til kamper", - "Dugnad", - "Annet" - ] - } - ] - } - ] - }, - { - "id": "sponsor", - "who": "en bedrift i bygda som vil støtte klubben", - "wants": "en prat om hva de kan bidra med, og en avtale", - "enters_as": null, - "lands_in": "sponsorer", - "handled_by": "styret", - "done_when": [ - "avtalt", - "avslatt" - ], - "success": [ - "avtalt" - ], - "steps": [ - { - "page": "/", - "question": "Hva vil du gjøre hos oss?", - "context": "Fotball for ungene i bygda: Rundt hundre og tjue unger fra seks til seksten år spiller fotball hos oss, fordelt på lag etter årskull. Få hjelp med treningsavgiften: Sliter du med treningsavgiften, kan vi se på en avtale. Meld barnet på et lag: Meld ungen på laget for sitt årskull.", - "options": [ - { - "name": "Få barnet ditt med på laget", - "description": "Meld på ungen, spør om treningsavgiften, eller si fra om noe på banen." - }, - { - "name": "Hjelp til eller støtt klubben", - "description": "Vi trenger trenere, lagledere, sjåfører og folk på dugnad – og bedrifter som vil støtte laget." - } - ], - "expect": [ - "Hjelp til eller støtt klubben" - ], - "alternative": "Hjelp til eller støtt klubben", - "fields": [] - }, - { - "page": "/bidra", - "question": "Vil du hjelpe til eller støtte klubben?", - "context": "", - "options": [ - { - "name": "Bidra med det du kan", - "description": "Trenere, lagledere, sjåfører og folk på dugnad - vi trenger alltid flere hender." - }, - { - "name": "Støtt fotballen på bygda", - "description": "Er du fra en bedrift i bygda som vil støtte fotballgruppa? Vi tar gjerne en prat om hva dere kan bidra med." - } - ], - "expect": [ - "Støtt fotballen på bygda" - ], - "alternative": "Støtt fotballen på bygda", - "fields": [ - { - "name": "bedrift", - "label": "Bedrift", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "kontaktperson", - "label": "Kontaktperson", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "telefon", - "label": "Telefon", - "type": "tel", - "optional": false, - "options": [] - }, - { - "name": "hva_tenker_dere", - "label": "Hva tenker dere å bidra med?", - "type": "textarea", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "baneproblem", - "who": "en trener som ser at noe på anlegget ikke er i orden", - "wants": "at styret får vite det og ordner det", - "enters_as": "trenere", - "lands_in": "baneproblemer", - "handled_by": "styret", - "done_when": [ - "ordnet" - ], - "success": [ - "ordnet" - ], - "steps": [ - { - "page": "/trenere/baneproblem", - "question": "Har du sett noe på anlegget som bør ordnes?", - "context": "", - "options": [ - { - "name": "Meld fra om noe som ikke er i orden", - "description": "Ser du noe på banen eller anlegget som ikke er i orden? Gi beskjed til styret, så tar de tak i det." - } - ], - "expect": [ - "Meld fra om noe som ikke er i orden" - ], - "alternative": "Meld fra om noe som ikke er i orden", - "fields": [ - { - "name": "hvor", - "label": "Hvor på anlegget?", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "hva", - "label": "Hva gjelder det?", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - } - ], - "buckets": { - "innmeldinger": { - "initial": "open", - "transitions": { - "godkjent": [ - "betalt", - "trukket" - ], - "open": [ - "godkjent", - "trukket" - ] - }, - "words": { - "betalt": "betalt", - "godkjent": "godkjent av treneren", - "open": "mottatt", - "trukket": "trukket" - }, - "desks": [ - { - "page": "/kasserer", - "group": "kasserer", - "moves": [ - { - "from": "godkjent", - "to": "betalt", - "label": "Merk som betalt" - } - ] - }, - { - "page": "/trenere", - "group": "trenere", - "moves": [ - { - "from": "godkjent", - "to": "trukket", - "label": "Trekk påmeldingen" - }, - { - "from": "open", - "to": "godkjent", - "label": "Godkjenn plass" - }, - { - "from": "open", - "to": "trukket", - "label": "Avvis påmeldingen" - } - ] - } - ], - "self_moves": [] - }, - "avgiftssaker": { - "initial": "open", - "transitions": { - "vurdert": [ - "innvilget", - "avslatt" - ], - "open": [ - "vurdert", - "avslatt" - ] - }, - "words": { - "avslatt": "avslått", - "innvilget": "innvilget", - "open": "mottatt", - "vurdert": "vurdert" - }, - "desks": [ - { - "page": "/styret", - "group": "styret", - "moves": [ - { - "from": "open", - "to": "vurdert", - "label": "Merk som vurdert" - }, - { - "from": "open", - "to": "avslatt", - "label": "Avslå søknaden" - }, - { - "from": "vurdert", - "to": "innvilget", - "label": "Innvilg søknaden" - }, - { - "from": "vurdert", - "to": "avslatt", - "label": "Avslå søknaden" - } - ] - } - ], - "self_moves": [] - }, - "frivillige": { - "initial": "open", - "transitions": { - "kontaktet": [ - "plassert", - "avslatt" - ], - "open": [ - "kontaktet", - "avslatt" - ] - }, - "words": { - "avslatt": "takket nei", - "kontaktet": "kontaktet", - "open": "mottatt", - "plassert": "satt opp" - }, - "desks": [ - { - "page": "/styret", - "group": "styret", - "moves": [ - { - "from": "kontaktet", - "to": "plassert", - "label": "Merk som plassert" - }, - { - "from": "kontaktet", - "to": "avslatt", - "label": "Avslå henvendelsen" - }, - { - "from": "open", - "to": "kontaktet", - "label": "Merk som kontaktet" - }, - { - "from": "open", - "to": "avslatt", - "label": "Avslå henvendelsen" - } - ] - } - ], - "self_moves": [] - }, - "sponsorer": { - "initial": "open", - "transitions": { - "open": [ - "i_dialog", - "avslatt" - ], - "i_dialog": [ - "avtalt", - "avslatt" - ] - }, - "words": { - "avslatt": "avslått", - "avtalt": "avtalt", - "i_dialog": "i dialog", - "open": "mottatt" - }, - "desks": [ - { - "page": "/styret", - "group": "styret", - "moves": [ - { - "from": "i_dialog", - "to": "avtalt", - "label": "Merk som avtalt" - }, - { - "from": "i_dialog", - "to": "avslatt", - "label": "Avslå henvendelsen" - }, - { - "from": "open", - "to": "i_dialog", - "label": "Start dialog" - }, - { - "from": "open", - "to": "avslatt", - "label": "Avslå henvendelsen" - } - ] - } - ], - "self_moves": [] - }, - "baneproblemer": { - "initial": "open", - "transitions": { - "open": [ - "tatt_tak_i" - ], - "tatt_tak_i": [ - "ordnet" - ] - }, - "words": { - "open": "mottatt", - "ordnet": "ordnet", - "tatt_tak_i": "tatt tak i" - }, - "desks": [ - { - "page": "/styret", - "group": "styret", - "moves": [ - { - "from": "open", - "to": "tatt_tak_i", - "label": "Ta tak i saken" - }, - { - "from": "tatt_tak_i", - "to": "ordnet", - "label": "Merk som ordnet" - } - ] - } - ], - "self_moves": [] - } - }, - "personas": [ - { - "id": "ny-i-bygda", - "need": "innmelding", - "text": "Vi flyttet hit i sommer og sønnen vår på ni har spilt fotball før. Hvordan får vi ham med på et lag her?" - }, - { - "id": "tvillinger", - "need": "innmelding", - "text": "Jeg har tvillingjenter på sju som maser om å begynne. Er det plass, og hva koster det?" - }, - { - "id": "alenefar", - "need": "avgiftssak", - "text": "Jeg er alene med tre unger og treningsavgiften for alle tre blir for mye på en gang. Går det an å dele den opp?" - }, - { - "id": "permittert", - "need": "avgiftssak", - "text": "Jeg ble permittert i vinter. Kan dattera mi fortsette å spille selv om vi ikke klarer avgiften akkurat nå?" - }, - { - "id": "pensjonist", - "need": "frivillig", - "text": "Jeg er pensjonert og spilte selv i mange år. Har dere bruk for en som kan ta de minste et par kvelder i uka?" - }, - { - "id": "stor-bil", - "need": "frivillig", - "text": "Jeg kan ikke trene noen, men jeg har stor bil og kan kjøre til bortekamper." - }, - { - "id": "rorlegger", - "need": "sponsor", - "text": "Jeg driver rørleggerfirma her i bygda og vil gjerne ha logoen vår på draktene til et lag. Hvem snakker jeg med?" - }, - { - "id": "kafeen", - "need": "sponsor", - "text": "Vi har kafé i sentrum og kan bidra med noe til cupen i mai, kanskje vafler eller litt penger." - }, - { - "id": "lyset-slukker", - "need": "baneproblem", - "text": "Lyset på kunstgresset slår seg av halv åtte og vi trener til åtte. Ungene løper i mørket." - } - ] -} \ No newline at end of file diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/rated/rate.json b/vendor/trainer/runs/fotballklubb-2026-09-24/rated/rate.json deleted file mode 100644 index e09ff96..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/rated/rate.json +++ /dev/null @@ -1,259 +0,0 @@ -{ - "avgiftssak": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 28.98039215686275, - "options": 2, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 1, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 29.669950738916256, - "options": 2, - "overloaded": false, - "page": "/foresatte", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 1 - } - } - ], - "steps": 2 - }, - "baneproblem": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 20.090909090909093, - "options": 1, - "overloaded": false, - "page": "/trenere/baneproblem", - "personas": 1, - "required_fields": 2, - "understanding": { - "asked": 1, - "next": 1, - "where": 1, - "which": 1 - } - } - ], - "steps": 1 - }, - "desk /styret avgiftssaker": { - "mistaken": [], - "of": 4, - "right": 4 - }, - "desk /styret frivillige": { - "mistaken": [ - "open>avslatt as \"Merk som kontaktet\"" - ], - "of": 4, - "right": 3 - }, - "desk /styret sponsorer": { - "mistaken": [], - "of": 4, - "right": 4 - }, - "desk /trenere innmeldinger": { - "mistaken": [], - "of": 2, - "right": 2 - }, - "frivillig": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 28.98039215686275, - "options": 2, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 2, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 29.606653620352247, - "options": 2, - "overloaded": false, - "page": "/bidra", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "innmelding": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 1, - "which": 0 - }, - "control_ok": false, - "followup_shown": false, - "lix": 28.98039215686275, - "options": 2, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 1, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 31.454545454545453, - "options": 2, - "overloaded": false, - "page": "/foresatte", - "personas": 2, - "required_fields": 5, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "mail innmeldinger:betalt": { - "lix": 30.017543859649123, - "words": 40 - }, - "mail innmeldinger:godkjent": { - "lix": 39.333333333333336, - "words": 37 - }, - "mail innmeldinger:open": { - "lix": 31.4, - "words": 33 - }, - "sponsor": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 28.98039215686275, - "options": 2, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 1, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 26.20779220779221, - "options": 2, - "overloaded": false, - "page": "/bidra", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/site/aggregates.yaml b/vendor/trainer/runs/fotballklubb-2026-09-24/site/aggregates.yaml deleted file mode 100644 index 6067752..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/site/aggregates.yaml +++ /dev/null @@ -1,99 +0,0 @@ -aggregates: -- bucket: avgiftssaker - initial: open - states: - avslatt: - event: avslatt - innvilget: - event: innvilget - open: - event: received - vurdert: - event: vurdert - transitions: - open: - - vurdert - - avslatt - vurdert: - - innvilget - - avslatt -- bucket: baneproblemer - initial: open - states: - open: - event: received - ordnet: - event: ordnet - tatt_tak_i: - event: tatt_tak_i - transitions: - open: - - tatt_tak_i - tatt_tak_i: - - ordnet -- bucket: frivillige - initial: open - states: - avslatt: - event: avslatt - kontaktet: - event: kontaktet - open: - event: received - plassert: - event: plassert - transitions: - kontaktet: - - plassert - - avslatt - open: - - kontaktet - - avslatt -- bucket: innmeldinger - initial: open - states: - betalt: - event: betalt - mail: - body: Betalingen er registrert, og plassen på laget er sikret. Trenerne tar kontakt før oppstart. Har du spørsmål, bare svar på denne mailen. - subject: Betalt - plassen er sikret - to: submitter - godkjent: - event: godkjent - mail: - body: '{child} har fått plass på laget for sitt årskull. Faktura for treningsavgiften kommer, og plassen er klar når den er betalt.' - subject: Godkjent - plass på laget - to: submitter - open: - event: received - mail: - body: Innmeldingen er mottatt, og trenerne ser på den nå. Du hører fra oss så snart plassen er avklart. - subject: Innmeldingen er mottatt - to: submitter - trukket: - event: trukket - transitions: - godkjent: - - betalt - - trukket - open: - - godkjent - - trukket -- bucket: sponsorer - initial: open - states: - avslatt: - event: avslatt - avtalt: - event: avtalt - i_dialog: - event: i_dialog - open: - event: received - transitions: - i_dialog: - - avtalt - - avslatt - open: - - i_dialog - - avslatt diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/site/needs.yaml b/vendor/trainer/runs/fotballklubb-2026-09-24/site/needs.yaml deleted file mode 100644 index f832fbc..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/site/needs.yaml +++ /dev/null @@ -1,149 +0,0 @@ -needs: -- also_moved_by: - - kasserer - done_when: - - betalt - - trukket - enters: / - handled_by: trenere - id: innmelding - lands_in: innmeldinger - max_fields: 5 - max_steps: 2 - stage_words: - betalt: betalt - godkjent: godkjent av treneren - open: mottatt - trukket: trukket - stages: - - open - - godkjent - - betalt - - trukket - success: - - betalt - via: Få barnet ditt med på laget - wants: at barnet får plass på laget for sitt årskull - who: en forelder som vil ha ungen med på et lag -- done_when: - - innvilget - - avslatt - enters: / - handled_by: styret - id: avgiftssak - lands_in: avgiftssaker - max_fields: 3 - max_steps: 2 - stage_words: - avslatt: avslått - innvilget: innvilget - open: mottatt - vurdert: vurdert - stages: - - open - - vurdert - - innvilget - - avslatt - success: - - innvilget - via: Få barnet ditt med på laget - wants: å dele den opp, eller slippe den - who: en forelder som sliter med treningsavgiften -- done_when: - - plassert - - avslatt - enters: / - handled_by: styret - id: frivillig - lands_in: frivillige - max_fields: 3 - max_steps: 2 - stage_words: - avslatt: takket nei - kontaktet: kontaktet - open: mottatt - plassert: satt opp - stages: - - open - - kontaktet - - plassert - - avslatt - success: - - plassert - via: Hjelp til eller støtt klubben - wants: å bli brukt der det trengs - who: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad -- done_when: - - avtalt - - avslatt - enters: / - handled_by: styret - id: sponsor - lands_in: sponsorer - max_fields: 3 - max_steps: 2 - stage_words: - avslatt: avslått - avtalt: avtalt - i_dialog: i dialog - open: mottatt - stages: - - open - - i_dialog - - avtalt - - avslatt - success: - - avtalt - via: Hjelp til eller støtt klubben - wants: en prat om hva de kan bidra med, og en avtale - who: en bedrift i bygda som vil støtte klubben -- done_when: - - ordnet - enters: /trenere/baneproblem - enters_as: trenere - handled_by: styret - id: baneproblem - lands_in: baneproblemer - max_fields: 2 - max_steps: 1 - stage_words: - open: mottatt - ordnet: ordnet - tatt_tak_i: tatt tak i - stages: - - open - - tatt_tak_i - - ordnet - success: - - ordnet - via: Meld fra om noe som ikke er i orden - wants: at styret får vite det og ordner det - who: en trener som ser at noe på anlegget ikke er i orden -personas: -- id: ny-i-bygda - need: innmelding - text: Vi flyttet hit i sommer og sønnen vår på ni har spilt fotball før. Hvordan får vi ham med på et lag her? -- id: tvillinger - need: innmelding - text: Jeg har tvillingjenter på sju som maser om å begynne. Er det plass, og hva koster det? -- id: alenefar - need: avgiftssak - text: Jeg er alene med tre unger og treningsavgiften for alle tre blir for mye på en gang. Går det an å dele den opp? -- id: permittert - need: avgiftssak - text: Jeg ble permittert i vinter. Kan dattera mi fortsette å spille selv om vi ikke klarer avgiften akkurat nå? -- id: pensjonist - need: frivillig - text: Jeg er pensjonert og spilte selv i mange år. Har dere bruk for en som kan ta de minste et par kvelder i uka? -- id: stor-bil - need: frivillig - text: Jeg kan ikke trene noen, men jeg har stor bil og kan kjøre til bortekamper. -- id: rorlegger - need: sponsor - text: Jeg driver rørleggerfirma her i bygda og vil gjerne ha logoen vår på draktene til et lag. Hvem snakker jeg med? -- id: kafeen - need: sponsor - text: Vi har kafé i sentrum og kan bidra med noe til cupen i mai, kanskje vafler eller litt penger. -- id: lyset-slukker - need: baneproblem - text: Lyset på kunstgresset slår seg av halv åtte og vi trener til åtte. Ungene løper i mørket. diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/bidra/index.yaml b/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/bidra/index.yaml deleted file mode 100644 index b3df1cb..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/bidra/index.yaml +++ /dev/null @@ -1,78 +0,0 @@ -alternatives: -- action: /received/frivillig - consequence: - - Meld deg - description: Trenere, lagledere, sjåfører og folk på dugnad - vi trenger alltid flere hender. - encouragements: - - Du binder deg ikke til noe ved å sende dette - vi tar en prat om hva som passer. - features: - - description: Styret tar kontakt med deg, og sammen finner dere hvor du passer inn - som trener, lagleder, sjåfør eller på dugnad. - icon: lucide:route - name: Hva skjer videre - - description: Styret leser meldingen din - du kan også ringe Kari på kari@liail.example i mellomtiden. - icon: lucide:users - name: Hvem leser dette - - description: Fortell litt om deg selv, så finner vi ut hvor du trengs mest. - icon: lucide:hand-helping - name: Bli frivillig - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: Telefon - name: telefon - placeholder: 123 45 678 - type: tel - - label: Hva kan du bidra med? - name: hva_kan_du - options: - - Trene et lag - - Være lagleder - - Kjøre til kamper - - Dugnad - - Annet - type: select - name: Bidra med det du kan - record_as: frivillige -- action: /received/sponsor - consequence: - - Ta kontakt - description: Er du fra en bedrift i bygda som vil støtte fotballgruppa? Vi tar gjerne en prat om hva dere kan bidra med. - encouragements: - - Det koster ingenting å spørre - vi finner en løsning som passer dere. - features: - - description: Styret tar kontakt for en prat om hva som passer, og dere blir enige om en avtale. - icon: lucide:route - name: Hva skjer videre - - description: Styret leser henvendelsen - du kan også ringe Kari på kari@liail.example i mellomtiden. - icon: lucide:users - name: Hvem leser dette - - description: Skriv litt om hva dere ser for dere, så tar vi kontakt. - icon: lucide:handshake - name: Bli sponsor - requirements: - - label: Bedrift - name: bedrift - placeholder: Bygdas Byggvarer AS - type: text - - label: Kontaktperson - name: kontaktperson - placeholder: Kari Nordmann - type: text - - label: Telefon - name: telefon - placeholder: 123 45 678 - type: tel - - label: Hva tenker dere å bidra med? - name: hva_tenker_dere - optional: true - placeholder: Vil gjerne sponse draktene, eller bidra med noe annet - type: textarea - name: Støtt fotballen på bygda - record_as: sponsorer -description: Klubben går rundt fordi foreldre og lokale bedrifter stiller opp. Her kan du melde deg som frivillig eller som sponsor. -name: Vil du hjelpe til eller støtte klubben? -responsible: - contact: kari@liail.example - name: Kari Lien diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/foresatte/index.yaml b/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/foresatte/index.yaml deleted file mode 100644 index 7acd594..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/foresatte/index.yaml +++ /dev/null @@ -1,97 +0,0 @@ -alternatives: -- action: /received/innmelding - consequence: - - Meld inn - description: Meld ungen din på laget for sitt årskull, så tar trenerne det derfra. - encouragements: - - Det tar bare et par minutter, og du hører fra treneren så snart plassen er klar. - features: - - description: Trenerne godkjenner påmeldingen og setter barnet på riktig lag. Når det er gjort, betaler du avgiften, og ungen er klar til å spille. - icon: lucide:check-circle - name: Hva skjer videre - - description: Trenerne for årskullet leser påmeldingen, og du kan ringe Kari om du lurer på noe underveis. - icon: lucide:user-check - name: Hvem leser dette - - description: Ha gjerne fødselsår og eventuell tidligere klubb klart. - icon: lucide:footprints - name: Meld på ungen - requirements: - - label: Barnets navn - name: barnets_navn - placeholder: Ola Nordmann - type: text - - label: Fødselsår - name: fodselsar - options: - - '2010' - - '2011' - - '2012' - - '2013' - - '2014' - - '2015' - - '2016' - - '2017' - - '2018' - - '2019' - - '2020' - type: select - - label: Ditt navn - name: foresatt - placeholder: Kari Nordmann - type: text - - label: Telefon - name: telefon - placeholder: 912 34 567 - type: tel - - label: E-post - name: email - placeholder: kari@epost.no - type: email - - label: Spilt for tidligere - name: spilt_for - optional: true - placeholder: Har ikke spilt fotball før - type: text - name: Meld ungen din på laget - record_as: innmeldinger -- action: /received/avgiftssak - consequence: - - Send inn - description: Vi finner en løsning sammen, enten det er å dele opp betalingen eller søke om støtte. Ingen unger skal stå utenfor på grunn av avgiften. - encouragements: - - Dette blir behandlet fortrolig, og du hører fra oss så fort styret har sett på saken. - features: - - description: Saken din blir sett på, og du får svar på om dere kan få en ordning eller ikke. Vi gir beskjed uansett hva svaret blir. - icon: lucide:clipboard-list - name: Hva skjer videre - - description: Styret leser dette selv, og du kan alltids ta direkte kontakt med Kari i mellomtiden. - icon: lucide:users - name: Hvem leser dette - - description: Fortell kort hva saken gjelder, så tar vi kontakt. - icon: lucide:wallet - name: Om avgiften - requirements: - - label: Barnets navn - name: barnets_navn - placeholder: Ola Nordmann - type: text - - label: Ditt navn - name: foresatt - placeholder: Kari Nordmann - type: text - - label: Hva gjelder det - name: hva_gjelder_det - placeholder: Vi ønsker å dele opp avgiften over flere måneder - type: textarea - - label: Telefon - name: telefon - optional: true - placeholder: 912 34 567 - type: tel - name: Få hjelp med treningsavgiften - record_as: avgiftssaker -description: Skal ungen din spille fotball hos oss, eller sliter dere med å få treningsavgiften til å gå opp? Her finner du fram. -name: Vil du melde på ungen din, eller trenger dere hjelp med avgiften? -responsible: - contact: kari@liail.example - name: Kari Lien diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/index.yaml b/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/index.yaml deleted file mode 100644 index 5d6b695..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/index.yaml +++ /dev/null @@ -1,33 +0,0 @@ -alternatives: -- description: Rundt hundre og tjue unger fra seks til seksten år spiller fotball hos oss, fordelt på lag etter årskull. - features: - - description: Sliter du med treningsavgiften, kan vi se på en avtale. - icon: lucide:wallet - name: Få hjelp med treningsavgiften - - description: Meld ungen på laget for sitt årskull. - icon: lucide:user-plus - name: Meld barnet på et lag - name: Fotball for ungene i bygda -- action: /foresatte - consequence: - - Meld på barnet - description: Meld på ungen, spør om treningsavgiften, eller si fra om noe på banen. - features: - - description: '' - icon: lucide:baby - name: Deg som har en unge som spiller, eller vil begynne - name: Få barnet ditt med på laget -- action: /bidra - consequence: - - Meld interesse - description: Vi trenger trenere, lagledere, sjåfører og folk på dugnad – og bedrifter som vil støtte laget. - features: - - description: '' - icon: lucide:hand-helping - name: Deg som vil bidra, eller din bedrift - name: Hjelp til eller støtt klubben -description: Vi er fotballgruppa til Lia IL – et sted der ungene får spille på lag med jevnaldrende, trent av foreldre fra bygda. -name: Hva vil du gjøre hos oss? -responsible: - contact: kari@liail.example - name: Kari Lien diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/kasserer/_section.yaml b/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/kasserer/_section.yaml deleted file mode 100644 index 2f8af2f..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/kasserer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: kasserer diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/kasserer/index.yaml b/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/kasserer/index.yaml deleted file mode 100644 index 1e23113..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/kasserer/index.yaml +++ /dev/null @@ -1,56 +0,0 @@ -alternatives: -- action: /kasserer - consequence: - - Bekreft - description: Alle påmeldinger til lagene, sortert etter hvor de står i løpet. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: innmeldinger - kind: kv - transitions: - - from: godkjent - label: Merk som betalt - to: betalt - name: Se hvem som vil spille -- action: /kasserer - consequence: - - Send invitasjon - description: Gi noen tilgang til å hjelpe deg med kassererarbeidet, som avgifter og innbetalinger. - features: - - description: '' - name: Inviter en kasserer - requirements: - - label: Navn - name: name - - label: E-postadresse - name: email - type: email - invite: - group: kasserer - name: Få hjelp med kassa -- action: /kasserer - consequence: - - Bekreft - description: Folk du har bedt om å hjelpe til med kassereroppgaver, og om de har tatt imot invitasjonen ennå. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Tatt imot - to: done - name: Følg med på invitasjonene dine -description: Her har du oversikt over innmeldinger, avgiftssaker og folk du har invitert til å hjelpe med kassa. -name: Hva trenger kassa hjelp med akkurat nå? -responsible: - contact: kari@liail.example - name: Kari Lien diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/received/avgiftssak.yaml b/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/received/avgiftssak.yaml deleted file mode 100644 index 72f026f..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/received/avgiftssak.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Styret behandler saker fortløpende og gir deg beskjed på e-post eller telefon når de har landet på en løsning. - name: Styret tar kontakt med et svar -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Vi har fått søknaden din om treningsavgiften. Styret ser på den og svarer deg så snart de kan. -name: Hva skjer nå med søknaden min? diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/received/frivillig.yaml b/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/received/frivillig.yaml deleted file mode 100644 index 3e87f11..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/received/frivillig.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Styret ser gjennom hva klubben trenger akkurat nå, og finner en oppgave som passer for deg. - name: Styret finner riktig oppgave til deg -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Meldingen din har gått til styret. De tar kontakt for å høre hvor du passer inn. -name: Hva skjer nå som jeg har meldt meg? diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/received/innmelding.yaml b/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/received/innmelding.yaml deleted file mode 100644 index 1d12097..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/received/innmelding.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Trenerne går gjennom påmeldingen og gir barnet plass på laget for sitt årskull. Dere hører fra dem når det er avklart. - name: Trenerne ser på påmeldingen -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Meldingen er sendt til trenerne for laget. De tar kontakt så snart de har sett gjennom påmeldingen. -name: Hva skjer nå som jeg har meldt på barnet? diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/received/sponsor.yaml b/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/received/sponsor.yaml deleted file mode 100644 index f601cb8..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/received/sponsor.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Styret svarer så fort de kan, som regel i løpet av noen dager, og avtaler et sted å prate videre. - name: Styret tar kontakt for en prat -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at dere vil støtte Lia IL Fotball. Noen fra styret ser gjennom henvendelsen og tar kontakt for en prat om hva dere kan bidra med. -name: Har henvendelsen vår kommet fram? diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/styret/_section.yaml b/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/styret/_section.yaml deleted file mode 100644 index 5a34160..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/styret/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: styret diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/styret/index.yaml b/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/styret/index.yaml deleted file mode 100644 index 32d2711..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/styret/index.yaml +++ /dev/null @@ -1,137 +0,0 @@ -alternatives: -- action: /styret - consequence: - - Bekreft - description: Familier som sliter med å betale treningsavgiften, og trenger en avtale om betaling. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: avgiftssaker - kind: kv - transitions: - - from: open - label: Merk som vurdert - to: vurdert - - from: open - label: Avslå søknaden - to: avslatt - - from: vurdert - label: Innvilg søknaden - to: innvilget - - from: vurdert - label: Avslå søknaden - to: avslatt - name: Søknader om redusert eller delt avgift -- action: /styret - consequence: - - Bekreft - description: Ting trenere har meldt fra om på anlegget, som styret må ta tak i. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: baneproblemer - kind: kv - transitions: - - from: open - label: Ta tak i saken - to: tatt_tak_i - - from: tatt_tak_i - label: Merk som ordnet - to: ordnet - name: Meldinger om anlegget -- action: /styret - consequence: - - Bekreft - description: Foreldre og andre som har meldt seg til å hjelpe til, klare for å bli satt i sving. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: frivillige - kind: kv - transitions: - - from: kontaktet - label: Merk som plassert - to: plassert - - from: kontaktet - label: Avslå henvendelsen - to: avslatt - - from: open - label: Merk som kontaktet - to: kontaktet - - from: open - label: Avslå henvendelsen - to: avslatt - name: Folk som vil bidra -- action: /styret - consequence: - - Bekreft - description: Bedrifter på bygda som vil støtte klubben, og som venter på en prat om avtale. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: sponsorer - kind: kv - transitions: - - from: i_dialog - label: Merk som avtalt - to: avtalt - - from: i_dialog - label: Avslå henvendelsen - to: avslatt - - from: open - label: Start dialog - to: i_dialog - - from: open - label: Avslå henvendelsen - to: avslatt - name: Bedrifter som vil sponse -- action: /styret - consequence: - - Send invitasjon - description: Gi et nytt styremedlem tilgang til denne siden med en engangslenke. - features: - - description: '' - name: Inviter til styret - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: styret - name: Inviter noen inn i styret -- action: /styret - consequence: - - Bekreft - description: Styremedlemmer som har fått invitasjon, og om de har tatt den i bruk. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Tatt i bruk - to: done - name: Inviterte styremedlemmer -description: Her holder styret oversikt over avgiftssaker, baneproblemer, frivillige og sponsorer. -name: Hva trenger styret å følge opp nå? -responsible: - contact: kari@liail.example - name: Kari Lien diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/trenere/_section.yaml b/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/trenere/_section.yaml deleted file mode 100644 index 03a1f29..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/trenere/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: trenere diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/trenere/baneproblem-sent.yaml b/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/trenere/baneproblem-sent.yaml deleted file mode 100644 index 5fb2811..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/trenere/baneproblem-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Styret tar tak i saken og fikser det som trengs, eller sier fra hvis det tar tid. - name: Styret følger opp saken -- action: /trenere - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Meldingen om baneproblemet er sendt til styret. -name: Hva skjer nå? diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/trenere/baneproblem.yaml b/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/trenere/baneproblem.yaml deleted file mode 100644 index cce5805..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/trenere/baneproblem.yaml +++ /dev/null @@ -1,34 +0,0 @@ -alternatives: -- action: /trenere/baneproblem-sent - consequence: - - Meld fra om feil - description: Ser du noe på banen eller anlegget som ikke er i orden? Gi beskjed til styret, så tar de tak i det. - encouragements: - - Du hører fra styret så snart de har sett på saken. - features: - - description: Meldingen går til styret, som tar tak i saken og ordner det som trengs. - icon: lucide:wrench - name: Slik følges det opp - - description: Styret leser meldingen og følger opp; haster det, ring Kari Lien i mellomtiden. - icon: lucide:users - name: Hvem leser dette - - description: Beskriv hva du så, og hvor det var. - icon: lucide:alert-triangle - name: Meld baneproblem - requirements: - - label: Hvor på anlegget? - name: hvor - placeholder: Bane 2, ved siden av klubbhuset - type: text - - label: Hva gjelder det? - name: hva - placeholder: Løs plate på tribunen, hull i nettet på mål A - type: textarea - name: Meld fra om noe som ikke er i orden - record_as: baneproblemer -description: Se du noe på treningsfeltet, banen eller anlegget som bør fikses? Send en kort melding, så følger styret det opp. -followup: false -name: Har du sett noe på anlegget som bør ordnes? -responsible: - contact: kari@liail.example - name: Kari Lien diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/trenere/index.yaml b/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/trenere/index.yaml deleted file mode 100644 index daa5553..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/site/questions/trenere/index.yaml +++ /dev/null @@ -1,67 +0,0 @@ -alternatives: -- action: /trenere - consequence: - - Bekreft - description: Meldinger fra foreldre som vil ha ungen sin med på et lag. - features: - - description: '' - name: '' - resource: - requires_group: trenere - source: - bucket: innmeldinger - kind: kv - transitions: - - from: godkjent - label: Trekk påmeldingen - to: trukket - - from: open - label: Godkjenn plass - to: godkjent - - from: open - label: Avvis påmeldingen - to: trukket - name: Nye påmeldinger til laget -- action: /trenere/baneproblem - consequence: - - Meld fra - description: Si ifra til styret om noe på anlegget ikke er i orden. - name: Meld fra om noe på anlegget -- action: /trenere - consequence: - - Send invitasjon - description: Inviter en ny trener til å få tilgang som trener på laget. - features: - - description: '' - name: Inviter trener - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: trenere - name: Få inn en ny trener -- action: /trenere - consequence: - - Bekreft - description: Trenere du har invitert, og om de har tatt imot invitasjonen. - features: - - description: '' - name: '' - resource: - requires_group: trenere - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Har startet - to: done - name: Trenere du har invitert -description: Her ser du påmeldinger til lagene, sender invitasjon til nye trenere og melder fra om baneproblem. -name: Hva trenger jeg å følge opp for laget mitt? -responsible: - contact: kari@liail.example - name: Kari Lien diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/site/site.yaml b/vendor/trainer/runs/fotballklubb-2026-09-24/site/site.yaml deleted file mode 100644 index ac2ba78..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/site/site.yaml +++ /dev/null @@ -1,5 +0,0 @@ -lang: no -mail: - from: Liail IL - reply_to: kari@liail.example -title: Lia IL Fotball diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/site/words.json b/vendor/trainer/runs/fotballklubb-2026-09-24/site/words.json deleted file mode 100644 index 99e432a..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/site/words.json +++ /dev/null @@ -1,377 +0,0 @@ -{ - "aggregates.yaml": { - "innmeldinger": { - "betalt": { - "body": "Hei!\n\nVi har mottatt betalingen for {chain}. Da er alt i orden, og barnet er klart for sesongen.\n\nTakk for at dere er med i Lia IL Fotball!\n\nHilsen Lia IL Fotball", - "subject": "Betaling mottatt - velkommen til Lia IL Fotball" - }, - "godkjent": { - "body": "Hei!\n\nBarnet er godkjent på laget for sitt årskull. Nå gjenstår kun betaling av treningsavgiften, så er plassen sikret.\n\nDere hører fra trenerne om oppstart og praktiske detaljer.\n\nHilsen Lia IL Fotball", - "subject": "Godkjent - klar for laget" - }, - "open": { - "body": "Hei!\n\nVi har mottatt påmeldingen for {chain}. Trenerne ser på den og gir beskjed så snart barnet har fått plass på laget for sitt årskull.\n\nHilsen Lia IL Fotball", - "subject": "Vi har mottatt påmeldingen" - } - } - }, - "questions/bidra/index.yaml": { - "description": "Klubben går rundt fordi foreldre og lokale bedrifter stiller opp. Her kan du melde deg som frivillig eller som sponsor.", - "needs": { - "frivillig": { - "button": "Meld deg", - "description": "Trenere, lagledere, sjåfører og folk på dugnad - vi trenger alltid flere hender.", - "encouragement": "Du binder deg ikke til noe ved å sende dette - vi tar en prat om hva som passer.", - "form_description": "Fortell litt om deg selv, så finner vi ut hvor du trengs mest.", - "form_title": "Bli frivillig", - "heading": "Bidra med det du kan", - "hints": { - "hva_kan_du": "Kan trene, kjøre til bortekamper, eller stille på dugnad", - "navn": "Ola Nordmann", - "telefon": "123 45 678" - }, - "icon": "hand-helping", - "labels": { - "hva_kan_du": "Hva kan du bidra med?", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Styret tar kontakt med deg, og sammen finner dere hvor du passer inn - som trener, lagleder, sjåfør eller på dugnad.", - "road_icon": "route", - "road_title": "Hva skjer videre", - "who_description": "Styret leser meldingen din - du kan også ringe Kari på kari@liail.example i mellomtiden.", - "who_icon": "users", - "who_title": "Hvem leser dette" - }, - "sponsor": { - "button": "Ta kontakt", - "description": "Er du fra en bedrift i bygda som vil støtte fotballgruppa? Vi tar gjerne en prat om hva dere kan bidra med.", - "encouragement": "Det koster ingenting å spørre - vi finner en løsning som passer dere.", - "form_description": "Skriv litt om hva dere ser for dere, så tar vi kontakt.", - "form_title": "Bli sponsor", - "heading": "Støtt fotballen på bygda", - "hints": { - "bedrift": "Bygdas Byggvarer AS", - "hva_tenker_dere": "Vil gjerne sponse draktene, eller bidra med noe annet", - "kontaktperson": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "handshake", - "labels": { - "bedrift": "Bedrift", - "hva_tenker_dere": "Hva tenker dere å bidra med?", - "kontaktperson": "Kontaktperson", - "telefon": "Telefon" - }, - "road_description": "Styret tar kontakt for en prat om hva som passer, og dere blir enige om en avtale.", - "road_icon": "route", - "road_title": "Hva skjer videre", - "who_description": "Styret leser henvendelsen - du kan også ringe Kari på kari@liail.example i mellomtiden.", - "who_icon": "users", - "who_title": "Hvem leser dette" - } - }, - "question": "Vil du hjelpe til eller støtte klubben?" - }, - "questions/foresatte/index.yaml": { - "description": "Skal ungen din spille fotball hos oss, eller sliter dere med å få treningsavgiften til å gå opp? Her finner du fram.", - "needs": { - "avgiftssak": { - "button": "Send inn", - "description": "Vi finner en løsning sammen, enten det er å dele opp betalingen eller søke om støtte. Ingen unger skal stå utenfor på grunn av avgiften.", - "encouragement": "Dette blir behandlet fortrolig, og du hører fra oss så fort styret har sett på saken.", - "form_description": "Fortell kort hva saken gjelder, så tar vi kontakt.", - "form_title": "Om avgiften", - "heading": "Få hjelp med treningsavgiften", - "hints": { - "barnets_navn": "Ola Nordmann", - "foresatt": "Kari Nordmann", - "hva_gjelder_det": "Vi ønsker å dele opp avgiften over flere måneder", - "telefon": "912 34 567" - }, - "icon": "wallet", - "labels": { - "barnets_navn": "Barnets navn", - "foresatt": "Ditt navn", - "hva_gjelder_det": "Hva gjelder det", - "telefon": "Telefon" - }, - "road_description": "Saken din blir sett på, og du får svar på om dere kan få en ordning eller ikke. Vi gir beskjed uansett hva svaret blir.", - "road_icon": "clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Styret leser dette selv, og du kan alltids ta direkte kontakt med Kari i mellomtiden.", - "who_icon": "users", - "who_title": "Hvem leser dette" - }, - "innmelding": { - "button": "Meld inn", - "description": "Meld ungen din på laget for sitt årskull, så tar trenerne det derfra.", - "encouragement": "Det tar bare et par minutter, og du hører fra treneren så snart plassen er klar.", - "form_description": "Ha gjerne fødselsår og eventuell tidligere klubb klart.", - "form_title": "Meld på ungen", - "heading": "Meld ungen din på laget", - "hints": { - "barnets_navn": "Ola Nordmann", - "email": "kari@epost.no", - "fodselsar": "2016", - "foresatt": "Kari Nordmann", - "spilt_for": "Har ikke spilt fotball før", - "telefon": "912 34 567" - }, - "icon": "footprints", - "labels": { - "barnets_navn": "Barnets navn", - "email": "E-post", - "fodselsar": "Fødselsår", - "foresatt": "Ditt navn", - "spilt_for": "Spilt for tidligere", - "telefon": "Telefon" - }, - "road_description": "Trenerne godkjenner påmeldingen og setter barnet på riktig lag. Når det er gjort, betaler du avgiften, og ungen er klar til å spille.", - "road_icon": "check-circle", - "road_title": "Hva skjer videre", - "who_description": "Trenerne for årskullet leser påmeldingen, og du kan ringe Kari om du lurer på noe underveis.", - "who_icon": "user-check", - "who_title": "Hvem leser dette" - } - }, - "question": "Vil du melde på ungen din, eller trenger dere hjelp med avgiften?" - }, - "questions/index.yaml": { - "description": "Vi er fotballgruppa til Lia IL – et sted der ungene får spille på lag med jevnaldrende, trent av foreldre fra bygda.", - "doors": { - "bidra": { - "button": "Meld interesse", - "description": "Vi trenger trenere, lagledere, sjåfører og folk på dugnad – og bedrifter som vil støtte laget.", - "for_whom": "Deg som vil bidra, eller din bedrift", - "heading": "Hjelp til eller støtt klubben", - "icon": "hand-helping" - }, - "foresatte": { - "button": "Meld på barnet", - "description": "Meld på ungen, spør om treningsavgiften, eller si fra om noe på banen.", - "for_whom": "Deg som har en unge som spiller, eller vil begynne", - "heading": "Få barnet ditt med på laget", - "icon": "baby" - } - }, - "needs": {}, - "opener": { - "description": "Rundt hundre og tjue unger fra seks til seksten år spiller fotball hos oss, fordelt på lag etter årskull.", - "features": { - "avgiftssak": { - "description": "Sliter du med treningsavgiften, kan vi se på en avtale.", - "heading": "Få hjelp med treningsavgiften", - "icon": "wallet" - }, - "innmelding": { - "description": "Meld ungen på laget for sitt årskull.", - "heading": "Meld barnet på et lag", - "icon": "user-plus" - } - }, - "heading": "Fotball for ungene i bygda" - }, - "question": "Hva vil du gjøre hos oss?", - "shopping": { - "description": "Se hvilke lag vi har, og hvordan årskullene er delt inn.", - "heading": "Se lagene våre", - "items": {} - } - }, - "questions/kasserer/index.yaml": { - "buckets": { - "innmeldinger": { - "description": "Alle påmeldinger til lagene, sortert etter hvor de står i løpet.", - "heading": "Se hvem som vil spille", - "moves": { - "godkjent->betalt": "Merk som betalt" - } - } - }, - "confirm": "Bekreft", - "description": "Her har du oversikt over innmeldinger, avgiftssaker og folk du har invitert til å hjelpe med kassa.", - "invited": { - "description": "Folk du har bedt om å hjelpe til med kassereroppgaver, og om de har tatt imot invitasjonen ennå.", - "done": "Tatt imot", - "heading": "Følg med på invitasjonene dine" - }, - "invites": { - "kasserer": { - "button": "Send invitasjon", - "description": "Gi noen tilgang til å hjelpe deg med kassererarbeidet, som avgifter og innbetalinger.", - "form_title": "Inviter en kasserer", - "heading": "Få hjelp med kassa", - "labels": { - "email": "E-postadresse", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva trenger kassa hjelp med akkurat nå?" - }, - "questions/received/avgiftssak.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har fått søknaden din om treningsavgiften. Styret ser på den og svarer deg så snart de kan.", - "next_description": "Styret behandler saker fortløpende og gir deg beskjed på e-post eller telefon når de har landet på en løsning.", - "next_heading": "Styret tar kontakt med et svar", - "question": "Hva skjer nå med søknaden min?" - }, - "questions/received/frivillig.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din har gått til styret. De tar kontakt for å høre hvor du passer inn.", - "next_description": "Styret ser gjennom hva klubben trenger akkurat nå, og finner en oppgave som passer for deg.", - "next_heading": "Styret finner riktig oppgave til deg", - "question": "Hva skjer nå som jeg har meldt meg?" - }, - "questions/received/innmelding.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen er sendt til trenerne for laget. De tar kontakt så snart de har sett gjennom påmeldingen.", - "next_description": "Trenerne går gjennom påmeldingen og gir barnet plass på laget for sitt årskull. Dere hører fra dem når det er avklart.", - "next_heading": "Trenerne ser på påmeldingen", - "question": "Hva skjer nå som jeg har meldt på barnet?" - }, - "questions/received/sponsor.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at dere vil støtte Lia IL Fotball. Noen fra styret ser gjennom henvendelsen og tar kontakt for en prat om hva dere kan bidra med.", - "next_description": "Styret svarer så fort de kan, som regel i løpet av noen dager, og avtaler et sted å prate videre.", - "next_heading": "Styret tar kontakt for en prat", - "question": "Har henvendelsen vår kommet fram?" - }, - "questions/styret/index.yaml": { - "buckets": { - "avgiftssaker": { - "description": "Familier som sliter med å betale treningsavgiften, og trenger en avtale om betaling.", - "heading": "Søknader om redusert eller delt avgift", - "moves": { - "open->avslatt": "Avslå søknaden", - "open->vurdert": "Merk som vurdert", - "vurdert->avslatt": "Avslå søknaden", - "vurdert->innvilget": "Innvilg søknaden" - } - }, - "baneproblemer": { - "description": "Ting trenere har meldt fra om på anlegget, som styret må ta tak i.", - "heading": "Meldinger om anlegget", - "moves": { - "open->tatt_tak_i": "Ta tak i saken", - "tatt_tak_i->ordnet": "Merk som ordnet" - } - }, - "frivillige": { - "description": "Foreldre og andre som har meldt seg til å hjelpe til, klare for å bli satt i sving.", - "heading": "Folk som vil bidra", - "moves": { - "kontaktet->avslatt": "Avslå henvendelsen", - "kontaktet->plassert": "Merk som plassert", - "open->avslatt": "Avslå henvendelsen", - "open->kontaktet": "Merk som kontaktet" - } - }, - "sponsorer": { - "description": "Bedrifter på bygda som vil støtte klubben, og som venter på en prat om avtale.", - "heading": "Bedrifter som vil sponse", - "moves": { - "i_dialog->avslatt": "Avslå henvendelsen", - "i_dialog->avtalt": "Merk som avtalt", - "open->avslatt": "Avslå henvendelsen", - "open->i_dialog": "Start dialog" - } - } - }, - "confirm": "Bekreft", - "description": "Her holder styret oversikt over avgiftssaker, baneproblemer, frivillige og sponsorer.", - "invited": { - "description": "Styremedlemmer som har fått invitasjon, og om de har tatt den i bruk.", - "done": "Tatt i bruk", - "heading": "Inviterte styremedlemmer" - }, - "invites": { - "styret": { - "button": "Send invitasjon", - "description": "Gi et nytt styremedlem tilgang til denne siden med en engangslenke.", - "form_title": "Inviter til styret", - "heading": "Inviter noen inn i styret", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva trenger styret å følge opp nå?" - }, - "questions/trenere/baneproblem-sent.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen om baneproblemet er sendt til styret.", - "next_description": "Styret tar tak i saken og fikser det som trengs, eller sier fra hvis det tar tid.", - "next_heading": "Styret følger opp saken", - "question": "Hva skjer nå?" - }, - "questions/trenere/baneproblem.yaml": { - "button": "Meld fra om feil", - "description": "Ser du noe på banen eller anlegget som ikke er i orden? Gi beskjed til styret, så tar de tak i det.", - "encouragement": "Du hører fra styret så snart de har sett på saken.", - "form_description": "Beskriv hva du så, og hvor det var.", - "form_title": "Meld baneproblem", - "heading": "Meld fra om noe som ikke er i orden", - "hints": { - "hva": "Løs plate på tribunen, hull i nettet på mål A", - "hvor": "Bane 2, ved siden av klubbhuset" - }, - "icon": "alert-triangle", - "labels": { - "hva": "Hva gjelder det?", - "hvor": "Hvor på anlegget?" - }, - "page_description": "Se du noe på treningsfeltet, banen eller anlegget som bør fikses? Send en kort melding, så følger styret det opp.", - "question": "Har du sett noe på anlegget som bør ordnes?", - "road_description": "Meldingen går til styret, som tar tak i saken og ordner det som trengs.", - "road_icon": "wrench", - "road_title": "Slik følges det opp", - "who_description": "Styret leser meldingen og følger opp; haster det, ring Kari Lien i mellomtiden.", - "who_icon": "users", - "who_title": "Hvem leser dette" - }, - "questions/trenere/index.yaml": { - "buckets": { - "innmeldinger": { - "description": "Meldinger fra foreldre som vil ha ungen sin med på et lag.", - "heading": "Nye påmeldinger til laget", - "moves": { - "godkjent->trukket": "Trekk påmeldingen", - "open->godkjent": "Godkjenn plass", - "open->trukket": "Avvis påmeldingen" - } - } - }, - "confirm": "Bekreft", - "description": "Her ser du påmeldinger til lagene, sender invitasjon til nye trenere og melder fra om baneproblem.", - "invited": { - "description": "Trenere du har invitert, og om de har tatt imot invitasjonen.", - "done": "Har startet", - "heading": "Trenere du har invitert" - }, - "invites": { - "trenere": { - "button": "Send invitasjon", - "description": "Inviter en ny trener til å få tilgang som trener på laget.", - "form_title": "Inviter trener", - "heading": "Få inn en ny trener", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": { - "baneproblem": { - "button": "Meld fra", - "description": "Si ifra til styret om noe på anlegget ikke er i orden.", - "heading": "Meld fra om noe på anlegget" - } - }, - "question": "Hva trenger jeg å følge opp for laget mitt?" - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/spread.sh b/vendor/trainer/runs/fotballklubb-2026-09-24/spread.sh deleted file mode 100755 index c43dc8c..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/spread.sh +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/sh -# The noise floor: answer one run's tasks with several seeds and print -# each seed's score, so a change can be told from the visitor's mood. -# runs/spread.sh runs/ [seeds...] (default seeds: 1 2 3) -set -eu -run=${1:?usage: spread.sh runs/ [seeds...]}; shift -seeds=${*:-1 2 3} -IRIS=/var/local/cargo-target/release/iris -T=/var/local/cargo-target/release/portal-trainer -LLM="MODEL=qwen3:8b $(cd "$(dirname "$0")/.." && pwd)/engines/ollama.sh" -cd "$run" -for mode in full skim; do - skim=""; [ "$mode" = skim ] && skim="--skim" - for s in $seeds; do - $T answer --tasks tasks-$mode.jsonl --repo site --llm "$LLM" --seed "$s" > answers-$mode-seed$s.jsonl - printf "%s seed %s: " "$mode" "$s" - $IRIS check --path site/questions --needs-tasks tasks-$mode.jsonl $skim --needs-score answers-$mode-seed$s.jsonl 2>&1 | grep -E "^wording:" - done -done diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/tasks-full.jsonl b/vendor/trainer/runs/fotballklubb-2026-09-24/tasks-full.jsonl deleted file mode 100644 index 863363f..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/tasks-full.jsonl +++ /dev/null @@ -1,16 +0,0 @@ -{"id":"ny-i-bygda@/","persona":"ny-i-bygda","need":"innmelding","page":"/","state":{"body":"Vi flyttet hit i sommer og sønnen vår på ni har spilt fotball før. Hvordan får vi ham med på et lag her?","page":"Fotball for ungene i bygda: Rundt hundre og tjue unger fra seks til seksten år spiller fotball hos oss, fordelt på lag etter årskull. Få hjelp med treningsavgiften: Sliter du med treningsavgiften, kan vi se på en avtale. Meld barnet på et lag: Meld ungen på laget for sitt årskull."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre hos oss?\". Which alternative do they choose?","criteria":{"Få barnet ditt med på laget":"Meld på ungen, spør om treningsavgiften, eller si fra om noe på banen.","Hjelp til eller støtt klubben":"Vi trenger trenere, lagledere, sjåfører og folk på dugnad – og bedrifter som vil støtte laget."}}},"expect":["Få barnet ditt med på laget"]} -{"id":"ny-i-bygda@/foresatte","persona":"ny-i-bygda","need":"innmelding","page":"/foresatte","state":{"body":"Vi flyttet hit i sommer og sønnen vår på ni har spilt fotball før. Hvordan får vi ham med på et lag her?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du melde på ungen din, eller trenger dere hjelp med avgiften?\". Which alternative do they choose?","criteria":{"Få hjelp med treningsavgiften":"Vi finner en løsning sammen, enten det er å dele opp betalingen eller søke om støtte. Ingen unger skal stå utenfor på grunn av avgiften.","Meld ungen din på laget":"Meld ungen din på laget for sitt årskull, så tar trenerne det derfra."}}},"expect":["Meld ungen din på laget"]} -{"id":"tvillinger@/","persona":"tvillinger","need":"innmelding","page":"/","state":{"body":"Jeg har tvillingjenter på sju som maser om å begynne. Er det plass, og hva koster det?","page":"Fotball for ungene i bygda: Rundt hundre og tjue unger fra seks til seksten år spiller fotball hos oss, fordelt på lag etter årskull. Få hjelp med treningsavgiften: Sliter du med treningsavgiften, kan vi se på en avtale. Meld barnet på et lag: Meld ungen på laget for sitt årskull."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre hos oss?\". Which alternative do they choose?","criteria":{"Få barnet ditt med på laget":"Meld på ungen, spør om treningsavgiften, eller si fra om noe på banen.","Hjelp til eller støtt klubben":"Vi trenger trenere, lagledere, sjåfører og folk på dugnad – og bedrifter som vil støtte laget."}}},"expect":["Få barnet ditt med på laget"]} -{"id":"tvillinger@/foresatte","persona":"tvillinger","need":"innmelding","page":"/foresatte","state":{"body":"Jeg har tvillingjenter på sju som maser om å begynne. Er det plass, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du melde på ungen din, eller trenger dere hjelp med avgiften?\". Which alternative do they choose?","criteria":{"Få hjelp med treningsavgiften":"Vi finner en løsning sammen, enten det er å dele opp betalingen eller søke om støtte. Ingen unger skal stå utenfor på grunn av avgiften.","Meld ungen din på laget":"Meld ungen din på laget for sitt årskull, så tar trenerne det derfra."}}},"expect":["Meld ungen din på laget"]} -{"id":"alenefar@/","persona":"alenefar","need":"avgiftssak","page":"/","state":{"body":"Jeg er alene med tre unger og treningsavgiften for alle tre blir for mye på en gang. Går det an å dele den opp?","page":"Fotball for ungene i bygda: Rundt hundre og tjue unger fra seks til seksten år spiller fotball hos oss, fordelt på lag etter årskull. Få hjelp med treningsavgiften: Sliter du med treningsavgiften, kan vi se på en avtale. Meld barnet på et lag: Meld ungen på laget for sitt årskull."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre hos oss?\". Which alternative do they choose?","criteria":{"Få barnet ditt med på laget":"Meld på ungen, spør om treningsavgiften, eller si fra om noe på banen.","Hjelp til eller støtt klubben":"Vi trenger trenere, lagledere, sjåfører og folk på dugnad – og bedrifter som vil støtte laget."}}},"expect":["Få barnet ditt med på laget"]} -{"id":"alenefar@/foresatte","persona":"alenefar","need":"avgiftssak","page":"/foresatte","state":{"body":"Jeg er alene med tre unger og treningsavgiften for alle tre blir for mye på en gang. Går det an å dele den opp?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du melde på ungen din, eller trenger dere hjelp med avgiften?\". Which alternative do they choose?","criteria":{"Få hjelp med treningsavgiften":"Vi finner en løsning sammen, enten det er å dele opp betalingen eller søke om støtte. Ingen unger skal stå utenfor på grunn av avgiften.","Meld ungen din på laget":"Meld ungen din på laget for sitt årskull, så tar trenerne det derfra."}}},"expect":["Få hjelp med treningsavgiften"]} -{"id":"permittert@/","persona":"permittert","need":"avgiftssak","page":"/","state":{"body":"Jeg ble permittert i vinter. Kan dattera mi fortsette å spille selv om vi ikke klarer avgiften akkurat nå?","page":"Fotball for ungene i bygda: Rundt hundre og tjue unger fra seks til seksten år spiller fotball hos oss, fordelt på lag etter årskull. Få hjelp med treningsavgiften: Sliter du med treningsavgiften, kan vi se på en avtale. Meld barnet på et lag: Meld ungen på laget for sitt årskull."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre hos oss?\". Which alternative do they choose?","criteria":{"Få barnet ditt med på laget":"Meld på ungen, spør om treningsavgiften, eller si fra om noe på banen.","Hjelp til eller støtt klubben":"Vi trenger trenere, lagledere, sjåfører og folk på dugnad – og bedrifter som vil støtte laget."}}},"expect":["Få barnet ditt med på laget"]} -{"id":"permittert@/foresatte","persona":"permittert","need":"avgiftssak","page":"/foresatte","state":{"body":"Jeg ble permittert i vinter. Kan dattera mi fortsette å spille selv om vi ikke klarer avgiften akkurat nå?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du melde på ungen din, eller trenger dere hjelp med avgiften?\". Which alternative do they choose?","criteria":{"Få hjelp med treningsavgiften":"Vi finner en løsning sammen, enten det er å dele opp betalingen eller søke om støtte. Ingen unger skal stå utenfor på grunn av avgiften.","Meld ungen din på laget":"Meld ungen din på laget for sitt årskull, så tar trenerne det derfra."}}},"expect":["Få hjelp med treningsavgiften"]} -{"id":"pensjonist@/","persona":"pensjonist","need":"frivillig","page":"/","state":{"body":"Jeg er pensjonert og spilte selv i mange år. Har dere bruk for en som kan ta de minste et par kvelder i uka?","page":"Fotball for ungene i bygda: Rundt hundre og tjue unger fra seks til seksten år spiller fotball hos oss, fordelt på lag etter årskull. Få hjelp med treningsavgiften: Sliter du med treningsavgiften, kan vi se på en avtale. Meld barnet på et lag: Meld ungen på laget for sitt årskull."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre hos oss?\". Which alternative do they choose?","criteria":{"Få barnet ditt med på laget":"Meld på ungen, spør om treningsavgiften, eller si fra om noe på banen.","Hjelp til eller støtt klubben":"Vi trenger trenere, lagledere, sjåfører og folk på dugnad – og bedrifter som vil støtte laget."}}},"expect":["Hjelp til eller støtt klubben"]} -{"id":"pensjonist@/bidra","persona":"pensjonist","need":"frivillig","page":"/bidra","state":{"body":"Jeg er pensjonert og spilte selv i mange år. Har dere bruk for en som kan ta de minste et par kvelder i uka?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til eller støtte klubben?\". Which alternative do they choose?","criteria":{"Bidra med det du kan":"Trenere, lagledere, sjåfører og folk på dugnad - vi trenger alltid flere hender.","Støtt fotballen på bygda":"Er du fra en bedrift i bygda som vil støtte fotballgruppa? Vi tar gjerne en prat om hva dere kan bidra med."}}},"expect":["Bidra med det du kan"]} -{"id":"stor-bil@/","persona":"stor-bil","need":"frivillig","page":"/","state":{"body":"Jeg kan ikke trene noen, men jeg har stor bil og kan kjøre til bortekamper.","page":"Fotball for ungene i bygda: Rundt hundre og tjue unger fra seks til seksten år spiller fotball hos oss, fordelt på lag etter årskull. Få hjelp med treningsavgiften: Sliter du med treningsavgiften, kan vi se på en avtale. Meld barnet på et lag: Meld ungen på laget for sitt årskull."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre hos oss?\". Which alternative do they choose?","criteria":{"Få barnet ditt med på laget":"Meld på ungen, spør om treningsavgiften, eller si fra om noe på banen.","Hjelp til eller støtt klubben":"Vi trenger trenere, lagledere, sjåfører og folk på dugnad – og bedrifter som vil støtte laget."}}},"expect":["Hjelp til eller støtt klubben"]} -{"id":"stor-bil@/bidra","persona":"stor-bil","need":"frivillig","page":"/bidra","state":{"body":"Jeg kan ikke trene noen, men jeg har stor bil og kan kjøre til bortekamper."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til eller støtte klubben?\". Which alternative do they choose?","criteria":{"Bidra med det du kan":"Trenere, lagledere, sjåfører og folk på dugnad - vi trenger alltid flere hender.","Støtt fotballen på bygda":"Er du fra en bedrift i bygda som vil støtte fotballgruppa? Vi tar gjerne en prat om hva dere kan bidra med."}}},"expect":["Bidra med det du kan"]} -{"id":"rorlegger@/","persona":"rorlegger","need":"sponsor","page":"/","state":{"body":"Jeg driver rørleggerfirma her i bygda og vil gjerne ha logoen vår på draktene til et lag. Hvem snakker jeg med?","page":"Fotball for ungene i bygda: Rundt hundre og tjue unger fra seks til seksten år spiller fotball hos oss, fordelt på lag etter årskull. Få hjelp med treningsavgiften: Sliter du med treningsavgiften, kan vi se på en avtale. Meld barnet på et lag: Meld ungen på laget for sitt årskull."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre hos oss?\". Which alternative do they choose?","criteria":{"Få barnet ditt med på laget":"Meld på ungen, spør om treningsavgiften, eller si fra om noe på banen.","Hjelp til eller støtt klubben":"Vi trenger trenere, lagledere, sjåfører og folk på dugnad – og bedrifter som vil støtte laget."}}},"expect":["Hjelp til eller støtt klubben"]} -{"id":"rorlegger@/bidra","persona":"rorlegger","need":"sponsor","page":"/bidra","state":{"body":"Jeg driver rørleggerfirma her i bygda og vil gjerne ha logoen vår på draktene til et lag. Hvem snakker jeg med?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til eller støtte klubben?\". Which alternative do they choose?","criteria":{"Bidra med det du kan":"Trenere, lagledere, sjåfører og folk på dugnad - vi trenger alltid flere hender.","Støtt fotballen på bygda":"Er du fra en bedrift i bygda som vil støtte fotballgruppa? Vi tar gjerne en prat om hva dere kan bidra med."}}},"expect":["Støtt fotballen på bygda"]} -{"id":"kafeen@/","persona":"kafeen","need":"sponsor","page":"/","state":{"body":"Vi har kafé i sentrum og kan bidra med noe til cupen i mai, kanskje vafler eller litt penger.","page":"Fotball for ungene i bygda: Rundt hundre og tjue unger fra seks til seksten år spiller fotball hos oss, fordelt på lag etter årskull. Få hjelp med treningsavgiften: Sliter du med treningsavgiften, kan vi se på en avtale. Meld barnet på et lag: Meld ungen på laget for sitt årskull."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre hos oss?\". Which alternative do they choose?","criteria":{"Få barnet ditt med på laget":"Meld på ungen, spør om treningsavgiften, eller si fra om noe på banen.","Hjelp til eller støtt klubben":"Vi trenger trenere, lagledere, sjåfører og folk på dugnad – og bedrifter som vil støtte laget."}}},"expect":["Hjelp til eller støtt klubben"]} -{"id":"kafeen@/bidra","persona":"kafeen","need":"sponsor","page":"/bidra","state":{"body":"Vi har kafé i sentrum og kan bidra med noe til cupen i mai, kanskje vafler eller litt penger."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til eller støtte klubben?\". Which alternative do they choose?","criteria":{"Bidra med det du kan":"Trenere, lagledere, sjåfører og folk på dugnad - vi trenger alltid flere hender.","Støtt fotballen på bygda":"Er du fra en bedrift i bygda som vil støtte fotballgruppa? Vi tar gjerne en prat om hva dere kan bidra med."}}},"expect":["Støtt fotballen på bygda"]} diff --git a/vendor/trainer/runs/fotballklubb-2026-09-24/words-short.json b/vendor/trainer/runs/fotballklubb-2026-09-24/words-short.json deleted file mode 100644 index d433774..0000000 --- a/vendor/trainer/runs/fotballklubb-2026-09-24/words-short.json +++ /dev/null @@ -1,377 +0,0 @@ -{ - "aggregates.yaml": { - "innmeldinger": { - "betalt": { - "body": "Betalingen er registrert, og plassen på laget er sikret. Trenerne tar kontakt før oppstart. Har du spørsmål, bare svar på denne mailen.", - "subject": "Betalt - plassen er sikret" - }, - "godkjent": { - "body": "{child} har fått plass på laget for sitt årskull. Faktura for treningsavgiften kommer, og plassen er klar når den er betalt.", - "subject": "Godkjent - plass på laget" - }, - "open": { - "body": "Innmeldingen er mottatt, og trenerne ser på den nå. Du hører fra oss så snart plassen er avklart.", - "subject": "Innmeldingen er mottatt" - } - } - }, - "questions/bidra/index.yaml": { - "description": "Klubben går rundt fordi foreldre og lokale bedrifter stiller opp. Her kan du melde deg som frivillig eller som sponsor.", - "needs": { - "frivillig": { - "button": "Meld deg", - "description": "Trenere, lagledere, sjåfører og folk på dugnad - vi trenger alltid flere hender.", - "encouragement": "Du binder deg ikke til noe ved å sende dette - vi tar en prat om hva som passer.", - "form_description": "Fortell litt om deg selv, så finner vi ut hvor du trengs mest.", - "form_title": "Bli frivillig", - "heading": "Bidra med det du kan", - "hints": { - "hva_kan_du": "Kan trene, kjøre til bortekamper, eller stille på dugnad", - "navn": "Ola Nordmann", - "telefon": "123 45 678" - }, - "icon": "hand-helping", - "labels": { - "hva_kan_du": "Hva kan du bidra med?", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Styret tar kontakt med deg, og sammen finner dere hvor du passer inn - som trener, lagleder, sjåfør eller på dugnad.", - "road_icon": "route", - "road_title": "Hva skjer videre", - "who_description": "Styret leser meldingen din - du kan også ringe Kari på kari@liail.example i mellomtiden.", - "who_icon": "users", - "who_title": "Hvem leser dette" - }, - "sponsor": { - "button": "Ta kontakt", - "description": "Er du fra en bedrift i bygda som vil støtte fotballgruppa? Vi tar gjerne en prat om hva dere kan bidra med.", - "encouragement": "Det koster ingenting å spørre - vi finner en løsning som passer dere.", - "form_description": "Skriv litt om hva dere ser for dere, så tar vi kontakt.", - "form_title": "Bli sponsor", - "heading": "Støtt fotballen på bygda", - "hints": { - "bedrift": "Bygdas Byggvarer AS", - "hva_tenker_dere": "Vil gjerne sponse draktene, eller bidra med noe annet", - "kontaktperson": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "handshake", - "labels": { - "bedrift": "Bedrift", - "hva_tenker_dere": "Hva tenker dere å bidra med?", - "kontaktperson": "Kontaktperson", - "telefon": "Telefon" - }, - "road_description": "Styret tar kontakt for en prat om hva som passer, og dere blir enige om en avtale.", - "road_icon": "route", - "road_title": "Hva skjer videre", - "who_description": "Styret leser henvendelsen - du kan også ringe Kari på kari@liail.example i mellomtiden.", - "who_icon": "users", - "who_title": "Hvem leser dette" - } - }, - "question": "Vil du hjelpe til eller støtte klubben?" - }, - "questions/foresatte/index.yaml": { - "description": "Skal ungen din spille fotball hos oss, eller sliter dere med å få treningsavgiften til å gå opp? Her finner du fram.", - "needs": { - "avgiftssak": { - "button": "Send inn", - "description": "Vi finner en løsning sammen, enten det er å dele opp betalingen eller søke om støtte. Ingen unger skal stå utenfor på grunn av avgiften.", - "encouragement": "Dette blir behandlet fortrolig, og du hører fra oss så fort styret har sett på saken.", - "form_description": "Fortell kort hva saken gjelder, så tar vi kontakt.", - "form_title": "Om avgiften", - "heading": "Få hjelp med treningsavgiften", - "hints": { - "barnets_navn": "Ola Nordmann", - "foresatt": "Kari Nordmann", - "hva_gjelder_det": "Vi ønsker å dele opp avgiften over flere måneder", - "telefon": "912 34 567" - }, - "icon": "wallet", - "labels": { - "barnets_navn": "Barnets navn", - "foresatt": "Ditt navn", - "hva_gjelder_det": "Hva gjelder det", - "telefon": "Telefon" - }, - "road_description": "Saken din blir sett på, og du får svar på om dere kan få en ordning eller ikke. Vi gir beskjed uansett hva svaret blir.", - "road_icon": "clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Styret leser dette selv, og du kan alltids ta direkte kontakt med Kari i mellomtiden.", - "who_icon": "users", - "who_title": "Hvem leser dette" - }, - "innmelding": { - "button": "Meld inn", - "description": "Meld ungen din på laget for sitt årskull, så tar trenerne det derfra.", - "encouragement": "Det tar bare et par minutter, og du hører fra treneren så snart plassen er klar.", - "form_description": "Ha gjerne fødselsår og eventuell tidligere klubb klart.", - "form_title": "Meld på ungen", - "heading": "Meld ungen din på laget", - "hints": { - "barnets_navn": "Ola Nordmann", - "email": "kari@epost.no", - "fodselsar": "2016", - "foresatt": "Kari Nordmann", - "spilt_for": "Har ikke spilt fotball før", - "telefon": "912 34 567" - }, - "icon": "footprints", - "labels": { - "barnets_navn": "Barnets navn", - "email": "E-post", - "fodselsar": "Fødselsår", - "foresatt": "Ditt navn", - "spilt_for": "Spilt for tidligere", - "telefon": "Telefon" - }, - "road_description": "Trenerne godkjenner påmeldingen og setter barnet på riktig lag. Når det er gjort, betaler du avgiften, og ungen er klar til å spille.", - "road_icon": "check-circle", - "road_title": "Hva skjer videre", - "who_description": "Trenerne for årskullet leser påmeldingen, og du kan ringe Kari om du lurer på noe underveis.", - "who_icon": "user-check", - "who_title": "Hvem leser dette" - } - }, - "question": "Vil du melde på ungen din, eller trenger dere hjelp med avgiften?" - }, - "questions/index.yaml": { - "description": "Vi er fotballgruppa til Lia IL – et sted der ungene får spille på lag med jevnaldrende, trent av foreldre fra bygda.", - "doors": { - "bidra": { - "button": "Meld interesse", - "description": "Vi trenger trenere, lagledere, sjåfører og folk på dugnad – og bedrifter som vil støtte laget.", - "for_whom": "Deg som vil bidra, eller din bedrift", - "heading": "Hjelp til eller støtt klubben", - "icon": "hand-helping" - }, - "foresatte": { - "button": "Meld på barnet", - "description": "Meld på ungen, spør om treningsavgiften, eller si fra om noe på banen.", - "for_whom": "Deg som har en unge som spiller, eller vil begynne", - "heading": "Få barnet ditt med på laget", - "icon": "baby" - } - }, - "needs": {}, - "opener": { - "description": "Rundt hundre og tjue unger fra seks til seksten år spiller fotball hos oss, fordelt på lag etter årskull.", - "features": { - "avgiftssak": { - "description": "Sliter du med treningsavgiften, kan vi se på en avtale.", - "heading": "Få hjelp med treningsavgiften", - "icon": "wallet" - }, - "innmelding": { - "description": "Meld ungen på laget for sitt årskull.", - "heading": "Meld barnet på et lag", - "icon": "user-plus" - } - }, - "heading": "Fotball for ungene i bygda" - }, - "question": "Hva vil du gjøre hos oss?", - "shopping": { - "description": "Se hvilke lag vi har, og hvordan årskullene er delt inn.", - "heading": "Se lagene våre", - "items": {} - } - }, - "questions/kasserer/index.yaml": { - "buckets": { - "innmeldinger": { - "description": "Alle påmeldinger til lagene, sortert etter hvor de står i løpet.", - "heading": "Se hvem som vil spille", - "moves": { - "godkjent->betalt": "Merk som betalt" - } - } - }, - "confirm": "Bekreft", - "description": "Her har du oversikt over innmeldinger, avgiftssaker og folk du har invitert til å hjelpe med kassa.", - "invited": { - "description": "Folk du har bedt om å hjelpe til med kassereroppgaver, og om de har tatt imot invitasjonen ennå.", - "done": "Tatt imot", - "heading": "Følg med på invitasjonene dine" - }, - "invites": { - "kasserer": { - "button": "Send invitasjon", - "description": "Gi noen tilgang til å hjelpe deg med kassererarbeidet, som avgifter og innbetalinger.", - "form_title": "Inviter en kasserer", - "heading": "Få hjelp med kassa", - "labels": { - "email": "E-postadresse", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva trenger kassa hjelp med akkurat nå?" - }, - "questions/received/avgiftssak.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har fått søknaden din om treningsavgiften. Styret ser på den og svarer deg så snart de kan.", - "next_description": "Styret behandler saker fortløpende og gir deg beskjed på e-post eller telefon når de har landet på en løsning.", - "next_heading": "Styret tar kontakt med et svar", - "question": "Hva skjer nå med søknaden min?" - }, - "questions/received/frivillig.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din har gått til styret. De tar kontakt for å høre hvor du passer inn.", - "next_description": "Styret ser gjennom hva klubben trenger akkurat nå, og finner en oppgave som passer for deg.", - "next_heading": "Styret finner riktig oppgave til deg", - "question": "Hva skjer nå som jeg har meldt meg?" - }, - "questions/received/innmelding.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen er sendt til trenerne for laget. De tar kontakt så snart de har sett gjennom påmeldingen.", - "next_description": "Trenerne går gjennom påmeldingen og gir barnet plass på laget for sitt årskull. Dere hører fra dem når det er avklart.", - "next_heading": "Trenerne ser på påmeldingen", - "question": "Hva skjer nå som jeg har meldt på barnet?" - }, - "questions/received/sponsor.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at dere vil støtte Lia IL Fotball. Noen fra styret ser gjennom henvendelsen og tar kontakt for en prat om hva dere kan bidra med.", - "next_description": "Styret svarer så fort de kan, som regel i løpet av noen dager, og avtaler et sted å prate videre.", - "next_heading": "Styret tar kontakt for en prat", - "question": "Har henvendelsen vår kommet fram?" - }, - "questions/styret/index.yaml": { - "buckets": { - "avgiftssaker": { - "description": "Familier som sliter med å betale treningsavgiften, og trenger en avtale om betaling.", - "heading": "Søknader om redusert eller delt avgift", - "moves": { - "open->avslatt": "Avslå søknaden", - "open->vurdert": "Merk som vurdert", - "vurdert->avslatt": "Avslå søknaden", - "vurdert->innvilget": "Innvilg søknaden" - } - }, - "baneproblemer": { - "description": "Ting trenere har meldt fra om på anlegget, som styret må ta tak i.", - "heading": "Meldinger om anlegget", - "moves": { - "open->tatt_tak_i": "Ta tak i saken", - "tatt_tak_i->ordnet": "Merk som ordnet" - } - }, - "frivillige": { - "description": "Foreldre og andre som har meldt seg til å hjelpe til, klare for å bli satt i sving.", - "heading": "Folk som vil bidra", - "moves": { - "kontaktet->avslatt": "Avslå henvendelsen", - "kontaktet->plassert": "Merk som plassert", - "open->avslatt": "Avslå henvendelsen", - "open->kontaktet": "Merk som kontaktet" - } - }, - "sponsorer": { - "description": "Bedrifter på bygda som vil støtte klubben, og som venter på en prat om avtale.", - "heading": "Bedrifter som vil sponse", - "moves": { - "i_dialog->avslatt": "Avslå henvendelsen", - "i_dialog->avtalt": "Merk som avtalt", - "open->avslatt": "Avslå henvendelsen", - "open->i_dialog": "Start dialog" - } - } - }, - "confirm": "Bekreft", - "description": "Her holder styret oversikt over avgiftssaker, baneproblemer, frivillige og sponsorer.", - "invited": { - "description": "Styremedlemmer som har fått invitasjon, og om de har tatt den i bruk.", - "done": "Tatt i bruk", - "heading": "Inviterte styremedlemmer" - }, - "invites": { - "styret": { - "button": "Send invitasjon", - "description": "Gi et nytt styremedlem tilgang til denne siden med en engangslenke.", - "form_title": "Inviter til styret", - "heading": "Inviter noen inn i styret", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva trenger styret å følge opp nå?" - }, - "questions/trenere/baneproblem-sent.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen om baneproblemet er sendt til styret.", - "next_description": "Styret tar tak i saken og fikser det som trengs, eller sier fra hvis det tar tid.", - "next_heading": "Styret følger opp saken", - "question": "Hva skjer nå?" - }, - "questions/trenere/baneproblem.yaml": { - "button": "Meld fra om feil", - "description": "Ser du noe på banen eller anlegget som ikke er i orden? Gi beskjed til styret, så tar de tak i det.", - "encouragement": "Du hører fra styret så snart de har sett på saken.", - "form_description": "Beskriv hva du så, og hvor det var.", - "form_title": "Meld baneproblem", - "heading": "Meld fra om noe som ikke er i orden", - "hints": { - "hva": "Løs plate på tribunen, hull i nettet på mål A", - "hvor": "Bane 2, ved siden av klubbhuset" - }, - "icon": "alert-triangle", - "labels": { - "hva": "Hva gjelder det?", - "hvor": "Hvor på anlegget?" - }, - "page_description": "Se du noe på treningsfeltet, banen eller anlegget som bør fikses? Send en kort melding, så følger styret det opp.", - "question": "Har du sett noe på anlegget som bør ordnes?", - "road_description": "Meldingen går til styret, som tar tak i saken og ordner det som trengs.", - "road_icon": "wrench", - "road_title": "Slik følges det opp", - "who_description": "Styret leser meldingen og følger opp; haster det, ring Kari Lien i mellomtiden.", - "who_icon": "users", - "who_title": "Hvem leser dette" - }, - "questions/trenere/index.yaml": { - "buckets": { - "innmeldinger": { - "description": "Meldinger fra foreldre som vil ha ungen sin med på et lag.", - "heading": "Nye påmeldinger til laget", - "moves": { - "godkjent->trukket": "Trekk påmeldingen", - "open->godkjent": "Godkjenn plass", - "open->trukket": "Avvis påmeldingen" - } - } - }, - "confirm": "Bekreft", - "description": "Her ser du påmeldinger til lagene, sender invitasjon til nye trenere og melder fra om baneproblem.", - "invited": { - "description": "Trenere du har invitert, og om de har tatt imot invitasjonen.", - "done": "Har startet", - "heading": "Trenere du har invitert" - }, - "invites": { - "trenere": { - "button": "Send invitasjon", - "description": "Inviter en ny trener til å få tilgang som trener på laget.", - "form_title": "Inviter trener", - "heading": "Få inn en ny trener", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": { - "baneproblem": { - "button": "Meld fra", - "description": "Si ifra til styret om noe på anlegget ikke er i orden.", - "heading": "Meld fra om noe på anlegget" - } - }, - "question": "Hva trenger jeg å følge opp for laget mitt?" - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/README.md b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/README.md deleted file mode 100644 index 34a355b..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/README.md +++ /dev/null @@ -1,35 +0,0 @@ -# The football club, same plan, Claude Sonnet writing the words - -`plans/fotballklubb.yaml`, in Norwegian, built twice on 2026-09-22: -once with nemotron-3.5-lightning:30b-a3b on local Ollama -(`../fotballklubb-2026-09-22/`), once with Claude Sonnet through -`engines/claude.sh`. Same structure, same 9 held-out personas, same -visitor (qwen3:8b, one task per call). - -| Visitor could read | nemotron | Claude Sonnet | -|---|---|---| -| Headings and descriptions | 14 of 16 | 13 of 16 | -| Headings only | 11 of 16 | 12 of 16 | - -Not the gap the Norwegian suggested it would be. Claude's front door -is plainly better: "Har du barn som spiller eller vil spille?" against -nemotron's "Er det på tide å melde inn?", which three parents walked -past. But Claude loses on the pages behind the doors: - -- The twins' parent asking "is there room, and what does it cost?" - chose "Få hjelp med treningsavgiften" because the persona mentions - cost. Nemotron's "Meld deg på laget" held them. -- The driver ("I can't coach but I have a big car") and the café - ("waffles or a bit of money for the cup") straddle volunteer and - sponsor in both builds. That boundary is the club's, not the - visitor's: a person offering something does not sort themselves by - whether it is time or money. One "help out" form with "what can you - give" as a select would end it. -- The pensioner who wants to coach picked the parents' door on - headings alone under Claude ("Har du barn som spiller..." reads as - the general door). - -What this run says: a stronger model writes better sentences and does -not, by itself, route better. Routing is decided by which -distinctions the plan puts on one page, and the visitor model grades -that the same whoever wrote the words. diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/aggregates.yaml b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/aggregates.yaml deleted file mode 100644 index d7831c2..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/aggregates.yaml +++ /dev/null @@ -1,87 +0,0 @@ -aggregates: -- bucket: avgiftssaker - initial: open - states: - avslatt: - event: avslatt - innvilget: - event: innvilget - open: - event: received - vurdert: - event: vurdert - transitions: - open: - - vurdert - - avslatt - vurdert: - - innvilget - - avslatt -- bucket: baneproblemer - initial: open - states: - open: - event: received - ordnet: - event: ordnet - tatt_tak_i: - event: tatt_tak_i - transitions: - open: - - tatt_tak_i - tatt_tak_i: - - ordnet -- bucket: frivillige - initial: open - states: - avslatt: - event: avslatt - kontaktet: - event: kontaktet - open: - event: received - plassert: - event: plassert - transitions: - kontaktet: - - plassert - - avslatt - open: - - kontaktet - - avslatt -- bucket: innmeldinger - initial: open - states: - betalt: - event: betalt - godkjent: - event: godkjent - open: - event: received - trukket: - event: trukket - transitions: - godkjent: - - betalt - - trukket - open: - - godkjent - - trukket -- bucket: sponsorer - initial: open - states: - avslatt: - event: avslatt - avtalt: - event: avtalt - i_dialog: - event: i_dialog - open: - event: received - transitions: - i_dialog: - - avtalt - - avslatt - open: - - i_dialog - - avslatt diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/answers-full.jsonl b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/answers-full.jsonl deleted file mode 100644 index 959cc2c..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/answers-full.jsonl +++ /dev/null @@ -1,16 +0,0 @@ -{"choice":"Har du barn som spiller eller vil spille?","confidence":0.95,"id":"ny-i-bygda@/"} -{"choice":"Meld barnet ditt på laget","confidence":0.95,"id":"ny-i-bygda@/foresatte"} -{"choice":"Har du barn som spiller eller vil spille?","confidence":0.95,"id":"tvillinger@/"} -{"choice":"Få hjelp med treningsavgiften","confidence":0.95,"id":"tvillinger@/foresatte"} -{"choice":"Har du barn som spiller eller vil spille?","confidence":0.95,"id":"alenefar@/"} -{"choice":"Få hjelp med treningsavgiften","confidence":0.95,"id":"alenefar@/foresatte"} -{"choice":"Har du barn som spiller eller vil spille?","confidence":0.95,"id":"permittert@/"} -{"choice":"Få hjelp med treningsavgiften","confidence":0.95,"id":"permittert@/foresatte"} -{"choice":"Vil du hjelpe til eller støtte klubben?","confidence":0.95,"id":"pensjonist@/"} -{"choice":"Bli brukt der klubben trenger deg","confidence":0.95,"id":"pensjonist@/bidra"} -{"choice":"Vil du hjelpe til eller støtte klubben?","confidence":0.95,"id":"stor-bil@/"} -{"choice":"Støtt fotballen i bygda","confidence":0.95,"id":"stor-bil@/bidra"} -{"choice":"Vil du hjelpe til eller støtte klubben?","confidence":0.95,"id":"rorlegger@/"} -{"choice":"Støtt fotballen i bygda","confidence":0.95,"id":"rorlegger@/bidra"} -{"choice":"Vil du hjelpe til eller støtte klubben?","confidence":0.85,"id":"kafeen@/"} -{"choice":"Bli brukt der klubben trenger deg","confidence":0.85,"id":"kafeen@/bidra"} diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/answers-skim.jsonl b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/answers-skim.jsonl deleted file mode 100644 index 14c0c2a..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/answers-skim.jsonl +++ /dev/null @@ -1,16 +0,0 @@ -{"choice":"Har du barn som spiller eller vil spille?","confidence":0.95,"id":"ny-i-bygda@/"} -{"choice":"Meld barnet ditt på laget","confidence":0.95,"id":"ny-i-bygda@/foresatte"} -{"choice":"Har du barn som spiller eller vil spille?","confidence":0.95,"id":"tvillinger@/"} -{"choice":"Få hjelp med treningsavgiften","confidence":0.95,"id":"tvillinger@/foresatte"} -{"choice":"Har du barn som spiller eller vil spille?","confidence":0.95,"id":"alenefar@/"} -{"choice":"Få hjelp med treningsavgiften","confidence":0.95,"id":"alenefar@/foresatte"} -{"choice":"Har du barn som spiller eller vil spille?","confidence":0.95,"id":"permittert@/"} -{"choice":"Få hjelp med treningsavgiften","confidence":0.95,"id":"permittert@/foresatte"} -{"choice":"Har du barn som spiller eller vil spille?","confidence":0.95,"id":"pensjonist@/"} -{"choice":"Bli brukt der klubben trenger deg","confidence":0.95,"id":"pensjonist@/bidra"} -{"choice":"Vil du hjelpe til eller støtte klubben?","confidence":0.95,"id":"stor-bil@/"} -{"choice":"Støtt fotballen i bygda","confidence":0.95,"id":"stor-bil@/bidra"} -{"choice":"Vil du hjelpe til eller støtte klubben?","confidence":0.95,"id":"rorlegger@/"} -{"choice":"Støtt fotballen i bygda","confidence":0.95,"id":"rorlegger@/bidra"} -{"choice":"Vil du hjelpe til eller støtte klubben?","confidence":0.95,"id":"kafeen@/"} -{"choice":"Bli brukt der klubben trenger deg","confidence":0.85,"id":"kafeen@/bidra"} diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/build.log b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/build.log deleted file mode 100644 index 45aeea2..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/build.log +++ /dev/null @@ -1,20 +0,0 @@ -words: questions/bidra/index.yaml -words: questions/foresatte/index.yaml -words: questions/index.yaml -words: questions/kasserer/index.yaml -words: questions/received/avgiftssak.yaml -words: questions/received/frivillig.yaml -words: questions/received/innmelding.yaml -words: questions/received/sponsor.yaml -words: questions/styret/index.yaml -words: questions/trenere/baneproblem-sent.yaml -words: questions/trenere/baneproblem.yaml -words: questions/trenere/index.yaml -content repo written to runs/fotballklubb-claude-2026-09-22 -OK: 12 question(s), 6 aggregate(s) valid -need "innmelding": / [Har du barn som spiller eller vil spille?] -> /foresatte [Meld barnet ditt på laget] -> "innmeldinger" -need "avgiftssak": / [Har du barn som spiller eller vil spille?] -> /foresatte [Få hjelp med treningsavgiften] -> "avgiftssaker" -need "frivillig": / [Vil du hjelpe til eller støtte klubben?] -> /bidra [Bli brukt der klubben trenger deg] -> "frivillige" -need "sponsor": / [Vil du hjelpe til eller støtte klubben?] -> /bidra [Støtt fotballen i bygda] -> "sponsorer" -need "baneproblem": /trenere/baneproblem [Meld fra om noe som ikke er i orden] -> "baneproblemer" -OK: 5 need(s) structurally met, 0 planned, 9 persona(s) diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/01-questions_bidra_index.yaml.md b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/01-questions_bidra_index.yaml.md deleted file mode 100644 index e1a64cd..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/01-questions_bidra_index.yaml.md +++ /dev/null @@ -1,92 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/bidra/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "frivillig": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "hva_kan_du": "", - "navn": "", - "telefon": "" - } - }, - "sponsor": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "bedrift": "", - "hva_tenker_dere": "", - "kontaktperson": "", - "telefon": "" - } - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Klubben går på foreldreinnsats og lokal støtte. Her er to måter å bidra på.", - "needs": { - "frivillig": { - "button": "Meld deg", - "description": "Trener, lagleder, sjåfør eller en hånd på dugnad - vi trenger folk til alt.", - "form_title": "Bli frivillig", - "heading": "Bli brukt der klubben trenger deg", - "labels": { - "hva_kan_du": "Hva kan du bidra med?", - "navn": "Navn", - "telefon": "Telefon" - } - }, - "sponsor": { - "button": "Ta kontakt", - "description": "Bedriften din kan støtte fotballgruppa og bli synlig i bygda.", - "form_title": "Bli sponsor", - "heading": "Støtt fotballen i bygda", - "labels": { - "bedrift": "Bedrift", - "hva_tenker_dere": "Hva tenker dere?", - "kontaktperson": "Kontaktperson", - "telefon": "Telefon" - } - } - }, - "question": "Vil du hjelpe til, eller la bedriften din støtte klubben?" -} -``` diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/02-questions_foresatte_index.yaml.md b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/02-questions_foresatte_index.yaml.md deleted file mode 100644 index be3e605..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/02-questions_foresatte_index.yaml.md +++ /dev/null @@ -1,98 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/foresatte/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "avgiftssak": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "barnets_navn": "", - "foresatt": "", - "hva_gjelder_det": "", - "telefon": "" - } - }, - "innmelding": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "barnets_navn": "", - "epost": "", - "fodselsar": "", - "foresatt": "", - "spilt_for": "", - "telefon": "" - } - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Har du et barn som vil spille fotball, eller har spørsmål om treningsavgiften? Her finner du veien videre.", - "needs": { - "avgiftssak": { - "button": "Ta kontakt", - "description": "Sliter dere med å få treningsavgiften til å gå opp? Ta kontakt, så finner vi en løsning sammen.", - "form_title": "Om treningsavgiften", - "heading": "Få hjelp med treningsavgiften", - "labels": { - "barnets_navn": "Barnets navn", - "foresatt": "Ditt navn", - "hva_gjelder_det": "Hva gjelder det", - "telefon": "Telefon" - } - }, - "innmelding": { - "button": "Meld på", - "description": "Meld barnet ditt på laget for sitt årskull, så tar trenerne det videre.", - "form_title": "Meld på barnet", - "heading": "Meld barnet ditt på laget", - "labels": { - "barnets_navn": "Barnets navn", - "epost": "E-post", - "fodselsar": "Fødselsår", - "foresatt": "Ditt navn", - "spilt_for": "Spilt for et annet lag før", - "telefon": "Telefon" - } - } - }, - "question": "Vil du melde på barnet ditt, eller trenger dere hjelp med avgiften?" -} -``` diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/03-questions_index.yaml.md b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/03-questions_index.yaml.md deleted file mode 100644 index 74005ff..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/03-questions_index.yaml.md +++ /dev/null @@ -1,66 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/index.yaml -It is the front door: the first page any visitor sees. `question` is the page's one question. Under `doors`, each entry is one alternative that leads to a page of its own for one kind of visitor: its heading must let that visitor recognise themselves from the heading alone. Under `needs`, each entry is one alternative with a form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "doors": { - "bidra": { - "button": "", - "description": "", - "heading": "" - }, - "foresatte": { - "button": "", - "description": "", - "heading": "" - } - }, - "needs": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "description": "Lia IL Fotball er fotballgruppa på bygda, med lag fra seks til seksten år, drevet av foreldre på fritida.", - "doors": { - "bidra": { - "button": "Jeg vil bidra", - "description": "Som trener, lagleder, sjåfør eller på dugnad - eller som bedrift som vil støtte klubben.", - "heading": "Vil du hjelpe til eller støtte klubben?" - }, - "foresatte": { - "button": "Jeg er foresatt", - "description": "Meld på barnet ditt, eller få hjelp hvis treningsavgiften er vanskelig.", - "heading": "Har du barn som spiller eller vil spille?" - } - }, - "needs": {}, - "question": "Hva vil du gjøre?" -} diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/04-questions_kasserer_index.yaml.md b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/04-questions_kasserer_index.yaml.md deleted file mode 100644 index 3a32ffa..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/04-questions_kasserer_index.yaml.md +++ /dev/null @@ -1,62 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/kasserer/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "innmeldinger": { - "description": "", - "heading": "", - "moves": { - "godkjent->betalt": "betalt>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "buckets": { - "innmeldinger": { - "description": "Her ser du alle som har meldt ungen sin på et lag, og hvor langt de har kommet i prosessen.", - "heading": "Innmeldinger som venter på deg", - "moves": { - "godkjent->betalt": "Merk som betalt" - } - } - }, - "confirm": "Bekreft", - "description": "Oversikten din over innmeldinger og avgiftssaker som må følges opp.", - "links": {}, - "question": "Hva må jeg følge opp nå?" -} diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/05-questions_received_avgiftssak.yaml.md b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/05-questions_received_avgiftssak.yaml.md deleted file mode 100644 index 13dc338..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/05-questions_received_avgiftssak.yaml.md +++ /dev/null @@ -1,46 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/received/avgiftssak.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Til forsiden", - "description": "Vi har mottatt henvendelsen din om treningsavgiften. Styret ser på den og tar kontakt med deg.", - "next_description": "Styret behandler saken og gir deg beskjed om utfallet, enten det blir en avdragsordning eller fritak.", - "next_heading": "Styret vurderer saken din", - "question": "Har henvendelsen min kommet fram?" -} diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/06-questions_received_frivillig.yaml.md b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/06-questions_received_frivillig.yaml.md deleted file mode 100644 index d0f0227..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/06-questions_received_frivillig.yaml.md +++ /dev/null @@ -1,46 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/received/frivillig.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Tilbake til forsiden", - "description": "Takk for at du vil bidra! Styret leser meldingen og tar kontakt for å høre hvor du passer best inn.", - "next_description": "Styret går gjennom henvendelser fortløpende og tar kontakt på e-post eller telefon, gjerne i løpet av en ukes tid.", - "next_heading": "Vi hører fra deg snart", - "question": "Hva skjer nå som jeg har meldt meg?" -} diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/07-questions_received_innmelding.yaml.md b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/07-questions_received_innmelding.yaml.md deleted file mode 100644 index 58fa722..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/07-questions_received_innmelding.yaml.md +++ /dev/null @@ -1,48 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/received/innmelding.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Til forsiden", - "description": "Påmeldingen er sendt og ligger klar hos trenerne.", - "next_description": "Trenerne går gjennom påmeldingen og gir beskjed om plass på laget for årskullet.", - "next_heading": "Trenerne svarer deg", - "question": "Hva skjer nå med påmeldingen?" -} -``` diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/08-questions_received_sponsor.yaml.md b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/08-questions_received_sponsor.yaml.md deleted file mode 100644 index 96cb8b0..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/08-questions_received_sponsor.yaml.md +++ /dev/null @@ -1,48 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/received/sponsor.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Til forsiden", - "description": "Takk for at dere vil støtte Lia IL Fotball. Styret har fått beskjeden og tar kontakt.", - "next_description": "Noen fra styret ringer eller sender e-post for å høre hva dere ønsker å bidra med, så finner vi ut av det sammen.", - "next_heading": "Styret tar kontakt", - "question": "Hva skjer nå som vi har meldt interesse?" -} -``` diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/09-questions_styret_index.yaml.md b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/09-questions_styret_index.yaml.md deleted file mode 100644 index d3f4bb2..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/09-questions_styret_index.yaml.md +++ /dev/null @@ -1,126 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/styret/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "avgiftssaker": { - "description": "", - "heading": "", - "moves": { - "open->avslatt": "avslatt>", - "open->vurdert": "vurdert>", - "vurdert->avslatt": "avslatt>", - "vurdert->innvilget": "innvilget>" - } - }, - "baneproblemer": { - "description": "", - "heading": "", - "moves": { - "open->tatt_tak_i": "tatt_tak_i>", - "tatt_tak_i->ordnet": "ordnet>" - } - }, - "frivillige": { - "description": "", - "heading": "", - "moves": { - "kontaktet->avslatt": "avslatt>", - "kontaktet->plassert": "plassert>", - "open->avslatt": "avslatt>", - "open->kontaktet": "kontaktet>" - } - }, - "sponsorer": { - "description": "", - "heading": "", - "moves": { - "i_dialog->avslatt": "avslatt>", - "i_dialog->avtalt": "avtalt>", - "open->avslatt": "avslatt>", - "open->i_dialog": "i_dialog>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "avgiftssaker": { - "description": "Familier som strever med å betale treningsavgiften, og trenger en løsning.", - "heading": "Søknader om redusert avgift", - "moves": { - "open->avslatt": "Avslå søknaden", - "open->vurdert": "Sett i vurdering", - "vurdert->avslatt": "Avslå søknaden", - "vurdert->innvilget": "Innvilg søknaden" - } - }, - "baneproblemer": { - "description": "Ting på anlegget som trenerne har meldt fra om, og som må ordnes.", - "heading": "Meldinger om banen og anlegget", - "moves": { - "open->tatt_tak_i": "Ta tak i saken", - "tatt_tak_i->ordnet": "Merk som ordnet" - } - }, - "frivillige": { - "description": "Folk som har meldt seg som trener, lagleder, sjåfør eller til dugnad.", - "heading": "De som vil hjelpe til", - "moves": { - "kontaktet->avslatt": "Takk nei", - "kontaktet->plassert": "Sett på oppgave", - "open->avslatt": "Takk nei", - "open->kontaktet": "Ta kontakt" - } - }, - "sponsorer": { - "description": "Bedrifter i bygda som vil støtte klubben og trenger en avtale.", - "heading": "Bedrifter som vil støtte oss", - "moves": { - "i_dialog->avslatt": "Takk nei", - "i_dialog->avtalt": "Merk som avtalt", - "open->avslatt": "Takk nei", - "open->i_dialog": "Start dialog" - } - } - }, - "confirm": "Lagre", - "description": "Her ser styret alt som venter på svar: avgiftssøknader, frivillige, sponsorer og saker på banen.", - "links": {}, - "question": "Hva venter på styret nå?" -} -``` diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/10-questions_trenere_baneproblem-sent.yaml.md b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/10-questions_trenere_baneproblem-sent.yaml.md deleted file mode 100644 index 74999b5..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/10-questions_trenere_baneproblem-sent.yaml.md +++ /dev/null @@ -1,46 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/trenere/baneproblem-sent.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Tilbake", - "description": "Vi har mottatt meldingen din om banen. Takk for at du sier ifra.", - "next_description": "Noen fra styret ser på det og tar tak i det som må ordnes.", - "next_heading": "Styret ser på saken", - "question": "Hva skjer nå med det jeg meldte inn?" -} diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/11-questions_trenere_baneproblem.yaml.md b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/11-questions_trenere_baneproblem.yaml.md deleted file mode 100644 index 4c36ffa..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/11-questions_trenere_baneproblem.yaml.md +++ /dev/null @@ -1,56 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/trenere/baneproblem.yaml -It is a page only one role inside the business can open, holding one form. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "hva": "", - "hvor": "" - }, - "page_description": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "button": "Send melding", - "description": "Beskriv hva som er galt og hvor, så tar styret tak i det.", - "form_title": "Meld fra om banen", - "heading": "Meld fra om noe som ikke er i orden", - "labels": { - "hva": "Hva gjelder det?", - "hvor": "Hvor på anlegget?" - }, - "page_description": "Sett du noe på anlegget som bør fikses? Gi styret beskjed her.", - "question": "Hva har du oppdaget?" -} diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/12-questions_trenere_index.yaml.md b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/12-questions_trenere_index.yaml.md deleted file mode 100644 index 75616ac..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/llm/12-questions_trenere_index.yaml.md +++ /dev/null @@ -1,80 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Lia IL Fotball -About: Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger fra seks til seksten år, fordelt på lag etter årskull, drevet av foreldre på fritida. -Contact: Kari Lien -Language to write in: nb - -Everyone the site serves: -- door foresatte: for en forelder eller foresatt til et barn som vil spille, eller allerede spiller; behind it: innmelding, avgiftssak -- door bidra: for noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den; behind it: frivillig, sponsor -- innmelding: en forelder som vil ha ungen med på et lag - wants: at barnet får plass på laget for sitt årskull. Handled by trenere. Stages: open -> godkjent -> betalt -> trukket. -- avgiftssak: en forelder som sliter med treningsavgiften - wants: å dele den opp, eller slippe den. Handled by styret. Stages: open -> vurdert -> innvilget -> avslatt. -- frivillig: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad - wants: å bli brukt der det trengs. Handled by styret. Stages: open -> kontaktet -> plassert -> avslatt. -- sponsor: en bedrift i bygda som vil støtte klubben - wants: en prat om hva de kan bidra med, og en avtale. Handled by styret. Stages: open -> i_dialog -> avtalt -> avslatt. -- baneproblem: en trener som ser at noe på anlegget ikke er i orden - wants: at styret får vite det og ordner det. Handled by styret. Stages: open -> tatt_tak_i -> ordnet. - -The page: questions/trenere/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "innmeldinger": { - "description": "", - "heading": "", - "moves": { - "godkjent->trukket": "trukket>", - "open->godkjent": "godkjent>", - "open->trukket": "trukket>" - } - } - }, - "confirm": "", - "description": "", - "links": { - "baneproblem": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "innmeldinger": { - "description": "Barna som er meldt på laget ditt, og hvor langt de har kommet i påmeldingen.", - "heading": "Barna som skal spille på laget ditt", - "moves": { - "godkjent->trukket": "Meld av", - "open->godkjent": "Godkjenn til laget", - "open->trukket": "Meld av" - } - } - }, - "confirm": "Bekreft", - "description": "Oversikt over laget ditt og påmeldingene som venter på deg.", - "links": { - "baneproblem": { - "button": "Meld feil på anlegget", - "description": "Se noe som ikke er i orden på banen eller anlegget? Si ifra til styret.", - "heading": "Meld fra om anlegget" - } - }, - "question": "Hvem spiller på laget mitt, og hva venter på meg?" -} -``` diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/model.json b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/model.json deleted file mode 100644 index f82b21e..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/model.json +++ /dev/null @@ -1,664 +0,0 @@ -{ - "buckets": { - "avgiftssaker": { - "desks": [ - { - "group": "styret", - "moves": [ - { - "from": "open", - "label": "Sett i vurdering", - "to": "vurdert" - }, - { - "from": "open", - "label": "Avslå søknaden", - "to": "avslatt" - }, - { - "from": "vurdert", - "label": "Innvilg søknaden", - "to": "innvilget" - }, - { - "from": "vurdert", - "label": "Avslå søknaden", - "to": "avslatt" - } - ], - "page": "/styret" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "vurdert", - "avslatt" - ], - "vurdert": [ - "innvilget", - "avslatt" - ] - } - }, - "baneproblemer": { - "desks": [ - { - "group": "styret", - "moves": [ - { - "from": "open", - "label": "Ta tak i saken", - "to": "tatt_tak_i" - }, - { - "from": "tatt_tak_i", - "label": "Merk som ordnet", - "to": "ordnet" - } - ], - "page": "/styret" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "tatt_tak_i" - ], - "tatt_tak_i": [ - "ordnet" - ] - } - }, - "frivillige": { - "desks": [ - { - "group": "styret", - "moves": [ - { - "from": "kontaktet", - "label": "Sett på oppgave", - "to": "plassert" - }, - { - "from": "kontaktet", - "label": "Takk nei", - "to": "avslatt" - }, - { - "from": "open", - "label": "Ta kontakt", - "to": "kontaktet" - }, - { - "from": "open", - "label": "Takk nei", - "to": "avslatt" - } - ], - "page": "/styret" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "kontaktet": [ - "plassert", - "avslatt" - ], - "open": [ - "kontaktet", - "avslatt" - ] - } - }, - "innmeldinger": { - "desks": [ - { - "group": "kasserer", - "moves": [ - { - "from": "godkjent", - "label": "Merk som betalt", - "to": "betalt" - } - ], - "page": "/kasserer" - }, - { - "group": "trenere", - "moves": [ - { - "from": "godkjent", - "label": "Meld av", - "to": "trukket" - }, - { - "from": "open", - "label": "Godkjenn til laget", - "to": "godkjent" - }, - { - "from": "open", - "label": "Meld av", - "to": "trukket" - } - ], - "page": "/trenere" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "godkjent": [ - "betalt", - "trukket" - ], - "open": [ - "godkjent", - "trukket" - ] - } - }, - "sponsorer": { - "desks": [ - { - "group": "styret", - "moves": [ - { - "from": "i_dialog", - "label": "Merk som avtalt", - "to": "avtalt" - }, - { - "from": "i_dialog", - "label": "Takk nei", - "to": "avslatt" - }, - { - "from": "open", - "label": "Start dialog", - "to": "i_dialog" - }, - { - "from": "open", - "label": "Takk nei", - "to": "avslatt" - } - ], - "page": "/styret" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "i_dialog": [ - "avtalt", - "avslatt" - ], - "open": [ - "i_dialog", - "avslatt" - ] - } - } - }, - "needs": [ - { - "done_when": [ - "betalt", - "trukket" - ], - "enters_as": null, - "handled_by": "trenere", - "id": "innmelding", - "lands_in": "innmeldinger", - "steps": [ - { - "alternative": "Har du barn som spiller eller vil spille?", - "expect": [ - "Har du barn som spiller eller vil spille?" - ], - "fields": [], - "options": [ - { - "description": "Meld på barnet ditt, eller få hjelp hvis treningsavgiften er vanskelig.", - "name": "Har du barn som spiller eller vil spille?" - }, - { - "description": "Som trener, lagleder, sjåfør eller på dugnad - eller som bedrift som vil støtte klubben.", - "name": "Vil du hjelpe til eller støtte klubben?" - } - ], - "page": "/", - "question": "Hva vil du gjøre?" - }, - { - "alternative": "Meld barnet ditt på laget", - "expect": [ - "Meld barnet ditt på laget" - ], - "fields": [ - { - "label": "Barnets navn", - "name": "barnets_navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Fødselsår", - "name": "fodselsar", - "optional": false, - "options": [ - "2010", - "2011", - "2012", - "2013", - "2014", - "2015", - "2016", - "2017", - "2018", - "2019", - "2020" - ], - "type": "select" - }, - { - "label": "Ditt navn", - "name": "foresatt", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Telefon", - "name": "telefon", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "E-post", - "name": "epost", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Spilt for et annet lag før", - "name": "spilt_for", - "optional": true, - "options": [], - "type": "text" - } - ], - "options": [ - { - "description": "Meld barnet ditt på laget for sitt årskull, så tar trenerne det videre.", - "name": "Meld barnet ditt på laget" - }, - { - "description": "Sliter dere med å få treningsavgiften til å gå opp? Ta kontakt, så finner vi en løsning sammen.", - "name": "Få hjelp med treningsavgiften" - } - ], - "page": "/foresatte", - "question": "Vil du melde på barnet ditt, eller trenger dere hjelp med avgiften?" - } - ], - "success": [ - "betalt" - ], - "wants": "at barnet får plass på laget for sitt årskull", - "who": "en forelder som vil ha ungen med på et lag" - }, - { - "done_when": [ - "innvilget", - "avslatt" - ], - "enters_as": null, - "handled_by": "styret", - "id": "avgiftssak", - "lands_in": "avgiftssaker", - "steps": [ - { - "alternative": "Har du barn som spiller eller vil spille?", - "expect": [ - "Har du barn som spiller eller vil spille?" - ], - "fields": [], - "options": [ - { - "description": "Meld på barnet ditt, eller få hjelp hvis treningsavgiften er vanskelig.", - "name": "Har du barn som spiller eller vil spille?" - }, - { - "description": "Som trener, lagleder, sjåfør eller på dugnad - eller som bedrift som vil støtte klubben.", - "name": "Vil du hjelpe til eller støtte klubben?" - } - ], - "page": "/", - "question": "Hva vil du gjøre?" - }, - { - "alternative": "Få hjelp med treningsavgiften", - "expect": [ - "Få hjelp med treningsavgiften" - ], - "fields": [ - { - "label": "Barnets navn", - "name": "barnets_navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Ditt navn", - "name": "foresatt", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hva gjelder det", - "name": "hva_gjelder_det", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "Telefon", - "name": "telefon", - "optional": true, - "options": [], - "type": "tel" - } - ], - "options": [ - { - "description": "Meld barnet ditt på laget for sitt årskull, så tar trenerne det videre.", - "name": "Meld barnet ditt på laget" - }, - { - "description": "Sliter dere med å få treningsavgiften til å gå opp? Ta kontakt, så finner vi en løsning sammen.", - "name": "Få hjelp med treningsavgiften" - } - ], - "page": "/foresatte", - "question": "Vil du melde på barnet ditt, eller trenger dere hjelp med avgiften?" - } - ], - "success": [ - "innvilget" - ], - "wants": "å dele den opp, eller slippe den", - "who": "en forelder som sliter med treningsavgiften" - }, - { - "done_when": [ - "plassert", - "avslatt" - ], - "enters_as": null, - "handled_by": "styret", - "id": "frivillig", - "lands_in": "frivillige", - "steps": [ - { - "alternative": "Vil du hjelpe til eller støtte klubben?", - "expect": [ - "Vil du hjelpe til eller støtte klubben?" - ], - "fields": [], - "options": [ - { - "description": "Meld på barnet ditt, eller få hjelp hvis treningsavgiften er vanskelig.", - "name": "Har du barn som spiller eller vil spille?" - }, - { - "description": "Som trener, lagleder, sjåfør eller på dugnad - eller som bedrift som vil støtte klubben.", - "name": "Vil du hjelpe til eller støtte klubben?" - } - ], - "page": "/", - "question": "Hva vil du gjøre?" - }, - { - "alternative": "Bli brukt der klubben trenger deg", - "expect": [ - "Bli brukt der klubben trenger deg" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Telefon", - "name": "telefon", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "Hva kan du bidra med?", - "name": "hva_kan_du", - "optional": false, - "options": [ - "Trene et lag", - "Være lagleder", - "Kjøre til kamper", - "Dugnad", - "Annet" - ], - "type": "select" - } - ], - "options": [ - { - "description": "Trener, lagleder, sjåfør eller en hånd på dugnad - vi trenger folk til alt.", - "name": "Bli brukt der klubben trenger deg" - }, - { - "description": "Bedriften din kan støtte fotballgruppa og bli synlig i bygda.", - "name": "Støtt fotballen i bygda" - } - ], - "page": "/bidra", - "question": "Vil du hjelpe til, eller la bedriften din støtte klubben?" - } - ], - "success": [ - "plassert" - ], - "wants": "å bli brukt der det trengs", - "who": "en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad" - }, - { - "done_when": [ - "avtalt", - "avslatt" - ], - "enters_as": null, - "handled_by": "styret", - "id": "sponsor", - "lands_in": "sponsorer", - "steps": [ - { - "alternative": "Vil du hjelpe til eller støtte klubben?", - "expect": [ - "Vil du hjelpe til eller støtte klubben?" - ], - "fields": [], - "options": [ - { - "description": "Meld på barnet ditt, eller få hjelp hvis treningsavgiften er vanskelig.", - "name": "Har du barn som spiller eller vil spille?" - }, - { - "description": "Som trener, lagleder, sjåfør eller på dugnad - eller som bedrift som vil støtte klubben.", - "name": "Vil du hjelpe til eller støtte klubben?" - } - ], - "page": "/", - "question": "Hva vil du gjøre?" - }, - { - "alternative": "Støtt fotballen i bygda", - "expect": [ - "Støtt fotballen i bygda" - ], - "fields": [ - { - "label": "Bedrift", - "name": "bedrift", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Kontaktperson", - "name": "kontaktperson", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Telefon", - "name": "telefon", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "Hva tenker dere?", - "name": "hva_tenker_dere", - "optional": true, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Trener, lagleder, sjåfør eller en hånd på dugnad - vi trenger folk til alt.", - "name": "Bli brukt der klubben trenger deg" - }, - { - "description": "Bedriften din kan støtte fotballgruppa og bli synlig i bygda.", - "name": "Støtt fotballen i bygda" - } - ], - "page": "/bidra", - "question": "Vil du hjelpe til, eller la bedriften din støtte klubben?" - } - ], - "success": [ - "avtalt" - ], - "wants": "en prat om hva de kan bidra med, og en avtale", - "who": "en bedrift i bygda som vil støtte klubben" - }, - { - "done_when": [ - "ordnet" - ], - "enters_as": "trenere", - "handled_by": "styret", - "id": "baneproblem", - "lands_in": "baneproblemer", - "steps": [ - { - "alternative": "Meld fra om noe som ikke er i orden", - "expect": [ - "Meld fra om noe som ikke er i orden" - ], - "fields": [ - { - "label": "Hvor på anlegget?", - "name": "hvor", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hva gjelder det?", - "name": "hva", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Beskriv hva som er galt og hvor, så tar styret tak i det.", - "name": "Meld fra om noe som ikke er i orden" - } - ], - "page": "/trenere/baneproblem", - "question": "Hva har du oppdaget?" - } - ], - "success": [ - "ordnet" - ], - "wants": "at styret får vite det og ordner det", - "who": "en trener som ser at noe på anlegget ikke er i orden" - } - ], - "personas": [ - { - "id": "ny-i-bygda", - "need": "innmelding", - "text": "Vi flyttet hit i sommer og sønnen vår på ni har spilt fotball før. Hvordan får vi ham med på et lag her?" - }, - { - "id": "tvillinger", - "need": "innmelding", - "text": "Jeg har tvillingjenter på sju som maser om å begynne. Er det plass, og hva koster det?" - }, - { - "id": "alenefar", - "need": "avgiftssak", - "text": "Jeg er alene med tre unger og treningsavgiften for alle tre blir for mye på en gang. Går det an å dele den opp?" - }, - { - "id": "permittert", - "need": "avgiftssak", - "text": "Jeg ble permittert i vinter. Kan dattera mi fortsette å spille selv om vi ikke klarer avgiften akkurat nå?" - }, - { - "id": "pensjonist", - "need": "frivillig", - "text": "Jeg er pensjonert og spilte selv i mange år. Har dere bruk for en som kan ta de minste et par kvelder i uka?" - }, - { - "id": "stor-bil", - "need": "frivillig", - "text": "Jeg kan ikke trene noen, men jeg har stor bil og kan kjøre til bortekamper." - }, - { - "id": "rorlegger", - "need": "sponsor", - "text": "Jeg driver rørleggerfirma her i bygda og vil gjerne ha logoen vår på draktene til et lag. Hvem snakker jeg med?" - }, - { - "id": "kafeen", - "need": "sponsor", - "text": "Vi har kafé i sentrum og kan bidra med noe til cupen i mai, kanskje vafler eller litt penger." - }, - { - "id": "lyset-slukker", - "need": "baneproblem", - "text": "Lyset på kunstgresset slår seg av halv åtte og vi trener til åtte. Ungene løper i mørket." - } - ] -} \ No newline at end of file diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/needs.yaml b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/needs.yaml deleted file mode 100644 index 2383612..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/needs.yaml +++ /dev/null @@ -1,125 +0,0 @@ -needs: -- also_moved_by: - - kasserer - done_when: - - betalt - - trukket - enters: / - handled_by: trenere - id: innmelding - lands_in: innmeldinger - max_fields: 5 - max_steps: 2 - stages: - - open - - godkjent - - betalt - - trukket - success: - - betalt - via: Har du barn som spiller eller vil spille? - wants: at barnet får plass på laget for sitt årskull - who: en forelder som vil ha ungen med på et lag -- done_when: - - innvilget - - avslatt - enters: / - handled_by: styret - id: avgiftssak - lands_in: avgiftssaker - max_fields: 3 - max_steps: 2 - stages: - - open - - vurdert - - innvilget - - avslatt - success: - - innvilget - via: Har du barn som spiller eller vil spille? - wants: å dele den opp, eller slippe den - who: en forelder som sliter med treningsavgiften -- done_when: - - plassert - - avslatt - enters: / - handled_by: styret - id: frivillig - lands_in: frivillige - max_fields: 3 - max_steps: 2 - stages: - - open - - kontaktet - - plassert - - avslatt - success: - - plassert - via: Vil du hjelpe til eller støtte klubben? - wants: å bli brukt der det trengs - who: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad -- done_when: - - avtalt - - avslatt - enters: / - handled_by: styret - id: sponsor - lands_in: sponsorer - max_fields: 3 - max_steps: 2 - stages: - - open - - i_dialog - - avtalt - - avslatt - success: - - avtalt - via: Vil du hjelpe til eller støtte klubben? - wants: en prat om hva de kan bidra med, og en avtale - who: en bedrift i bygda som vil støtte klubben -- done_when: - - ordnet - enters: /trenere/baneproblem - enters_as: trenere - handled_by: styret - id: baneproblem - lands_in: baneproblemer - max_fields: 2 - max_steps: 1 - stages: - - open - - tatt_tak_i - - ordnet - success: - - ordnet - via: Meld fra om noe som ikke er i orden - wants: at styret får vite det og ordner det - who: en trener som ser at noe på anlegget ikke er i orden -personas: -- id: ny-i-bygda - need: innmelding - text: Vi flyttet hit i sommer og sønnen vår på ni har spilt fotball før. Hvordan får vi ham med på et lag her? -- id: tvillinger - need: innmelding - text: Jeg har tvillingjenter på sju som maser om å begynne. Er det plass, og hva koster det? -- id: alenefar - need: avgiftssak - text: Jeg er alene med tre unger og treningsavgiften for alle tre blir for mye på en gang. Går det an å dele den opp? -- id: permittert - need: avgiftssak - text: Jeg ble permittert i vinter. Kan dattera mi fortsette å spille selv om vi ikke klarer avgiften akkurat nå? -- id: pensjonist - need: frivillig - text: Jeg er pensjonert og spilte selv i mange år. Har dere bruk for en som kan ta de minste et par kvelder i uka? -- id: stor-bil - need: frivillig - text: Jeg kan ikke trene noen, men jeg har stor bil og kan kjøre til bortekamper. -- id: rorlegger - need: sponsor - text: Jeg driver rørleggerfirma her i bygda og vil gjerne ha logoen vår på draktene til et lag. Hvem snakker jeg med? -- id: kafeen - need: sponsor - text: Vi har kafé i sentrum og kan bidra med noe til cupen i mai, kanskje vafler eller litt penger. -- id: lyset-slukker - need: baneproblem - text: Lyset på kunstgresset slår seg av halv åtte og vi trener til åtte. Ungene løper i mørket. diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/bidra/index.yaml b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/bidra/index.yaml deleted file mode 100644 index 80a338d..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/bidra/index.yaml +++ /dev/null @@ -1,52 +0,0 @@ -alternatives: -- action: /received/frivillig - consequence: - - Meld deg - description: Trener, lagleder, sjåfør eller en hånd på dugnad - vi trenger folk til alt. - features: - - name: Bli frivillig - requirements: - - label: Navn - name: navn - type: text - - label: Telefon - name: telefon - type: tel - - label: Hva kan du bidra med? - name: hva_kan_du - options: - - Trene et lag - - Være lagleder - - Kjøre til kamper - - Dugnad - - Annet - type: select - name: Bli brukt der klubben trenger deg - record_as: frivillige -- action: /received/sponsor - consequence: - - Ta kontakt - description: Bedriften din kan støtte fotballgruppa og bli synlig i bygda. - features: - - name: Bli sponsor - requirements: - - label: Bedrift - name: bedrift - type: text - - label: Kontaktperson - name: kontaktperson - type: text - - label: Telefon - name: telefon - type: tel - - label: Hva tenker dere? - name: hva_tenker_dere - optional: true - type: textarea - name: Støtt fotballen i bygda - record_as: sponsorer -description: Klubben går på foreldreinnsats og lokal støtte. Her er to måter å bidra på. -name: Vil du hjelpe til, eller la bedriften din støtte klubben? -responsible: - contact: kari@liail.example - name: Kari Lien diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/foresatte/index.yaml b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/foresatte/index.yaml deleted file mode 100644 index 614ab8b..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/foresatte/index.yaml +++ /dev/null @@ -1,68 +0,0 @@ -alternatives: -- action: /received/innmelding - consequence: - - Meld på - description: Meld barnet ditt på laget for sitt årskull, så tar trenerne det videre. - features: - - name: Meld på barnet - requirements: - - label: Barnets navn - name: barnets_navn - type: text - - label: Fødselsår - name: fodselsar - options: - - '2010' - - '2011' - - '2012' - - '2013' - - '2014' - - '2015' - - '2016' - - '2017' - - '2018' - - '2019' - - '2020' - type: select - - label: Ditt navn - name: foresatt - type: text - - label: Telefon - name: telefon - type: tel - - label: E-post - name: epost - type: email - - label: Spilt for et annet lag før - name: spilt_for - optional: true - type: text - name: Meld barnet ditt på laget - record_as: innmeldinger -- action: /received/avgiftssak - consequence: - - Ta kontakt - description: Sliter dere med å få treningsavgiften til å gå opp? Ta kontakt, så finner vi en løsning sammen. - features: - - name: Om treningsavgiften - requirements: - - label: Barnets navn - name: barnets_navn - type: text - - label: Ditt navn - name: foresatt - type: text - - label: Hva gjelder det - name: hva_gjelder_det - type: textarea - - label: Telefon - name: telefon - optional: true - type: tel - name: Få hjelp med treningsavgiften - record_as: avgiftssaker -description: Har du et barn som vil spille fotball, eller har spørsmål om treningsavgiften? Her finner du veien videre. -name: Vil du melde på barnet ditt, eller trenger dere hjelp med avgiften? -responsible: - contact: kari@liail.example - name: Kari Lien diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/index.yaml b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/index.yaml deleted file mode 100644 index e61f741..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/index.yaml +++ /dev/null @@ -1,16 +0,0 @@ -alternatives: -- action: /foresatte - consequence: - - Jeg er foresatt - description: Meld på barnet ditt, eller få hjelp hvis treningsavgiften er vanskelig. - name: Har du barn som spiller eller vil spille? -- action: /bidra - consequence: - - Jeg vil bidra - description: Som trener, lagleder, sjåfør eller på dugnad - eller som bedrift som vil støtte klubben. - name: Vil du hjelpe til eller støtte klubben? -description: Lia IL Fotball er fotballgruppa på bygda, med lag fra seks til seksten år, drevet av foreldre på fritida. -name: Hva vil du gjøre? -responsible: - contact: kari@liail.example - name: Kari Lien diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/kasserer/_section.yaml b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/kasserer/_section.yaml deleted file mode 100644 index 2f8af2f..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/kasserer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: kasserer diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/kasserer/index.yaml b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/kasserer/index.yaml deleted file mode 100644 index df5dded..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/kasserer/index.yaml +++ /dev/null @@ -1,23 +0,0 @@ -alternatives: -- action: /kasserer - consequence: - - Bekreft - description: Her ser du alle som har meldt ungen sin på et lag, og hvor langt de har kommet i prosessen. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: innmeldinger - kind: kv - transitions: - - from: godkjent - label: Merk som betalt - to: betalt - name: Innmeldinger som venter på deg -description: Oversikten din over innmeldinger og avgiftssaker som må følges opp. -name: Hva må jeg følge opp nå? -responsible: - contact: kari@liail.example - name: Kari Lien diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/received/avgiftssak.yaml b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/received/avgiftssak.yaml deleted file mode 100644 index f4400ef..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/received/avgiftssak.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Styret behandler saken og gir deg beskjed om utfallet, enten det blir en avdragsordning eller fritak. - name: Styret vurderer saken din -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Vi har mottatt henvendelsen din om treningsavgiften. Styret ser på den og tar kontakt med deg. -name: Har henvendelsen min kommet fram? diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/received/frivillig.yaml b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/received/frivillig.yaml deleted file mode 100644 index f74b119..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/received/frivillig.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Styret går gjennom henvendelser fortløpende og tar kontakt på e-post eller telefon, gjerne i løpet av en ukes tid. - name: Vi hører fra deg snart -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du vil bidra! Styret leser meldingen og tar kontakt for å høre hvor du passer best inn. -name: Hva skjer nå som jeg har meldt meg? diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/received/innmelding.yaml b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/received/innmelding.yaml deleted file mode 100644 index cdd5faf..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/received/innmelding.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Trenerne går gjennom påmeldingen og gir beskjed om plass på laget for årskullet. - name: Trenerne svarer deg -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Påmeldingen er sendt og ligger klar hos trenerne. -name: Hva skjer nå med påmeldingen? diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/received/sponsor.yaml b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/received/sponsor.yaml deleted file mode 100644 index 8dbe26f..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/received/sponsor.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Noen fra styret ringer eller sender e-post for å høre hva dere ønsker å bidra med, så finner vi ut av det sammen. - name: Styret tar kontakt -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Takk for at dere vil støtte Lia IL Fotball. Styret har fått beskjeden og tar kontakt. -name: Hva skjer nå som vi har meldt interesse? diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/styret/_section.yaml b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/styret/_section.yaml deleted file mode 100644 index 5a34160..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/styret/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: styret diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/styret/index.yaml b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/styret/index.yaml deleted file mode 100644 index 7753a9d..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/styret/index.yaml +++ /dev/null @@ -1,104 +0,0 @@ -alternatives: -- action: /styret - consequence: - - Lagre - description: Familier som strever med å betale treningsavgiften, og trenger en løsning. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: avgiftssaker - kind: kv - transitions: - - from: open - label: Sett i vurdering - to: vurdert - - from: open - label: Avslå søknaden - to: avslatt - - from: vurdert - label: Innvilg søknaden - to: innvilget - - from: vurdert - label: Avslå søknaden - to: avslatt - name: Søknader om redusert avgift -- action: /styret - consequence: - - Lagre - description: Ting på anlegget som trenerne har meldt fra om, og som må ordnes. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: baneproblemer - kind: kv - transitions: - - from: open - label: Ta tak i saken - to: tatt_tak_i - - from: tatt_tak_i - label: Merk som ordnet - to: ordnet - name: Meldinger om banen og anlegget -- action: /styret - consequence: - - Lagre - description: Folk som har meldt seg som trener, lagleder, sjåfør eller til dugnad. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: frivillige - kind: kv - transitions: - - from: kontaktet - label: Sett på oppgave - to: plassert - - from: kontaktet - label: Takk nei - to: avslatt - - from: open - label: Ta kontakt - to: kontaktet - - from: open - label: Takk nei - to: avslatt - name: De som vil hjelpe til -- action: /styret - consequence: - - Lagre - description: Bedrifter i bygda som vil støtte klubben og trenger en avtale. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: sponsorer - kind: kv - transitions: - - from: i_dialog - label: Merk som avtalt - to: avtalt - - from: i_dialog - label: Takk nei - to: avslatt - - from: open - label: Start dialog - to: i_dialog - - from: open - label: Takk nei - to: avslatt - name: Bedrifter som vil støtte oss -description: 'Her ser styret alt som venter på svar: avgiftssøknader, frivillige, sponsorer og saker på banen.' -name: Hva venter på styret nå? -responsible: - contact: kari@liail.example - name: Kari Lien diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/trenere/_section.yaml b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/trenere/_section.yaml deleted file mode 100644 index 03a1f29..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/trenere/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: trenere diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/trenere/baneproblem-sent.yaml b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/trenere/baneproblem-sent.yaml deleted file mode 100644 index c386871..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/trenere/baneproblem-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Noen fra styret ser på det og tar tak i det som må ordnes. - name: Styret ser på saken -- action: /trenere - consequence: - - Tilbake - description: '' - name: Tilbake -description: Vi har mottatt meldingen din om banen. Takk for at du sier ifra. -name: Hva skjer nå med det jeg meldte inn? diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/trenere/baneproblem.yaml b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/trenere/baneproblem.yaml deleted file mode 100644 index fdc28da..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/trenere/baneproblem.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- action: /trenere/baneproblem-sent - consequence: - - Send melding - description: Beskriv hva som er galt og hvor, så tar styret tak i det. - features: - - name: Meld fra om banen - requirements: - - label: Hvor på anlegget? - name: hvor - type: text - - label: Hva gjelder det? - name: hva - type: textarea - name: Meld fra om noe som ikke er i orden - record_as: baneproblemer -description: Sett du noe på anlegget som bør fikses? Gi styret beskjed her. -followup: false -name: Hva har du oppdaget? -responsible: - contact: kari@liail.example - name: Kari Lien diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/trenere/index.yaml b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/trenere/index.yaml deleted file mode 100644 index a101334..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/questions/trenere/index.yaml +++ /dev/null @@ -1,34 +0,0 @@ -alternatives: -- action: /trenere - consequence: - - Bekreft - description: Barna som er meldt på laget ditt, og hvor langt de har kommet i påmeldingen. - features: - - description: '' - name: '' - resource: - requires_group: trenere - source: - bucket: innmeldinger - kind: kv - transitions: - - from: godkjent - label: Meld av - to: trukket - - from: open - label: Godkjenn til laget - to: godkjent - - from: open - label: Meld av - to: trukket - name: Barna som skal spille på laget ditt -- action: /trenere/baneproblem - consequence: - - Meld feil på anlegget - description: Se noe som ikke er i orden på banen eller anlegget? Si ifra til styret. - name: Meld fra om anlegget -description: Oversikt over laget ditt og påmeldingene som venter på deg. -name: Hvem spiller på laget mitt, og hva venter på meg? -responsible: - contact: kari@liail.example - name: Kari Lien diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/rate.json b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/rate.json deleted file mode 100644 index adf0a3b..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/rate.json +++ /dev/null @@ -1,207 +0,0 @@ -{ - "avgiftssak": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 26.908045977011497, - "options": 2, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 1, - "next": null, - "which": 1 - } - }, - { - "control": { - "asked": 1, - "next": 0, - "which": 1 - }, - "control_ok": false, - "followup_shown": true, - "lix": 30.714285714285715, - "options": 2, - "overloaded": false, - "page": "/foresatte", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "baneproblem": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 17.89090909090909, - "options": 1, - "overloaded": false, - "page": "/trenere/baneproblem", - "personas": 1, - "required_fields": 2, - "understanding": { - "asked": 1, - "next": 1, - "which": 1 - } - } - ], - "steps": 1 - }, - "frivillig": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 26.908045977011497, - "options": 2, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 1, - "next": null, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 30.055555555555557, - "options": 2, - "overloaded": false, - "page": "/bidra", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "innmelding": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 26.908045977011497, - "options": 2, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 1, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 1, - "next": 0, - "which": 2 - }, - "control_ok": false, - "followup_shown": true, - "lix": 32.541666666666664, - "options": 2, - "overloaded": false, - "page": "/foresatte", - "personas": 2, - "required_fields": 5, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "sponsor": { - "pages": [ - { - "control": { - "asked": 1, - "next": null, - "which": 0 - }, - "control_ok": false, - "followup_shown": false, - "lix": 26.908045977011497, - "options": 2, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 1, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 2, - "next": 0, - "which": 1 - }, - "control_ok": false, - "followup_shown": true, - "lix": 24.5, - "options": 2, - "overloaded": false, - "page": "/bidra", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/rate.txt b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/rate.txt deleted file mode 100644 index 265cffa..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/rate.txt +++ /dev/null @@ -1,10 +0,0 @@ -need LIX which asked next gutted twin says page load -innmelding @/ 27 very easy 2/2 1/2 - 0/0/- ok 2 options, 0 required -innmelding @/foresatte 33 easy 2/2 2/2 2/2 2/1/0 FAILED: which, asked 2 options, 5 required -avgiftssak @/ 27 very easy 1/2 1/2 - 0/0/- ok 2 options, 0 required -avgiftssak @/foresatte 31 easy 2/2 2/2 2/2 1/1/0 FAILED: which, asked 2 options, 3 required -frivillig @/ 27 very easy 1/2 1/2 - 0/0/- ok 2 options, 0 required -frivillig @/bidra 30 easy 2/2 2/2 2/2 0/0/0 ok 2 options, 3 required -sponsor @/ 27 very easy 2/2 1/2 - 0/1/- FAILED: asked 2 options, 0 required -sponsor @/bidra 24 very easy 2/2 2/2 2/2 1/2/0 FAILED: which, asked 2 options, 3 required -baneproblem 18 very easy 1/1 1/1 1/1 0/0/0 ok 1 options, 2 required diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/score-full.txt b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/score-full.txt deleted file mode 100644 index 6c562c3..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/score-full.txt +++ /dev/null @@ -1,4 +0,0 @@ -MISROUTE: tvillinger@/foresatte: picked "Få hjelp med treningsavgiften" (0.95), the need is met by ["Meld barnet ditt på laget"] -MISROUTE: stor-bil@/bidra: picked "Støtt fotballen i bygda" (0.95), the need is met by ["Bli brukt der klubben trenger deg"] -MISROUTE: kafeen@/bidra: picked "Bli brukt der klubben trenger deg" (0.85), the need is met by ["Støtt fotballen i bygda"] -wording: 13/16 routed right (81%) diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/score-skim.txt b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/score-skim.txt deleted file mode 100644 index f4b7816..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/score-skim.txt +++ /dev/null @@ -1,5 +0,0 @@ -MISROUTE: tvillinger@/foresatte: picked "Få hjelp med treningsavgiften" (0.95), the need is met by ["Meld barnet ditt på laget"] -MISROUTE: pensjonist@/: picked "Har du barn som spiller eller vil spille?" (0.95), the need is met by ["Vil du hjelpe til eller støtte klubben?"] -MISROUTE: stor-bil@/bidra: picked "Støtt fotballen i bygda" (0.95), the need is met by ["Bli brukt der klubben trenger deg"] -MISROUTE: kafeen@/bidra: picked "Bli brukt der klubben trenger deg" (0.85), the need is met by ["Støtt fotballen i bygda"] -wording: 12/16 routed right (75%) diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/site.yaml b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/site.yaml deleted file mode 100644 index e7785ad..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/site.yaml +++ /dev/null @@ -1,2 +0,0 @@ -lang: nb -title: Lia IL Fotball diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/tasks-full.jsonl b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/tasks-full.jsonl deleted file mode 100644 index 140b65e..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/tasks-full.jsonl +++ /dev/null @@ -1,16 +0,0 @@ -{"id":"ny-i-bygda@/","persona":"ny-i-bygda","need":"innmelding","page":"/","state":{"body":"Vi flyttet hit i sommer og sønnen vår på ni har spilt fotball før. Hvordan får vi ham med på et lag her?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du barn som spiller eller vil spille?":"Meld på barnet ditt, eller få hjelp hvis treningsavgiften er vanskelig.","Vil du hjelpe til eller støtte klubben?":"Som trener, lagleder, sjåfør eller på dugnad - eller som bedrift som vil støtte klubben."}}},"expect":["Har du barn som spiller eller vil spille?"]} -{"id":"ny-i-bygda@/foresatte","persona":"ny-i-bygda","need":"innmelding","page":"/foresatte","state":{"body":"Vi flyttet hit i sommer og sønnen vår på ni har spilt fotball før. Hvordan får vi ham med på et lag her?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du melde på barnet ditt, eller trenger dere hjelp med avgiften?\". Which alternative do they choose?","criteria":{"Få hjelp med treningsavgiften":"Sliter dere med å få treningsavgiften til å gå opp? Ta kontakt, så finner vi en løsning sammen.","Meld barnet ditt på laget":"Meld barnet ditt på laget for sitt årskull, så tar trenerne det videre."}}},"expect":["Meld barnet ditt på laget"]} -{"id":"tvillinger@/","persona":"tvillinger","need":"innmelding","page":"/","state":{"body":"Jeg har tvillingjenter på sju som maser om å begynne. Er det plass, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du barn som spiller eller vil spille?":"Meld på barnet ditt, eller få hjelp hvis treningsavgiften er vanskelig.","Vil du hjelpe til eller støtte klubben?":"Som trener, lagleder, sjåfør eller på dugnad - eller som bedrift som vil støtte klubben."}}},"expect":["Har du barn som spiller eller vil spille?"]} -{"id":"tvillinger@/foresatte","persona":"tvillinger","need":"innmelding","page":"/foresatte","state":{"body":"Jeg har tvillingjenter på sju som maser om å begynne. Er det plass, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du melde på barnet ditt, eller trenger dere hjelp med avgiften?\". Which alternative do they choose?","criteria":{"Få hjelp med treningsavgiften":"Sliter dere med å få treningsavgiften til å gå opp? Ta kontakt, så finner vi en løsning sammen.","Meld barnet ditt på laget":"Meld barnet ditt på laget for sitt årskull, så tar trenerne det videre."}}},"expect":["Meld barnet ditt på laget"]} -{"id":"alenefar@/","persona":"alenefar","need":"avgiftssak","page":"/","state":{"body":"Jeg er alene med tre unger og treningsavgiften for alle tre blir for mye på en gang. Går det an å dele den opp?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du barn som spiller eller vil spille?":"Meld på barnet ditt, eller få hjelp hvis treningsavgiften er vanskelig.","Vil du hjelpe til eller støtte klubben?":"Som trener, lagleder, sjåfør eller på dugnad - eller som bedrift som vil støtte klubben."}}},"expect":["Har du barn som spiller eller vil spille?"]} -{"id":"alenefar@/foresatte","persona":"alenefar","need":"avgiftssak","page":"/foresatte","state":{"body":"Jeg er alene med tre unger og treningsavgiften for alle tre blir for mye på en gang. Går det an å dele den opp?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du melde på barnet ditt, eller trenger dere hjelp med avgiften?\". Which alternative do they choose?","criteria":{"Få hjelp med treningsavgiften":"Sliter dere med å få treningsavgiften til å gå opp? Ta kontakt, så finner vi en løsning sammen.","Meld barnet ditt på laget":"Meld barnet ditt på laget for sitt årskull, så tar trenerne det videre."}}},"expect":["Få hjelp med treningsavgiften"]} -{"id":"permittert@/","persona":"permittert","need":"avgiftssak","page":"/","state":{"body":"Jeg ble permittert i vinter. Kan dattera mi fortsette å spille selv om vi ikke klarer avgiften akkurat nå?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du barn som spiller eller vil spille?":"Meld på barnet ditt, eller få hjelp hvis treningsavgiften er vanskelig.","Vil du hjelpe til eller støtte klubben?":"Som trener, lagleder, sjåfør eller på dugnad - eller som bedrift som vil støtte klubben."}}},"expect":["Har du barn som spiller eller vil spille?"]} -{"id":"permittert@/foresatte","persona":"permittert","need":"avgiftssak","page":"/foresatte","state":{"body":"Jeg ble permittert i vinter. Kan dattera mi fortsette å spille selv om vi ikke klarer avgiften akkurat nå?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du melde på barnet ditt, eller trenger dere hjelp med avgiften?\". Which alternative do they choose?","criteria":{"Få hjelp med treningsavgiften":"Sliter dere med å få treningsavgiften til å gå opp? Ta kontakt, så finner vi en løsning sammen.","Meld barnet ditt på laget":"Meld barnet ditt på laget for sitt årskull, så tar trenerne det videre."}}},"expect":["Få hjelp med treningsavgiften"]} -{"id":"pensjonist@/","persona":"pensjonist","need":"frivillig","page":"/","state":{"body":"Jeg er pensjonert og spilte selv i mange år. Har dere bruk for en som kan ta de minste et par kvelder i uka?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du barn som spiller eller vil spille?":"Meld på barnet ditt, eller få hjelp hvis treningsavgiften er vanskelig.","Vil du hjelpe til eller støtte klubben?":"Som trener, lagleder, sjåfør eller på dugnad - eller som bedrift som vil støtte klubben."}}},"expect":["Vil du hjelpe til eller støtte klubben?"]} -{"id":"pensjonist@/bidra","persona":"pensjonist","need":"frivillig","page":"/bidra","state":{"body":"Jeg er pensjonert og spilte selv i mange år. Har dere bruk for en som kan ta de minste et par kvelder i uka?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til, eller la bedriften din støtte klubben?\". Which alternative do they choose?","criteria":{"Bli brukt der klubben trenger deg":"Trener, lagleder, sjåfør eller en hånd på dugnad - vi trenger folk til alt.","Støtt fotballen i bygda":"Bedriften din kan støtte fotballgruppa og bli synlig i bygda."}}},"expect":["Bli brukt der klubben trenger deg"]} -{"id":"stor-bil@/","persona":"stor-bil","need":"frivillig","page":"/","state":{"body":"Jeg kan ikke trene noen, men jeg har stor bil og kan kjøre til bortekamper."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du barn som spiller eller vil spille?":"Meld på barnet ditt, eller få hjelp hvis treningsavgiften er vanskelig.","Vil du hjelpe til eller støtte klubben?":"Som trener, lagleder, sjåfør eller på dugnad - eller som bedrift som vil støtte klubben."}}},"expect":["Vil du hjelpe til eller støtte klubben?"]} -{"id":"stor-bil@/bidra","persona":"stor-bil","need":"frivillig","page":"/bidra","state":{"body":"Jeg kan ikke trene noen, men jeg har stor bil og kan kjøre til bortekamper."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til, eller la bedriften din støtte klubben?\". Which alternative do they choose?","criteria":{"Bli brukt der klubben trenger deg":"Trener, lagleder, sjåfør eller en hånd på dugnad - vi trenger folk til alt.","Støtt fotballen i bygda":"Bedriften din kan støtte fotballgruppa og bli synlig i bygda."}}},"expect":["Bli brukt der klubben trenger deg"]} -{"id":"rorlegger@/","persona":"rorlegger","need":"sponsor","page":"/","state":{"body":"Jeg driver rørleggerfirma her i bygda og vil gjerne ha logoen vår på draktene til et lag. Hvem snakker jeg med?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du barn som spiller eller vil spille?":"Meld på barnet ditt, eller få hjelp hvis treningsavgiften er vanskelig.","Vil du hjelpe til eller støtte klubben?":"Som trener, lagleder, sjåfør eller på dugnad - eller som bedrift som vil støtte klubben."}}},"expect":["Vil du hjelpe til eller støtte klubben?"]} -{"id":"rorlegger@/bidra","persona":"rorlegger","need":"sponsor","page":"/bidra","state":{"body":"Jeg driver rørleggerfirma her i bygda og vil gjerne ha logoen vår på draktene til et lag. Hvem snakker jeg med?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til, eller la bedriften din støtte klubben?\". Which alternative do they choose?","criteria":{"Bli brukt der klubben trenger deg":"Trener, lagleder, sjåfør eller en hånd på dugnad - vi trenger folk til alt.","Støtt fotballen i bygda":"Bedriften din kan støtte fotballgruppa og bli synlig i bygda."}}},"expect":["Støtt fotballen i bygda"]} -{"id":"kafeen@/","persona":"kafeen","need":"sponsor","page":"/","state":{"body":"Vi har kafé i sentrum og kan bidra med noe til cupen i mai, kanskje vafler eller litt penger."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du barn som spiller eller vil spille?":"Meld på barnet ditt, eller få hjelp hvis treningsavgiften er vanskelig.","Vil du hjelpe til eller støtte klubben?":"Som trener, lagleder, sjåfør eller på dugnad - eller som bedrift som vil støtte klubben."}}},"expect":["Vil du hjelpe til eller støtte klubben?"]} -{"id":"kafeen@/bidra","persona":"kafeen","need":"sponsor","page":"/bidra","state":{"body":"Vi har kafé i sentrum og kan bidra med noe til cupen i mai, kanskje vafler eller litt penger."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til, eller la bedriften din støtte klubben?\". Which alternative do they choose?","criteria":{"Bli brukt der klubben trenger deg":"Trener, lagleder, sjåfør eller en hånd på dugnad - vi trenger folk til alt.","Støtt fotballen i bygda":"Bedriften din kan støtte fotballgruppa og bli synlig i bygda."}}},"expect":["Støtt fotballen i bygda"]} diff --git a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/tasks-skim.jsonl b/vendor/trainer/runs/fotballklubb-claude-2026-09-22/tasks-skim.jsonl deleted file mode 100644 index 88051e3..0000000 --- a/vendor/trainer/runs/fotballklubb-claude-2026-09-22/tasks-skim.jsonl +++ /dev/null @@ -1,16 +0,0 @@ -{"id":"ny-i-bygda@/","persona":"ny-i-bygda","need":"innmelding","page":"/","state":{"body":"Vi flyttet hit i sommer og sønnen vår på ni har spilt fotball før. Hvordan får vi ham med på et lag her?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du barn som spiller eller vil spille?":"Har du barn som spiller eller vil spille?","Vil du hjelpe til eller støtte klubben?":"Vil du hjelpe til eller støtte klubben?"}}},"expect":["Har du barn som spiller eller vil spille?"]} -{"id":"ny-i-bygda@/foresatte","persona":"ny-i-bygda","need":"innmelding","page":"/foresatte","state":{"body":"Vi flyttet hit i sommer og sønnen vår på ni har spilt fotball før. Hvordan får vi ham med på et lag her?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du melde på barnet ditt, eller trenger dere hjelp med avgiften?\". Which alternative do they choose?","criteria":{"Få hjelp med treningsavgiften":"Få hjelp med treningsavgiften","Meld barnet ditt på laget":"Meld barnet ditt på laget"}}},"expect":["Meld barnet ditt på laget"]} -{"id":"tvillinger@/","persona":"tvillinger","need":"innmelding","page":"/","state":{"body":"Jeg har tvillingjenter på sju som maser om å begynne. Er det plass, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du barn som spiller eller vil spille?":"Har du barn som spiller eller vil spille?","Vil du hjelpe til eller støtte klubben?":"Vil du hjelpe til eller støtte klubben?"}}},"expect":["Har du barn som spiller eller vil spille?"]} -{"id":"tvillinger@/foresatte","persona":"tvillinger","need":"innmelding","page":"/foresatte","state":{"body":"Jeg har tvillingjenter på sju som maser om å begynne. Er det plass, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du melde på barnet ditt, eller trenger dere hjelp med avgiften?\". Which alternative do they choose?","criteria":{"Få hjelp med treningsavgiften":"Få hjelp med treningsavgiften","Meld barnet ditt på laget":"Meld barnet ditt på laget"}}},"expect":["Meld barnet ditt på laget"]} -{"id":"alenefar@/","persona":"alenefar","need":"avgiftssak","page":"/","state":{"body":"Jeg er alene med tre unger og treningsavgiften for alle tre blir for mye på en gang. Går det an å dele den opp?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du barn som spiller eller vil spille?":"Har du barn som spiller eller vil spille?","Vil du hjelpe til eller støtte klubben?":"Vil du hjelpe til eller støtte klubben?"}}},"expect":["Har du barn som spiller eller vil spille?"]} -{"id":"alenefar@/foresatte","persona":"alenefar","need":"avgiftssak","page":"/foresatte","state":{"body":"Jeg er alene med tre unger og treningsavgiften for alle tre blir for mye på en gang. Går det an å dele den opp?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du melde på barnet ditt, eller trenger dere hjelp med avgiften?\". Which alternative do they choose?","criteria":{"Få hjelp med treningsavgiften":"Få hjelp med treningsavgiften","Meld barnet ditt på laget":"Meld barnet ditt på laget"}}},"expect":["Få hjelp med treningsavgiften"]} -{"id":"permittert@/","persona":"permittert","need":"avgiftssak","page":"/","state":{"body":"Jeg ble permittert i vinter. Kan dattera mi fortsette å spille selv om vi ikke klarer avgiften akkurat nå?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du barn som spiller eller vil spille?":"Har du barn som spiller eller vil spille?","Vil du hjelpe til eller støtte klubben?":"Vil du hjelpe til eller støtte klubben?"}}},"expect":["Har du barn som spiller eller vil spille?"]} -{"id":"permittert@/foresatte","persona":"permittert","need":"avgiftssak","page":"/foresatte","state":{"body":"Jeg ble permittert i vinter. Kan dattera mi fortsette å spille selv om vi ikke klarer avgiften akkurat nå?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du melde på barnet ditt, eller trenger dere hjelp med avgiften?\". Which alternative do they choose?","criteria":{"Få hjelp med treningsavgiften":"Få hjelp med treningsavgiften","Meld barnet ditt på laget":"Meld barnet ditt på laget"}}},"expect":["Få hjelp med treningsavgiften"]} -{"id":"pensjonist@/","persona":"pensjonist","need":"frivillig","page":"/","state":{"body":"Jeg er pensjonert og spilte selv i mange år. Har dere bruk for en som kan ta de minste et par kvelder i uka?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du barn som spiller eller vil spille?":"Har du barn som spiller eller vil spille?","Vil du hjelpe til eller støtte klubben?":"Vil du hjelpe til eller støtte klubben?"}}},"expect":["Vil du hjelpe til eller støtte klubben?"]} -{"id":"pensjonist@/bidra","persona":"pensjonist","need":"frivillig","page":"/bidra","state":{"body":"Jeg er pensjonert og spilte selv i mange år. Har dere bruk for en som kan ta de minste et par kvelder i uka?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til, eller la bedriften din støtte klubben?\". Which alternative do they choose?","criteria":{"Bli brukt der klubben trenger deg":"Bli brukt der klubben trenger deg","Støtt fotballen i bygda":"Støtt fotballen i bygda"}}},"expect":["Bli brukt der klubben trenger deg"]} -{"id":"stor-bil@/","persona":"stor-bil","need":"frivillig","page":"/","state":{"body":"Jeg kan ikke trene noen, men jeg har stor bil og kan kjøre til bortekamper."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du barn som spiller eller vil spille?":"Har du barn som spiller eller vil spille?","Vil du hjelpe til eller støtte klubben?":"Vil du hjelpe til eller støtte klubben?"}}},"expect":["Vil du hjelpe til eller støtte klubben?"]} -{"id":"stor-bil@/bidra","persona":"stor-bil","need":"frivillig","page":"/bidra","state":{"body":"Jeg kan ikke trene noen, men jeg har stor bil og kan kjøre til bortekamper."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til, eller la bedriften din støtte klubben?\". Which alternative do they choose?","criteria":{"Bli brukt der klubben trenger deg":"Bli brukt der klubben trenger deg","Støtt fotballen i bygda":"Støtt fotballen i bygda"}}},"expect":["Bli brukt der klubben trenger deg"]} -{"id":"rorlegger@/","persona":"rorlegger","need":"sponsor","page":"/","state":{"body":"Jeg driver rørleggerfirma her i bygda og vil gjerne ha logoen vår på draktene til et lag. Hvem snakker jeg med?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du barn som spiller eller vil spille?":"Har du barn som spiller eller vil spille?","Vil du hjelpe til eller støtte klubben?":"Vil du hjelpe til eller støtte klubben?"}}},"expect":["Vil du hjelpe til eller støtte klubben?"]} -{"id":"rorlegger@/bidra","persona":"rorlegger","need":"sponsor","page":"/bidra","state":{"body":"Jeg driver rørleggerfirma her i bygda og vil gjerne ha logoen vår på draktene til et lag. Hvem snakker jeg med?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til, eller la bedriften din støtte klubben?\". Which alternative do they choose?","criteria":{"Bli brukt der klubben trenger deg":"Bli brukt der klubben trenger deg","Støtt fotballen i bygda":"Støtt fotballen i bygda"}}},"expect":["Støtt fotballen i bygda"]} -{"id":"kafeen@/","persona":"kafeen","need":"sponsor","page":"/","state":{"body":"Vi har kafé i sentrum og kan bidra med noe til cupen i mai, kanskje vafler eller litt penger."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du barn som spiller eller vil spille?":"Har du barn som spiller eller vil spille?","Vil du hjelpe til eller støtte klubben?":"Vil du hjelpe til eller støtte klubben?"}}},"expect":["Vil du hjelpe til eller støtte klubben?"]} -{"id":"kafeen@/bidra","persona":"kafeen","need":"sponsor","page":"/bidra","state":{"body":"Vi har kafé i sentrum og kan bidra med noe til cupen i mai, kanskje vafler eller litt penger."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til, eller la bedriften din støtte klubben?\". Which alternative do they choose?","criteria":{"Bli brukt der klubben trenger deg":"Bli brukt der klubben trenger deg","Støtt fotballen i bygda":"Støtt fotballen i bygda"}}},"expect":["Støtt fotballen i bygda"]} diff --git a/vendor/trainer/runs/hire-2026-09-22/README.md b/vendor/trainer/runs/hire-2026-09-22/README.md deleted file mode 100644 index ed4d952..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/README.md +++ /dev/null @@ -1,22 +0,0 @@ -# A machine hire yard behind two doors - -`plans/hire.yaml`: four needs, two doors (hiring, firms), one -aggregate walked by two roles (the counter reserves, the yard hands -out and takes back), and the yard's own damage report. Built with -nemotron-3.5-lightning:30b-a3b writing the words, all 11 pages -worded, verifier green by construction. Visitor: qwen3:8b, one task -per call. Seven held-out personas, ten tasks. - -| Visitor could read | Routed right | -|---|---| -| Headings and descriptions | 10 of 10 | -| Headings only | 10 of 10 | - -The one case of the day with nothing to fix. The doors separate two -kinds of visitor who never confuse themselves (a person with a job to -do, and a firm that wants an account), and the two forms behind the -hiring door are "I need a machine" and "the machine has stopped", -which no visitor mixes up either. Doors work when the first question -is one the visitor already knows the answer to. - -`rate.txt` is the page-by-page rate; see `rate.json`. diff --git a/vendor/trainer/runs/hire-2026-09-22/aggregates.yaml b/vendor/trainer/runs/hire-2026-09-22/aggregates.yaml deleted file mode 100644 index 418730d..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/aggregates.yaml +++ /dev/null @@ -1,69 +0,0 @@ -aggregates: -- bucket: accounts - initial: open - states: - approved: - event: approved - checked: - event: checked - declined: - event: declined - open: - event: received - transitions: - checked: - - approved - - declined - open: - - checked - - declined -- bucket: breakdowns - initial: open - states: - in_hand: - event: in_hand - open: - event: received - resolved: - event: resolved - transitions: - in_hand: - - resolved - open: - - in_hand -- bucket: damage_reports - initial: open - states: - invoiced: - event: invoiced - open: - event: received - written_off: - event: written_off - transitions: - open: - - invoiced - - written_off -- bucket: hires - initial: open - states: - cancelled: - event: cancelled - open: - event: received - out: - event: out - reserved: - event: reserved - returned: - event: returned - transitions: - open: - - reserved - - cancelled - out: - - returned - - cancelled - reserved: - - out - - cancelled diff --git a/vendor/trainer/runs/hire-2026-09-22/answers-full.jsonl b/vendor/trainer/runs/hire-2026-09-22/answers-full.jsonl deleted file mode 100644 index 174fb09..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/answers-full.jsonl +++ /dev/null @@ -1,10 +0,0 @@ -{"choice":"Need a machine for a while?","confidence":0.95,"id":"garden-wall@/"} -{"choice":"Hire a machine for your job","confidence":0.95,"id":"garden-wall@/hiring"} -{"choice":"Need a machine for a while?","confidence":0.95,"id":"roofer-lift@/"} -{"choice":"Hire a machine for your job","confidence":0.95,"id":"roofer-lift@/hiring"} -{"choice":"Need a machine for a while?","confidence":0.95,"id":"stuck-compactor@/"} -{"choice":"Machine has stopped working","confidence":0.95,"id":"stuck-compactor@/hiring"} -{"choice":"Need a machine for a while?","confidence":0.95,"id":"lift-error@/"} -{"choice":"Machine has stopped working","confidence":0.95,"id":"lift-error@/hiring"} -{"choice":"Frequent hire? Set up an account","confidence":0.95,"id":"landscaper-account@/"} -{"choice":"Frequent hire? Set up an account","confidence":0.95,"id":"builder-account@/"} diff --git a/vendor/trainer/runs/hire-2026-09-22/answers-skim.jsonl b/vendor/trainer/runs/hire-2026-09-22/answers-skim.jsonl deleted file mode 100644 index 174fb09..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/answers-skim.jsonl +++ /dev/null @@ -1,10 +0,0 @@ -{"choice":"Need a machine for a while?","confidence":0.95,"id":"garden-wall@/"} -{"choice":"Hire a machine for your job","confidence":0.95,"id":"garden-wall@/hiring"} -{"choice":"Need a machine for a while?","confidence":0.95,"id":"roofer-lift@/"} -{"choice":"Hire a machine for your job","confidence":0.95,"id":"roofer-lift@/hiring"} -{"choice":"Need a machine for a while?","confidence":0.95,"id":"stuck-compactor@/"} -{"choice":"Machine has stopped working","confidence":0.95,"id":"stuck-compactor@/hiring"} -{"choice":"Need a machine for a while?","confidence":0.95,"id":"lift-error@/"} -{"choice":"Machine has stopped working","confidence":0.95,"id":"lift-error@/hiring"} -{"choice":"Frequent hire? Set up an account","confidence":0.95,"id":"landscaper-account@/"} -{"choice":"Frequent hire? Set up an account","confidence":0.95,"id":"builder-account@/"} diff --git a/vendor/trainer/runs/hire-2026-09-22/build.log b/vendor/trainer/runs/hire-2026-09-22/build.log deleted file mode 100644 index 231f7f7..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/build.log +++ /dev/null @@ -1,18 +0,0 @@ -words: questions/counter/index.yaml -words: questions/firms/index.yaml -words: questions/hiring/index.yaml -words: questions/index.yaml -words: questions/office/index.yaml -words: questions/received/account-request.yaml -words: questions/received/breakdown.yaml -words: questions/received/hire-request.yaml -words: questions/yard/damage-on-return-sent.yaml -words: questions/yard/damage-on-return.yaml -words: questions/yard/index.yaml -content repo written to runs/hire-2026-09-22 -OK: 11 question(s), 5 aggregate(s) valid -need "hire-request": / [Need a machine for a while?] -> /hiring [Hire a machine for your job] -> "hires" -need "breakdown": / [Need a machine for a while?] -> /hiring [Machine has stopped working] -> "breakdowns" -need "account-request": / [Frequent hire? Set up an account] -> /firms [Set up a firm account] -> "accounts" -need "damage-on-return": /yard/damage-on-return [Record damage on return] -> "damage_reports" -OK: 4 need(s) structurally met, 0 planned, 7 persona(s) diff --git a/vendor/trainer/runs/hire-2026-09-22/llm/01-questions_counter_index.yaml.md b/vendor/trainer/runs/hire-2026-09-22/llm/01-questions_counter_index.yaml.md deleted file mode 100644 index 953a416..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/llm/01-questions_counter_index.yaml.md +++ /dev/null @@ -1,67 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Fjellstad Hire -About: Machine hire: mini diggers, lifts, compactors, generators. A counter, a yard that delivers, collects and fixes, and an office. -Contact: Ola Fjellstad -Language to write in: en - -Everyone the site serves: -- door hiring: for someone who needs a machine, or has one of ours that has stopped; behind it: hire-request, breakdown -- door firms: for a firm that hires often and wants an account with us; behind it: account-request -- hire-request: a private person or a firm who needs a machine for a while - wants: the right machine, from a date, for as long as they need it. Handled by counter. Stages: open -> reserved -> out -> returned -> cancelled. -- breakdown: someone whose hired machine has stopped working - wants: it running again, or swapped, today. Handled by yard. Stages: open -> in_hand -> resolved. -- account-request: a firm that hires often - wants: to send anyone to collect, and get one invoice a month. Handled by office. Stages: open -> checked -> approved -> declined. -- damage-on-return: someone in the yard who finds damage when a machine comes back - wants: it written down before the customer has left. Handled by office. Stages: open -> invoiced -> written_off. - -The page: questions/counter/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "hires": { - "description": "", - "heading": "", - "moves": { - "open->cancelled": "cancelled>", - "open->reserved": "reserved>", - "out->cancelled": "cancelled>", - "reserved->cancelled": "cancelled>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "buckets": { - "hires": { - "description": "Track hire requests from open to returned, and handle cancellations.", - "heading": "Manage hire requests", - "moves": { - "open->cancelled": "Cancel request", - "open->reserved": "Reserve machine", - "out->cancelled": "Cancel hire", - "reserved->cancelled": "Cancel reservation" - } - } - }, - "confirm": "Confirm", - "description": "Your desk to manage machine hires and track their progress through each stage.", - "links": {}, - "question": "What case do you need to work on?" -} diff --git a/vendor/trainer/runs/hire-2026-09-22/llm/02-questions_firms_index.yaml.md b/vendor/trainer/runs/hire-2026-09-22/llm/02-questions_firms_index.yaml.md deleted file mode 100644 index ebe4aa5..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/llm/02-questions_firms_index.yaml.md +++ /dev/null @@ -1,69 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Fjellstad Hire -About: Machine hire: mini diggers, lifts, compactors, generators. A counter, a yard that delivers, collects and fixes, and an office. -Contact: Ola Fjellstad -Language to write in: en - -Everyone the site serves: -- door hiring: for someone who needs a machine, or has one of ours that has stopped; behind it: hire-request, breakdown -- door firms: for a firm that hires often and wants an account with us; behind it: account-request -- hire-request: a private person or a firm who needs a machine for a while - wants: the right machine, from a date, for as long as they need it. Handled by counter. Stages: open -> reserved -> out -> returned -> cancelled. -- breakdown: someone whose hired machine has stopped working - wants: it running again, or swapped, today. Handled by yard. Stages: open -> in_hand -> resolved. -- account-request: a firm that hires often - wants: to send anyone to collect, and get one invoice a month. Handled by office. Stages: open -> checked -> approved -> declined. -- damage-on-return: someone in the yard who finds damage when a machine comes back - wants: it written down before the customer has left. Handled by office. Stages: open -> invoiced -> written_off. - -The page: questions/firms/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "account-request": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "company": "", - "contact": "", - "invoice_email": "", - "phone": "", - "registration_number": "" - } - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "description": "Choose the path that fits how you work with us.", - "needs": { - "account-request": { - "button": "Start account", - "description": "Set up a firm account to send anyone to collect and get one monthly invoice.", - "form_title": "Firm account details", - "heading": "Set up a firm account", - "labels": { - "company": "Company name", - "contact": "Contact person", - "invoice_email": "Invoice email", - "phone": "Phone number", - "registration_number": "Organisation number" - } - } - }, - "question": "What do you need from us today?" -} diff --git a/vendor/trainer/runs/hire-2026-09-22/llm/03-questions_hiring_index.yaml.md b/vendor/trainer/runs/hire-2026-09-22/llm/03-questions_hiring_index.yaml.md deleted file mode 100644 index 47a6a98..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/llm/03-questions_hiring_index.yaml.md +++ /dev/null @@ -1,95 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Fjellstad Hire -About: Machine hire: mini diggers, lifts, compactors, generators. A counter, a yard that delivers, collects and fixes, and an office. -Contact: Ola Fjellstad -Language to write in: en - -Everyone the site serves: -- door hiring: for someone who needs a machine, or has one of ours that has stopped; behind it: hire-request, breakdown -- door firms: for a firm that hires often and wants an account with us; behind it: account-request -- hire-request: a private person or a firm who needs a machine for a while - wants: the right machine, from a date, for as long as they need it. Handled by counter. Stages: open -> reserved -> out -> returned -> cancelled. -- breakdown: someone whose hired machine has stopped working - wants: it running again, or swapped, today. Handled by yard. Stages: open -> in_hand -> resolved. -- account-request: a firm that hires often - wants: to send anyone to collect, and get one invoice a month. Handled by office. Stages: open -> checked -> approved -> declined. -- damage-on-return: someone in the yard who finds damage when a machine comes back - wants: it written down before the customer has left. Handled by office. Stages: open -> invoiced -> written_off. - -The page: questions/hiring/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "breakdown": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "machine": "", - "phone": "", - "what_happened": "", - "where": "" - } - }, - "hire-request": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "deliver_to": "", - "from": "", - "name": "", - "phone": "", - "until": "", - "what": "" - } - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "description": "Find the right machine or report a breakdown. Pick what you need below.", - "needs": { - "breakdown": { - "button": "Report breakdown", - "description": "Tell us about the machine that stopped, so we can fix it today.", - "form_title": "Report machine breakdown", - "heading": "Machine has stopped working", - "labels": { - "machine": "Machine model", - "phone": "Phone number", - "what_happened": "What happened", - "where": "Location" - } - }, - "hire-request": { - "button": "Hire a machine", - "description": "Get the right machine on site from a start date, for as long as you need.", - "form_title": "Request machine hire", - "heading": "Hire a machine for your job", - "labels": { - "deliver_to": "Delivery address", - "from": "Start date", - "name": "Your name", - "phone": "Phone number", - "until": "Return date", - "what": "Machine type" - } - } - }, - "question": "What do you need from us today?" -} diff --git a/vendor/trainer/runs/hire-2026-09-22/llm/04-questions_index.yaml.md b/vendor/trainer/runs/hire-2026-09-22/llm/04-questions_index.yaml.md deleted file mode 100644 index 62008cb..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/llm/04-questions_index.yaml.md +++ /dev/null @@ -1,65 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Fjellstad Hire -About: Machine hire: mini diggers, lifts, compactors, generators. A counter, a yard that delivers, collects and fixes, and an office. -Contact: Ola Fjellstad -Language to write in: en - -Everyone the site serves: -- door hiring: for someone who needs a machine, or has one of ours that has stopped; behind it: hire-request, breakdown -- door firms: for a firm that hires often and wants an account with us; behind it: account-request -- hire-request: a private person or a firm who needs a machine for a while - wants: the right machine, from a date, for as long as they need it. Handled by counter. Stages: open -> reserved -> out -> returned -> cancelled. -- breakdown: someone whose hired machine has stopped working - wants: it running again, or swapped, today. Handled by yard. Stages: open -> in_hand -> resolved. -- account-request: a firm that hires often - wants: to send anyone to collect, and get one invoice a month. Handled by office. Stages: open -> checked -> approved -> declined. -- damage-on-return: someone in the yard who finds damage when a machine comes back - wants: it written down before the customer has left. Handled by office. Stages: open -> invoiced -> written_off. - -The page: questions/index.yaml -It is the front door: the first page any visitor sees. `question` is the page's one question. Under `doors`, each entry is one alternative that leads to a page of its own for one kind of visitor: its heading must let that visitor recognise themselves from the heading alone. Under `needs`, each entry is one alternative with a form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "doors": { - "firms": { - "button": "", - "description": "", - "heading": "" - }, - "hiring": { - "button": "", - "description": "", - "heading": "" - } - }, - "needs": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "description": "Tell us what you need, and we'll guide you to the right solution.", - "doors": { - "firms": { - "button": "Get an account", - "description": "For firms that hire often. Send anyone to collect and get one invoice a month.", - "heading": "Frequent hire? Set up an account" - }, - "hiring": { - "button": "Hire a machine", - "description": "For someone who needs a machine, or has one that has stopped. We'll help you find the right one.", - "heading": "Need a machine for a while?" - } - }, - "needs": {}, - "question": "What brings you to Fjellstad Hire today?" -} diff --git a/vendor/trainer/runs/hire-2026-09-22/llm/05-questions_office_index.yaml.md b/vendor/trainer/runs/hire-2026-09-22/llm/05-questions_office_index.yaml.md deleted file mode 100644 index eab444d..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/llm/05-questions_office_index.yaml.md +++ /dev/null @@ -1,83 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Fjellstad Hire -About: Machine hire: mini diggers, lifts, compactors, generators. A counter, a yard that delivers, collects and fixes, and an office. -Contact: Ola Fjellstad -Language to write in: en - -Everyone the site serves: -- door hiring: for someone who needs a machine, or has one of ours that has stopped; behind it: hire-request, breakdown -- door firms: for a firm that hires often and wants an account with us; behind it: account-request -- hire-request: a private person or a firm who needs a machine for a while - wants: the right machine, from a date, for as long as they need it. Handled by counter. Stages: open -> reserved -> out -> returned -> cancelled. -- breakdown: someone whose hired machine has stopped working - wants: it running again, or swapped, today. Handled by yard. Stages: open -> in_hand -> resolved. -- account-request: a firm that hires often - wants: to send anyone to collect, and get one invoice a month. Handled by office. Stages: open -> checked -> approved -> declined. -- damage-on-return: someone in the yard who finds damage when a machine comes back - wants: it written down before the customer has left. Handled by office. Stages: open -> invoiced -> written_off. - -The page: questions/office/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "accounts": { - "description": "", - "heading": "", - "moves": { - "checked->approved": "approved>", - "checked->declined": "declined>", - "open->checked": "checked>", - "open->declined": "declined>" - } - }, - "damage_reports": { - "description": "", - "heading": "", - "moves": { - "open->invoiced": "invoiced>", - "open->written_off": "written_off>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "buckets": { - "accounts": { - "description": "Manage firm accounts that hire regularly. See pending requests and move them through approval.", - "heading": "Firm account requests", - "moves": { - "checked->approved": "Approve", - "checked->declined": "Decline", - "open->checked": "Review", - "open->declined": "Reject" - } - }, - "damage_reports": { - "description": "Log and finalise damage found on returned machines. Record invoices or write off costs.", - "heading": "Damage on return", - "moves": { - "open->invoiced": "Invoice", - "open->written_off": "Write off" - } - } - }, - "confirm": "Save", - "description": "Handle incoming requests and cases for hire, breakdowns, accounts, and damage.", - "links": {}, - "question": "What needs attention today?" -} diff --git a/vendor/trainer/runs/hire-2026-09-22/llm/06-questions_received_account-request.yaml.md b/vendor/trainer/runs/hire-2026-09-22/llm/06-questions_received_account-request.yaml.md deleted file mode 100644 index dbd4222..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/llm/06-questions_received_account-request.yaml.md +++ /dev/null @@ -1,45 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Fjellstad Hire -About: Machine hire: mini diggers, lifts, compactors, generators. A counter, a yard that delivers, collects and fixes, and an office. -Contact: Ola Fjellstad -Language to write in: en - -Everyone the site serves: -- door hiring: for someone who needs a machine, or has one of ours that has stopped; behind it: hire-request, breakdown -- door firms: for a firm that hires often and wants an account with us; behind it: account-request -- hire-request: a private person or a firm who needs a machine for a while - wants: the right machine, from a date, for as long as they need it. Handled by counter. Stages: open -> reserved -> out -> returned -> cancelled. -- breakdown: someone whose hired machine has stopped working - wants: it running again, or swapped, today. Handled by yard. Stages: open -> in_hand -> resolved. -- account-request: a firm that hires often - wants: to send anyone to collect, and get one invoice a month. Handled by office. Stages: open -> checked -> approved -> declined. -- damage-on-return: someone in the yard who finds damage when a machine comes back - wants: it written down before the customer has left. Handled by office. Stages: open -> invoiced -> written_off. - -The page: questions/received/account-request.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to form", - "description": "We've received your request. Here is what happens next.", - "next_description": "We will review your request and get back to you within 1 business day.", - "next_heading": "Your request is with us", - "question": "What happens after I submit?" -} diff --git a/vendor/trainer/runs/hire-2026-09-22/llm/07-questions_received_breakdown.yaml.md b/vendor/trainer/runs/hire-2026-09-22/llm/07-questions_received_breakdown.yaml.md deleted file mode 100644 index 65ff5bf..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/llm/07-questions_received_breakdown.yaml.md +++ /dev/null @@ -1,45 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Fjellstad Hire -About: Machine hire: mini diggers, lifts, compactors, generators. A counter, a yard that delivers, collects and fixes, and an office. -Contact: Ola Fjellstad -Language to write in: en - -Everyone the site serves: -- door hiring: for someone who needs a machine, or has one of ours that has stopped; behind it: hire-request, breakdown -- door firms: for a firm that hires often and wants an account with us; behind it: account-request -- hire-request: a private person or a firm who needs a machine for a while - wants: the right machine, from a date, for as long as they need it. Handled by counter. Stages: open -> reserved -> out -> returned -> cancelled. -- breakdown: someone whose hired machine has stopped working - wants: it running again, or swapped, today. Handled by yard. Stages: open -> in_hand -> resolved. -- account-request: a firm that hires often - wants: to send anyone to collect, and get one invoice a month. Handled by office. Stages: open -> checked -> approved -> declined. -- damage-on-return: someone in the yard who finds damage when a machine comes back - wants: it written down before the customer has left. Handled by office. Stages: open -> invoiced -> written_off. - -The page: questions/received/breakdown.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to form", - "description": "We received your breakdown report. Here is what happens next.", - "next_description": "Our yard team will assess the machine and get it running or arrange a swap today.", - "next_heading": "We'll get your machine running", - "question": "Is the machine still at the site?" -} diff --git a/vendor/trainer/runs/hire-2026-09-22/llm/08-questions_received_hire-request.yaml.md b/vendor/trainer/runs/hire-2026-09-22/llm/08-questions_received_hire-request.yaml.md deleted file mode 100644 index ba082a9..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/llm/08-questions_received_hire-request.yaml.md +++ /dev/null @@ -1,45 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Fjellstad Hire -About: Machine hire: mini diggers, lifts, compactors, generators. A counter, a yard that delivers, collects and fixes, and an office. -Contact: Ola Fjellstad -Language to write in: en - -Everyone the site serves: -- door hiring: for someone who needs a machine, or has one of ours that has stopped; behind it: hire-request, breakdown -- door firms: for a firm that hires often and wants an account with us; behind it: account-request -- hire-request: a private person or a firm who needs a machine for a while - wants: the right machine, from a date, for as long as they need it. Handled by counter. Stages: open -> reserved -> out -> returned -> cancelled. -- breakdown: someone whose hired machine has stopped working - wants: it running again, or swapped, today. Handled by yard. Stages: open -> in_hand -> resolved. -- account-request: a firm that hires often - wants: to send anyone to collect, and get one invoice a month. Handled by office. Stages: open -> checked -> approved -> declined. -- damage-on-return: someone in the yard who finds damage when a machine comes back - wants: it written down before the customer has left. Handled by office. Stages: open -> invoiced -> written_off. - -The page: questions/received/hire-request.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to form", - "description": "Your request has been received. We will review it and get back to you.", - "next_description": "The counter will handle your request. They will check availability and confirm the machine and dates.", - "next_heading": "What happens next", - "question": "What machine and for how long do you need it?" -} diff --git a/vendor/trainer/runs/hire-2026-09-22/llm/09-questions_yard_damage-on-return-sent.yaml.md b/vendor/trainer/runs/hire-2026-09-22/llm/09-questions_yard_damage-on-return-sent.yaml.md deleted file mode 100644 index ff27c1a..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/llm/09-questions_yard_damage-on-return-sent.yaml.md +++ /dev/null @@ -1,45 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Fjellstad Hire -About: Machine hire: mini diggers, lifts, compactors, generators. A counter, a yard that delivers, collects and fixes, and an office. -Contact: Ola Fjellstad -Language to write in: en - -Everyone the site serves: -- door hiring: for someone who needs a machine, or has one of ours that has stopped; behind it: hire-request, breakdown -- door firms: for a firm that hires often and wants an account with us; behind it: account-request -- hire-request: a private person or a firm who needs a machine for a while - wants: the right machine, from a date, for as long as they need it. Handled by counter. Stages: open -> reserved -> out -> returned -> cancelled. -- breakdown: someone whose hired machine has stopped working - wants: it running again, or swapped, today. Handled by yard. Stages: open -> in_hand -> resolved. -- account-request: a firm that hires often - wants: to send anyone to collect, and get one invoice a month. Handled by office. Stages: open -> checked -> approved -> declined. -- damage-on-return: someone in the yard who finds damage when a machine comes back - wants: it written down before the customer has left. Handled by office. Stages: open -> invoiced -> written_off. - -The page: questions/yard/damage-on-return-sent.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to form", - "description": "The yard team will review the damage report and update the machine status.", - "next_description": "You will receive an invoice or credit note once the damage is classified.", - "next_heading": "Damage recorded", - "question": "What happens next?" -} diff --git a/vendor/trainer/runs/hire-2026-09-22/llm/10-questions_yard_damage-on-return.yaml.md b/vendor/trainer/runs/hire-2026-09-22/llm/10-questions_yard_damage-on-return.yaml.md deleted file mode 100644 index 56c645a..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/llm/10-questions_yard_damage-on-return.yaml.md +++ /dev/null @@ -1,57 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Fjellstad Hire -About: Machine hire: mini diggers, lifts, compactors, generators. A counter, a yard that delivers, collects and fixes, and an office. -Contact: Ola Fjellstad -Language to write in: en - -Everyone the site serves: -- door hiring: for someone who needs a machine, or has one of ours that has stopped; behind it: hire-request, breakdown -- door firms: for a firm that hires often and wants an account with us; behind it: account-request -- hire-request: a private person or a firm who needs a machine for a while - wants: the right machine, from a date, for as long as they need it. Handled by counter. Stages: open -> reserved -> out -> returned -> cancelled. -- breakdown: someone whose hired machine has stopped working - wants: it running again, or swapped, today. Handled by yard. Stages: open -> in_hand -> resolved. -- account-request: a firm that hires often - wants: to send anyone to collect, and get one invoice a month. Handled by office. Stages: open -> checked -> approved -> declined. -- damage-on-return: someone in the yard who finds damage when a machine comes back - wants: it written down before the customer has left. Handled by office. Stages: open -> invoiced -> written_off. - -The page: questions/yard/damage-on-return.yaml -It is a page only one role inside the business can open, holding one form. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "damage": "", - "hire_or_customer": "", - "machine": "" - }, - "page_description": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "button": "Submit", - "description": "Record damage found on a machine before the customer leaves.", - "form_title": "Damage on Return", - "heading": "Record damage on return", - "labels": { - "damage": "Describe the damage", - "hire_or_customer": "Your hire reference", - "machine": "Machine number" - }, - "page_description": "Log damage found when a machine is returned so it can be invoiced or written off.", - "question": "What damage was found on the machine?" -} diff --git a/vendor/trainer/runs/hire-2026-09-22/llm/11-questions_yard_index.yaml.md b/vendor/trainer/runs/hire-2026-09-22/llm/11-questions_yard_index.yaml.md deleted file mode 100644 index 7fe30e3..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/llm/11-questions_yard_index.yaml.md +++ /dev/null @@ -1,91 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Fjellstad Hire -About: Machine hire: mini diggers, lifts, compactors, generators. A counter, a yard that delivers, collects and fixes, and an office. -Contact: Ola Fjellstad -Language to write in: en - -Everyone the site serves: -- door hiring: for someone who needs a machine, or has one of ours that has stopped; behind it: hire-request, breakdown -- door firms: for a firm that hires often and wants an account with us; behind it: account-request -- hire-request: a private person or a firm who needs a machine for a while - wants: the right machine, from a date, for as long as they need it. Handled by counter. Stages: open -> reserved -> out -> returned -> cancelled. -- breakdown: someone whose hired machine has stopped working - wants: it running again, or swapped, today. Handled by yard. Stages: open -> in_hand -> resolved. -- account-request: a firm that hires often - wants: to send anyone to collect, and get one invoice a month. Handled by office. Stages: open -> checked -> approved -> declined. -- damage-on-return: someone in the yard who finds damage when a machine comes back - wants: it written down before the customer has left. Handled by office. Stages: open -> invoiced -> written_off. - -The page: questions/yard/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "breakdowns": { - "description": "", - "heading": "", - "moves": { - "in_hand->resolved": "resolved>", - "open->in_hand": "in_hand>" - } - }, - "hires": { - "description": "", - "heading": "", - "moves": { - "out->returned": "returned>", - "reserved->out": "out>" - } - } - }, - "confirm": "", - "description": "", - "links": { - "damage-on-return": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "buckets": { - "breakdowns": { - "description": "A hired machine has stopped working. Get it running or swapped today.", - "heading": "Breakdowns needing action", - "moves": { - "in_hand->resolved": "Mark fixed", - "open->in_hand": "Take in hand" - } - }, - "hires": { - "description": "Machines out on hire, from reserved to returned. Track the full hire cycle.", - "heading": "Active hire jobs", - "moves": { - "out->returned": "Mark returned", - "reserved->out": "Send out" - } - } - }, - "confirm": "Confirm move", - "description": "Manage cases from hire requests to breakdowns.", - "links": { - "damage-on-return": { - "button": "Log damage", - "description": "Record any damage found when a machine is returned, before the customer leaves.", - "heading": "Damage on return" - } - }, - "question": "What needs doing today?" -} diff --git a/vendor/trainer/runs/hire-2026-09-22/model.json b/vendor/trainer/runs/hire-2026-09-22/model.json deleted file mode 100644 index 17ac10f..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/model.json +++ /dev/null @@ -1,527 +0,0 @@ -{ - "buckets": { - "accounts": { - "desks": [ - { - "group": "office", - "moves": [ - { - "from": "checked", - "label": "Approve", - "to": "approved" - }, - { - "from": "checked", - "label": "Decline", - "to": "declined" - }, - { - "from": "open", - "label": "Review", - "to": "checked" - }, - { - "from": "open", - "label": "Reject", - "to": "declined" - } - ], - "page": "/office" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "checked": [ - "approved", - "declined" - ], - "open": [ - "checked", - "declined" - ] - } - }, - "breakdowns": { - "desks": [ - { - "group": "yard", - "moves": [ - { - "from": "in_hand", - "label": "Mark fixed", - "to": "resolved" - }, - { - "from": "open", - "label": "Take in hand", - "to": "in_hand" - } - ], - "page": "/yard" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "in_hand": [ - "resolved" - ], - "open": [ - "in_hand" - ] - } - }, - "damage_reports": { - "desks": [ - { - "group": "office", - "moves": [ - { - "from": "open", - "label": "Invoice", - "to": "invoiced" - }, - { - "from": "open", - "label": "Write off", - "to": "written_off" - } - ], - "page": "/office" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "invoiced", - "written_off" - ] - } - }, - "hires": { - "desks": [ - { - "group": "counter", - "moves": [ - { - "from": "open", - "label": "Reserve machine", - "to": "reserved" - }, - { - "from": "open", - "label": "Cancel request", - "to": "cancelled" - }, - { - "from": "out", - "label": "Cancel hire", - "to": "cancelled" - }, - { - "from": "reserved", - "label": "Cancel reservation", - "to": "cancelled" - } - ], - "page": "/counter" - }, - { - "group": "yard", - "moves": [ - { - "from": "out", - "label": "Mark returned", - "to": "returned" - }, - { - "from": "reserved", - "label": "Send out", - "to": "out" - } - ], - "page": "/yard" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "reserved", - "cancelled" - ], - "out": [ - "returned", - "cancelled" - ], - "reserved": [ - "out", - "cancelled" - ] - } - } - }, - "needs": [ - { - "done_when": [ - "returned", - "cancelled" - ], - "enters_as": null, - "handled_by": "counter", - "id": "hire-request", - "lands_in": "hires", - "steps": [ - { - "alternative": "Need a machine for a while?", - "expect": [ - "Need a machine for a while?" - ], - "fields": [], - "options": [ - { - "description": "For someone who needs a machine, or has one that has stopped. We'll help you find the right one.", - "name": "Need a machine for a while?" - }, - { - "description": "For firms that hire often. Send anyone to collect and get one invoice a month.", - "name": "Frequent hire? Set up an account" - } - ], - "page": "/", - "question": "What brings you to Fjellstad Hire today?" - }, - { - "alternative": "Hire a machine for your job", - "expect": [ - "Hire a machine for your job" - ], - "fields": [ - { - "label": "Your name", - "name": "name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Phone number", - "name": "phone", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "Machine type", - "name": "what", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "Start date", - "name": "from", - "optional": false, - "options": [], - "type": "date" - }, - { - "label": "Return date", - "name": "until", - "optional": false, - "options": [], - "type": "date" - }, - { - "label": "Delivery address", - "name": "deliver_to", - "optional": true, - "options": [], - "type": "text" - } - ], - "options": [ - { - "description": "Get the right machine on site from a start date, for as long as you need.", - "name": "Hire a machine for your job" - }, - { - "description": "Tell us about the machine that stopped, so we can fix it today.", - "name": "Machine has stopped working" - } - ], - "page": "/hiring", - "question": "What do you need from us today?" - } - ], - "success": [ - "returned" - ], - "wants": "the right machine, from a date, for as long as they need it", - "who": "a private person or a firm who needs a machine for a while" - }, - { - "done_when": [ - "resolved" - ], - "enters_as": null, - "handled_by": "yard", - "id": "breakdown", - "lands_in": "breakdowns", - "steps": [ - { - "alternative": "Need a machine for a while?", - "expect": [ - "Need a machine for a while?" - ], - "fields": [], - "options": [ - { - "description": "For someone who needs a machine, or has one that has stopped. We'll help you find the right one.", - "name": "Need a machine for a while?" - }, - { - "description": "For firms that hire often. Send anyone to collect and get one invoice a month.", - "name": "Frequent hire? Set up an account" - } - ], - "page": "/", - "question": "What brings you to Fjellstad Hire today?" - }, - { - "alternative": "Machine has stopped working", - "expect": [ - "Machine has stopped working" - ], - "fields": [ - { - "label": "Phone number", - "name": "phone", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "Machine model", - "name": "machine", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "What happened", - "name": "what_happened", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "Location", - "name": "where", - "optional": true, - "options": [], - "type": "text" - } - ], - "options": [ - { - "description": "Get the right machine on site from a start date, for as long as you need.", - "name": "Hire a machine for your job" - }, - { - "description": "Tell us about the machine that stopped, so we can fix it today.", - "name": "Machine has stopped working" - } - ], - "page": "/hiring", - "question": "What do you need from us today?" - } - ], - "success": [ - "resolved" - ], - "wants": "it running again, or swapped, today", - "who": "someone whose hired machine has stopped working" - }, - { - "done_when": [ - "approved", - "declined" - ], - "enters_as": null, - "handled_by": "office", - "id": "account-request", - "lands_in": "accounts", - "steps": [ - { - "alternative": "Frequent hire? Set up an account", - "expect": [ - "Frequent hire? Set up an account" - ], - "fields": [], - "options": [ - { - "description": "For someone who needs a machine, or has one that has stopped. We'll help you find the right one.", - "name": "Need a machine for a while?" - }, - { - "description": "For firms that hire often. Send anyone to collect and get one invoice a month.", - "name": "Frequent hire? Set up an account" - } - ], - "page": "/", - "question": "What brings you to Fjellstad Hire today?" - }, - { - "alternative": "Set up a firm account", - "expect": [ - "Set up a firm account" - ], - "fields": [ - { - "label": "Company name", - "name": "company", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Organisation number", - "name": "registration_number", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Contact person", - "name": "contact", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Phone number", - "name": "phone", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "Invoice email", - "name": "invoice_email", - "optional": true, - "options": [], - "type": "email" - } - ], - "options": [ - { - "description": "Set up a firm account to send anyone to collect and get one monthly invoice.", - "name": "Set up a firm account" - } - ], - "page": "/firms", - "question": "What do you need from us today?" - } - ], - "success": [ - "approved" - ], - "wants": "to send anyone to collect, and get one invoice a month", - "who": "a firm that hires often" - }, - { - "done_when": [ - "invoiced", - "written_off" - ], - "enters_as": "yard", - "handled_by": "office", - "id": "damage-on-return", - "lands_in": "damage_reports", - "steps": [ - { - "alternative": "Record damage on return", - "expect": [ - "Record damage on return" - ], - "fields": [ - { - "label": "Machine number", - "name": "machine", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Your hire reference", - "name": "hire_or_customer", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Describe the damage", - "name": "damage", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Record damage found on a machine before the customer leaves.", - "name": "Record damage on return" - } - ], - "page": "/yard/damage-on-return", - "question": "What damage was found on the machine?" - } - ], - "success": [ - "invoiced" - ], - "wants": "it written down before the customer has left", - "who": "someone in the yard who finds damage when a machine comes back" - } - ], - "personas": [ - { - "id": "garden-wall", - "need": "hire-request", - "text": "I'm building a stone wall in the garden and need a small digger for a weekend. I've never driven one." - }, - { - "id": "roofer-lift", - "need": "hire-request", - "text": "We're a roofing crew and need a scissor lift on site in Dalen from Monday for about two weeks." - }, - { - "id": "stuck-compactor", - "need": "breakdown", - "text": "The plate compactor I picked up this morning won't start. I've got a crew standing around." - }, - { - "id": "lift-error", - "need": "breakdown", - "text": "The lift you delivered keeps showing an error and stops halfway up. It's on our site at the school." - }, - { - "id": "landscaper-account", - "need": "account-request", - "text": "We're a landscaping firm hiring from you almost every month and I'm tired of paying by card each time. Can we get invoiced monthly?" - }, - { - "id": "builder-account", - "need": "account-request", - "text": "Small building firm, six people. We'd like to be able to send whoever is nearest to pick things up and have it on our account." - }, - { - "id": "yard-window", - "need": "damage-on-return", - "text": "The mini digger from the Berg job came back with a smashed rear window and hydraulic oil everywhere." - } - ] -} \ No newline at end of file diff --git a/vendor/trainer/runs/hire-2026-09-22/needs.yaml b/vendor/trainer/runs/hire-2026-09-22/needs.yaml deleted file mode 100644 index 865bdc6..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/needs.yaml +++ /dev/null @@ -1,100 +0,0 @@ -needs: -- also_moved_by: - - yard - done_when: - - returned - - cancelled - enters: / - handled_by: counter - id: hire-request - lands_in: hires - max_fields: 5 - max_steps: 2 - stages: - - open - - reserved - - out - - returned - - cancelled - success: - - returned - via: Need a machine for a while? - wants: the right machine, from a date, for as long as they need it - who: a private person or a firm who needs a machine for a while -- done_when: - - resolved - enters: / - handled_by: yard - id: breakdown - lands_in: breakdowns - max_fields: 3 - max_steps: 2 - stages: - - open - - in_hand - - resolved - success: - - resolved - via: Need a machine for a while? - wants: it running again, or swapped, today - who: someone whose hired machine has stopped working -- done_when: - - approved - - declined - enters: / - handled_by: office - id: account-request - lands_in: accounts - max_fields: 4 - max_steps: 2 - stages: - - open - - checked - - approved - - declined - success: - - approved - via: Frequent hire? Set up an account - wants: to send anyone to collect, and get one invoice a month - who: a firm that hires often -- done_when: - - invoiced - - written_off - enters: /yard/damage-on-return - enters_as: yard - handled_by: office - id: damage-on-return - lands_in: damage_reports - max_fields: 3 - max_steps: 1 - stages: - - open - - invoiced - - written_off - success: - - invoiced - via: Record damage on return - wants: it written down before the customer has left - who: someone in the yard who finds damage when a machine comes back -personas: -- id: garden-wall - need: hire-request - text: I'm building a stone wall in the garden and need a small digger for a weekend. I've never driven one. -- id: roofer-lift - need: hire-request - text: We're a roofing crew and need a scissor lift on site in Dalen from Monday for about two weeks. -- id: stuck-compactor - need: breakdown - text: The plate compactor I picked up this morning won't start. I've got a crew standing around. -- id: lift-error - need: breakdown - text: The lift you delivered keeps showing an error and stops halfway up. It's on our site at the school. -- id: landscaper-account - need: account-request - text: We're a landscaping firm hiring from you almost every month and I'm tired of paying by card each time. Can we get invoiced monthly? -- id: builder-account - need: account-request - text: Small building firm, six people. We'd like to be able to send whoever is nearest to pick things up and have it on our account. -- id: yard-window - need: damage-on-return - text: The mini digger from the Berg job came back with a smashed rear window and hydraulic oil everywhere. diff --git a/vendor/trainer/runs/hire-2026-09-22/questions/counter/_section.yaml b/vendor/trainer/runs/hire-2026-09-22/questions/counter/_section.yaml deleted file mode 100644 index 107735a..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/questions/counter/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: counter diff --git a/vendor/trainer/runs/hire-2026-09-22/questions/counter/index.yaml b/vendor/trainer/runs/hire-2026-09-22/questions/counter/index.yaml deleted file mode 100644 index 345d1b2..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/questions/counter/index.yaml +++ /dev/null @@ -1,32 +0,0 @@ -alternatives: -- action: /counter - consequence: - - Confirm - description: Track hire requests from open to returned, and handle cancellations. - features: - - description: '' - name: '' - resource: - requires_group: counter - source: - bucket: hires - kind: kv - transitions: - - from: open - label: Reserve machine - to: reserved - - from: open - label: Cancel request - to: cancelled - - from: out - label: Cancel hire - to: cancelled - - from: reserved - label: Cancel reservation - to: cancelled - name: Manage hire requests -description: Your desk to manage machine hires and track their progress through each stage. -name: What case do you need to work on? -responsible: - contact: ola@fjellstadhire.example - name: Ola Fjellstad diff --git a/vendor/trainer/runs/hire-2026-09-22/questions/firms/index.yaml b/vendor/trainer/runs/hire-2026-09-22/questions/firms/index.yaml deleted file mode 100644 index a273fef..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/questions/firms/index.yaml +++ /dev/null @@ -1,31 +0,0 @@ -alternatives: -- action: /received/account-request - consequence: - - Start account - description: Set up a firm account to send anyone to collect and get one monthly invoice. - features: - - name: Firm account details - requirements: - - label: Company name - name: company - type: text - - label: Organisation number - name: registration_number - type: text - - label: Contact person - name: contact - type: text - - label: Phone number - name: phone - type: tel - - label: Invoice email - name: invoice_email - optional: true - type: email - name: Set up a firm account - record_as: accounts -description: Choose the path that fits how you work with us. -name: What do you need from us today? -responsible: - contact: ola@fjellstadhire.example - name: Ola Fjellstad diff --git a/vendor/trainer/runs/hire-2026-09-22/questions/hiring/index.yaml b/vendor/trainer/runs/hire-2026-09-22/questions/hiring/index.yaml deleted file mode 100644 index 500e03a..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/questions/hiring/index.yaml +++ /dev/null @@ -1,56 +0,0 @@ -alternatives: -- action: /received/hire-request - consequence: - - Hire a machine - description: Get the right machine on site from a start date, for as long as you need. - features: - - name: Request machine hire - requirements: - - label: Your name - name: name - type: text - - label: Phone number - name: phone - type: tel - - label: Machine type - name: what - type: textarea - - label: Start date - name: from - type: date - - label: Return date - name: until - type: date - - label: Delivery address - name: deliver_to - optional: true - type: text - name: Hire a machine for your job - record_as: hires -- action: /received/breakdown - consequence: - - Report breakdown - description: Tell us about the machine that stopped, so we can fix it today. - features: - - name: Report machine breakdown - requirements: - - label: Phone number - name: phone - type: tel - - label: Machine model - name: machine - type: text - - label: What happened - name: what_happened - type: textarea - - label: Location - name: where - optional: true - type: text - name: Machine has stopped working - record_as: breakdowns -description: Find the right machine or report a breakdown. Pick what you need below. -name: What do you need from us today? -responsible: - contact: ola@fjellstadhire.example - name: Ola Fjellstad diff --git a/vendor/trainer/runs/hire-2026-09-22/questions/index.yaml b/vendor/trainer/runs/hire-2026-09-22/questions/index.yaml deleted file mode 100644 index 1a35d42..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/questions/index.yaml +++ /dev/null @@ -1,16 +0,0 @@ -alternatives: -- action: /hiring - consequence: - - Hire a machine - description: For someone who needs a machine, or has one that has stopped. We'll help you find the right one. - name: Need a machine for a while? -- action: /firms - consequence: - - Get an account - description: For firms that hire often. Send anyone to collect and get one invoice a month. - name: Frequent hire? Set up an account -description: Tell us what you need, and we'll guide you to the right solution. -name: What brings you to Fjellstad Hire today? -responsible: - contact: ola@fjellstadhire.example - name: Ola Fjellstad diff --git a/vendor/trainer/runs/hire-2026-09-22/questions/office/_section.yaml b/vendor/trainer/runs/hire-2026-09-22/questions/office/_section.yaml deleted file mode 100644 index f981f8f..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/questions/office/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: office diff --git a/vendor/trainer/runs/hire-2026-09-22/questions/office/index.yaml b/vendor/trainer/runs/hire-2026-09-22/questions/office/index.yaml deleted file mode 100644 index 52346a1..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/questions/office/index.yaml +++ /dev/null @@ -1,52 +0,0 @@ -alternatives: -- action: /office - consequence: - - Save - description: Manage firm accounts that hire regularly. See pending requests and move them through approval. - features: - - description: '' - name: '' - resource: - requires_group: office - source: - bucket: accounts - kind: kv - transitions: - - from: checked - label: Approve - to: approved - - from: checked - label: Decline - to: declined - - from: open - label: Review - to: checked - - from: open - label: Reject - to: declined - name: Firm account requests -- action: /office - consequence: - - Save - description: Log and finalise damage found on returned machines. Record invoices or write off costs. - features: - - description: '' - name: '' - resource: - requires_group: office - source: - bucket: damage_reports - kind: kv - transitions: - - from: open - label: Invoice - to: invoiced - - from: open - label: Write off - to: written_off - name: Damage on return -description: Handle incoming requests and cases for hire, breakdowns, accounts, and damage. -name: What needs attention today? -responsible: - contact: ola@fjellstadhire.example - name: Ola Fjellstad diff --git a/vendor/trainer/runs/hire-2026-09-22/questions/received/account-request.yaml b/vendor/trainer/runs/hire-2026-09-22/questions/received/account-request.yaml deleted file mode 100644 index d70e433..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/questions/received/account-request.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: We will review your request and get back to you within 1 business day. - name: Your request is with us -- action: / - consequence: - - Back to form - description: '' - name: Back to form -description: We've received your request. Here is what happens next. -name: What happens after I submit? diff --git a/vendor/trainer/runs/hire-2026-09-22/questions/received/breakdown.yaml b/vendor/trainer/runs/hire-2026-09-22/questions/received/breakdown.yaml deleted file mode 100644 index 693486f..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/questions/received/breakdown.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Our yard team will assess the machine and get it running or arrange a swap today. - name: We'll get your machine running -- action: / - consequence: - - Back to form - description: '' - name: Back to form -description: We received your breakdown report. Here is what happens next. -name: Is the machine still at the site? diff --git a/vendor/trainer/runs/hire-2026-09-22/questions/received/hire-request.yaml b/vendor/trainer/runs/hire-2026-09-22/questions/received/hire-request.yaml deleted file mode 100644 index 0de8e52..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/questions/received/hire-request.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: The counter will handle your request. They will check availability and confirm the machine and dates. - name: What happens next -- action: / - consequence: - - Back to form - description: '' - name: Back to form -description: Your request has been received. We will review it and get back to you. -name: What machine and for how long do you need it? diff --git a/vendor/trainer/runs/hire-2026-09-22/questions/yard/_section.yaml b/vendor/trainer/runs/hire-2026-09-22/questions/yard/_section.yaml deleted file mode 100644 index 52af849..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/questions/yard/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: yard diff --git a/vendor/trainer/runs/hire-2026-09-22/questions/yard/damage-on-return-sent.yaml b/vendor/trainer/runs/hire-2026-09-22/questions/yard/damage-on-return-sent.yaml deleted file mode 100644 index 548ab4d..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/questions/yard/damage-on-return-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: You will receive an invoice or credit note once the damage is classified. - name: Damage recorded -- action: /yard - consequence: - - Back to form - description: '' - name: Back to form -description: The yard team will review the damage report and update the machine status. -name: What happens next? diff --git a/vendor/trainer/runs/hire-2026-09-22/questions/yard/damage-on-return.yaml b/vendor/trainer/runs/hire-2026-09-22/questions/yard/damage-on-return.yaml deleted file mode 100644 index d83cf43..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/questions/yard/damage-on-return.yaml +++ /dev/null @@ -1,25 +0,0 @@ -alternatives: -- action: /yard/damage-on-return-sent - consequence: - - Submit - description: Record damage found on a machine before the customer leaves. - features: - - name: Damage on Return - requirements: - - label: Machine number - name: machine - type: text - - label: Your hire reference - name: hire_or_customer - type: text - - label: Describe the damage - name: damage - type: textarea - name: Record damage on return - record_as: damage_reports -description: Log damage found when a machine is returned so it can be invoiced or written off. -followup: false -name: What damage was found on the machine? -responsible: - contact: ola@fjellstadhire.example - name: Ola Fjellstad diff --git a/vendor/trainer/runs/hire-2026-09-22/questions/yard/index.yaml b/vendor/trainer/runs/hire-2026-09-22/questions/yard/index.yaml deleted file mode 100644 index 4c6ec4b..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/questions/yard/index.yaml +++ /dev/null @@ -1,51 +0,0 @@ -alternatives: -- action: /yard - consequence: - - Confirm move - description: A hired machine has stopped working. Get it running or swapped today. - features: - - description: '' - name: '' - resource: - requires_group: yard - source: - bucket: breakdowns - kind: kv - transitions: - - from: in_hand - label: Mark fixed - to: resolved - - from: open - label: Take in hand - to: in_hand - name: Breakdowns needing action -- action: /yard - consequence: - - Confirm move - description: Machines out on hire, from reserved to returned. Track the full hire cycle. - features: - - description: '' - name: '' - resource: - requires_group: yard - source: - bucket: hires - kind: kv - transitions: - - from: out - label: Mark returned - to: returned - - from: reserved - label: Send out - to: out - name: Active hire jobs -- action: /yard/damage-on-return - consequence: - - Log damage - description: Record any damage found when a machine is returned, before the customer leaves. - name: Damage on return -description: Manage cases from hire requests to breakdowns. -name: What needs doing today? -responsible: - contact: ola@fjellstadhire.example - name: Ola Fjellstad diff --git a/vendor/trainer/runs/hire-2026-09-22/rate.json b/vendor/trainer/runs/hire-2026-09-22/rate.json deleted file mode 100644 index a2faf49..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/rate.json +++ /dev/null @@ -1,162 +0,0 @@ -{ - "account-request": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 22.834146341463416, - "options": 2, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 29.254545454545454, - "options": 1, - "overloaded": false, - "page": "/firms", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "breakdown": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 22.834146341463416, - "options": 2, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 24.8494623655914, - "options": 2, - "overloaded": false, - "page": "/hiring", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "damage-on-return": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 27.02906976744186, - "options": 1, - "overloaded": false, - "page": "/yard/damage-on-return", - "personas": 1, - "required_fields": 3, - "understanding": { - "asked": 1, - "next": 1, - "which": 1 - } - } - ], - "steps": 1 - }, - "hire-request": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 22.834146341463416, - "options": 2, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 24.58008658008658, - "options": 2, - "overloaded": false, - "page": "/hiring", - "personas": 2, - "required_fields": 5, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/hire-2026-09-22/rate.txt b/vendor/trainer/runs/hire-2026-09-22/rate.txt deleted file mode 100644 index a73445d..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/rate.txt +++ /dev/null @@ -1,8 +0,0 @@ -need LIX which asked next gutted twin says page load -hire-request @/ 23 very easy 2/2 0/2 - 0/0/- ok 2 options, 0 required -hire-request @/hiring 25 very easy 2/2 2/2 2/2 0/0/0 ok 2 options, 5 required -breakdown @/ 23 very easy 2/2 0/2 - 0/0/- ok 2 options, 0 required -breakdown @/hiring 25 very easy 2/2 2/2 2/2 0/0/0 ok 2 options, 3 required -account-request @/ 23 very easy 2/2 0/2 - 0/0/- ok 2 options, 0 required -account-request @/firms 29 very easy 2/2 2/2 2/2 0/0/0 ok 1 options, 4 required -damage-on-return 27 very easy 1/1 1/1 1/1 0/0/0 ok 1 options, 3 required diff --git a/vendor/trainer/runs/hire-2026-09-22/score-full.txt b/vendor/trainer/runs/hire-2026-09-22/score-full.txt deleted file mode 100644 index 15d307d..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/score-full.txt +++ /dev/null @@ -1 +0,0 @@ -wording: 10/10 routed right (100%) diff --git a/vendor/trainer/runs/hire-2026-09-22/score-skim.txt b/vendor/trainer/runs/hire-2026-09-22/score-skim.txt deleted file mode 100644 index 15d307d..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/score-skim.txt +++ /dev/null @@ -1 +0,0 @@ -wording: 10/10 routed right (100%) diff --git a/vendor/trainer/runs/hire-2026-09-22/site.yaml b/vendor/trainer/runs/hire-2026-09-22/site.yaml deleted file mode 100644 index 717f383..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/site.yaml +++ /dev/null @@ -1,2 +0,0 @@ -lang: en -title: Fjellstad Hire diff --git a/vendor/trainer/runs/hire-2026-09-22/tasks-full.jsonl b/vendor/trainer/runs/hire-2026-09-22/tasks-full.jsonl deleted file mode 100644 index b679fc9..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/tasks-full.jsonl +++ /dev/null @@ -1,10 +0,0 @@ -{"id":"garden-wall@/","persona":"garden-wall","need":"hire-request","page":"/","state":{"body":"I'm building a stone wall in the garden and need a small digger for a weekend. I've never driven one."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Fjellstad Hire today?\". Which alternative do they choose?","criteria":{"Frequent hire? Set up an account":"For firms that hire often. Send anyone to collect and get one invoice a month.","Need a machine for a while?":"For someone who needs a machine, or has one that has stopped. We'll help you find the right one."}}},"expect":["Need a machine for a while?"]} -{"id":"garden-wall@/hiring","persona":"garden-wall","need":"hire-request","page":"/hiring","state":{"body":"I'm building a stone wall in the garden and need a small digger for a weekend. I've never driven one."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need from us today?\". Which alternative do they choose?","criteria":{"Hire a machine for your job":"Get the right machine on site from a start date, for as long as you need.","Machine has stopped working":"Tell us about the machine that stopped, so we can fix it today."}}},"expect":["Hire a machine for your job"]} -{"id":"roofer-lift@/","persona":"roofer-lift","need":"hire-request","page":"/","state":{"body":"We're a roofing crew and need a scissor lift on site in Dalen from Monday for about two weeks."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Fjellstad Hire today?\". Which alternative do they choose?","criteria":{"Frequent hire? Set up an account":"For firms that hire often. Send anyone to collect and get one invoice a month.","Need a machine for a while?":"For someone who needs a machine, or has one that has stopped. We'll help you find the right one."}}},"expect":["Need a machine for a while?"]} -{"id":"roofer-lift@/hiring","persona":"roofer-lift","need":"hire-request","page":"/hiring","state":{"body":"We're a roofing crew and need a scissor lift on site in Dalen from Monday for about two weeks."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need from us today?\". Which alternative do they choose?","criteria":{"Hire a machine for your job":"Get the right machine on site from a start date, for as long as you need.","Machine has stopped working":"Tell us about the machine that stopped, so we can fix it today."}}},"expect":["Hire a machine for your job"]} -{"id":"stuck-compactor@/","persona":"stuck-compactor","need":"breakdown","page":"/","state":{"body":"The plate compactor I picked up this morning won't start. I've got a crew standing around."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Fjellstad Hire today?\". Which alternative do they choose?","criteria":{"Frequent hire? Set up an account":"For firms that hire often. Send anyone to collect and get one invoice a month.","Need a machine for a while?":"For someone who needs a machine, or has one that has stopped. We'll help you find the right one."}}},"expect":["Need a machine for a while?"]} -{"id":"stuck-compactor@/hiring","persona":"stuck-compactor","need":"breakdown","page":"/hiring","state":{"body":"The plate compactor I picked up this morning won't start. I've got a crew standing around."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need from us today?\". Which alternative do they choose?","criteria":{"Hire a machine for your job":"Get the right machine on site from a start date, for as long as you need.","Machine has stopped working":"Tell us about the machine that stopped, so we can fix it today."}}},"expect":["Machine has stopped working"]} -{"id":"lift-error@/","persona":"lift-error","need":"breakdown","page":"/","state":{"body":"The lift you delivered keeps showing an error and stops halfway up. It's on our site at the school."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Fjellstad Hire today?\". Which alternative do they choose?","criteria":{"Frequent hire? Set up an account":"For firms that hire often. Send anyone to collect and get one invoice a month.","Need a machine for a while?":"For someone who needs a machine, or has one that has stopped. We'll help you find the right one."}}},"expect":["Need a machine for a while?"]} -{"id":"lift-error@/hiring","persona":"lift-error","need":"breakdown","page":"/hiring","state":{"body":"The lift you delivered keeps showing an error and stops halfway up. It's on our site at the school."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need from us today?\". Which alternative do they choose?","criteria":{"Hire a machine for your job":"Get the right machine on site from a start date, for as long as you need.","Machine has stopped working":"Tell us about the machine that stopped, so we can fix it today."}}},"expect":["Machine has stopped working"]} -{"id":"landscaper-account@/","persona":"landscaper-account","need":"account-request","page":"/","state":{"body":"We're a landscaping firm hiring from you almost every month and I'm tired of paying by card each time. Can we get invoiced monthly?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Fjellstad Hire today?\". Which alternative do they choose?","criteria":{"Frequent hire? Set up an account":"For firms that hire often. Send anyone to collect and get one invoice a month.","Need a machine for a while?":"For someone who needs a machine, or has one that has stopped. We'll help you find the right one."}}},"expect":["Frequent hire? Set up an account"]} -{"id":"builder-account@/","persona":"builder-account","need":"account-request","page":"/","state":{"body":"Small building firm, six people. We'd like to be able to send whoever is nearest to pick things up and have it on our account."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Fjellstad Hire today?\". Which alternative do they choose?","criteria":{"Frequent hire? Set up an account":"For firms that hire often. Send anyone to collect and get one invoice a month.","Need a machine for a while?":"For someone who needs a machine, or has one that has stopped. We'll help you find the right one."}}},"expect":["Frequent hire? Set up an account"]} diff --git a/vendor/trainer/runs/hire-2026-09-22/tasks-skim.jsonl b/vendor/trainer/runs/hire-2026-09-22/tasks-skim.jsonl deleted file mode 100644 index 48531c6..0000000 --- a/vendor/trainer/runs/hire-2026-09-22/tasks-skim.jsonl +++ /dev/null @@ -1,10 +0,0 @@ -{"id":"garden-wall@/","persona":"garden-wall","need":"hire-request","page":"/","state":{"body":"I'm building a stone wall in the garden and need a small digger for a weekend. I've never driven one."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Fjellstad Hire today?\". Which alternative do they choose?","criteria":{"Frequent hire? Set up an account":"Frequent hire? Set up an account","Need a machine for a while?":"Need a machine for a while?"}}},"expect":["Need a machine for a while?"]} -{"id":"garden-wall@/hiring","persona":"garden-wall","need":"hire-request","page":"/hiring","state":{"body":"I'm building a stone wall in the garden and need a small digger for a weekend. I've never driven one."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need from us today?\". Which alternative do they choose?","criteria":{"Hire a machine for your job":"Hire a machine for your job","Machine has stopped working":"Machine has stopped working"}}},"expect":["Hire a machine for your job"]} -{"id":"roofer-lift@/","persona":"roofer-lift","need":"hire-request","page":"/","state":{"body":"We're a roofing crew and need a scissor lift on site in Dalen from Monday for about two weeks."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Fjellstad Hire today?\". Which alternative do they choose?","criteria":{"Frequent hire? Set up an account":"Frequent hire? Set up an account","Need a machine for a while?":"Need a machine for a while?"}}},"expect":["Need a machine for a while?"]} -{"id":"roofer-lift@/hiring","persona":"roofer-lift","need":"hire-request","page":"/hiring","state":{"body":"We're a roofing crew and need a scissor lift on site in Dalen from Monday for about two weeks."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need from us today?\". Which alternative do they choose?","criteria":{"Hire a machine for your job":"Hire a machine for your job","Machine has stopped working":"Machine has stopped working"}}},"expect":["Hire a machine for your job"]} -{"id":"stuck-compactor@/","persona":"stuck-compactor","need":"breakdown","page":"/","state":{"body":"The plate compactor I picked up this morning won't start. I've got a crew standing around."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Fjellstad Hire today?\". Which alternative do they choose?","criteria":{"Frequent hire? Set up an account":"Frequent hire? Set up an account","Need a machine for a while?":"Need a machine for a while?"}}},"expect":["Need a machine for a while?"]} -{"id":"stuck-compactor@/hiring","persona":"stuck-compactor","need":"breakdown","page":"/hiring","state":{"body":"The plate compactor I picked up this morning won't start. I've got a crew standing around."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need from us today?\". Which alternative do they choose?","criteria":{"Hire a machine for your job":"Hire a machine for your job","Machine has stopped working":"Machine has stopped working"}}},"expect":["Machine has stopped working"]} -{"id":"lift-error@/","persona":"lift-error","need":"breakdown","page":"/","state":{"body":"The lift you delivered keeps showing an error and stops halfway up. It's on our site at the school."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Fjellstad Hire today?\". Which alternative do they choose?","criteria":{"Frequent hire? Set up an account":"Frequent hire? Set up an account","Need a machine for a while?":"Need a machine for a while?"}}},"expect":["Need a machine for a while?"]} -{"id":"lift-error@/hiring","persona":"lift-error","need":"breakdown","page":"/hiring","state":{"body":"The lift you delivered keeps showing an error and stops halfway up. It's on our site at the school."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need from us today?\". Which alternative do they choose?","criteria":{"Hire a machine for your job":"Hire a machine for your job","Machine has stopped working":"Machine has stopped working"}}},"expect":["Machine has stopped working"]} -{"id":"landscaper-account@/","persona":"landscaper-account","need":"account-request","page":"/","state":{"body":"We're a landscaping firm hiring from you almost every month and I'm tired of paying by card each time. Can we get invoiced monthly?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Fjellstad Hire today?\". Which alternative do they choose?","criteria":{"Frequent hire? Set up an account":"Frequent hire? Set up an account","Need a machine for a while?":"Need a machine for a while?"}}},"expect":["Frequent hire? Set up an account"]} -{"id":"builder-account@/","persona":"builder-account","need":"account-request","page":"/","state":{"body":"Small building firm, six people. We'd like to be able to send whoever is nearest to pick things up and have it on our account."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you to Fjellstad Hire today?\". Which alternative do they choose?","criteria":{"Frequent hire? Set up an account":"Frequent hire? Set up an account","Need a machine for a while?":"Need a machine for a while?"}}},"expect":["Frequent hire? Set up an account"]} diff --git a/vendor/trainer/runs/permits-2026-09-25/README.md b/vendor/trainer/runs/permits-2026-09-25/README.md deleted file mode 100644 index 3e36e11..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/README.md +++ /dev/null @@ -1,240 +0,0 @@ -# Vestmark kommune - Building and Planning, 2026-09-25 - -The hardest sector the trainer has been given, chosen to find where -portal stops rather than to flatter it: a municipal building authority. -Applications that pause and resume, a decision no case officer may sign, -a group outside the building that moves records and nothing else, -objections that belong to other cases, a six-week deadline nobody -presses a button for, and an appeal that reopens something already -finished. - -Built with no model in the loop: the words are the builder's own -fallbacks. What is measured here is the machinery, not the prose. - -- plan: `plans/building-permits.yaml` (14 needs, 7 groups, 12 buckets) -- intake: `intakes/building-permits.yaml` -- 41 questions, 14 aggregates, 198 access rules, 14 needs structurally met - -## What was proved - -`iris replay` runs cases through portal's own `answers::store_answer` -and `aggregates::transition`, against a throwaway JetStream in docker - -the same code the running site uses, with its event log and its refusal -of undeclared moves. Fifteen cases, each one a path a real building case -walks (`cases.jsonl`). - -| | transitions accepted | refused by the engine | -|---|---|---| -| as first built | 36 | **3, all of them legal paths** | -| hand-corrected `aggregates.yaml` | 45 | 2, both of them illegal paths | -| rebuilt from the plan, after the fix | 45 | 2, both of them illegal paths | - -The three refusals in the first row were the sector, not the site: - - REFUSED: asked-twice -> incomplete (complete -> incomplete) - REFUSED: hearing-sent-it-back -> incomplete (on_hearing -> incomplete) - REFUSED: we-changed-our-mind -> changed_by_us (reconsidered -> changed_by_us) - -and meanwhile the engine happily accepted `open -> refused` (refusing an -application on the day it arrives, before anyone has read it) and -`open -> overturned` (the appeals board overturning a case that never -reached them). - -**Portal's aggregate engine needed no change at all.** Hand-writing the -correct graph into `aggregates.yaml` - a cycle back to `incomplete`, -twice, and a success state reachable from the middle of the line - was -accepted as-is and enforced exactly. The whole gap was in the trainer's -plan language, which could only describe a line that goes forward. - -## What was fixed in the trainer - -**`reached_from`** (`src/build.rs`). Where a stage is entered from, when -the line does not say it: - -```yaml -reached_from: - incomplete: [open, complete, on_hearing] # sent back for papers - refused: [complete, on_hearing, recommended] # never on arrival -``` - -A stage named there is entered from exactly those stages and nowhere -else, so saying where a refusal may come from also says where it may -not. It covers both of the sector's shapes - a case sent back to a stage -it was already past, and a good ending partway along - and it subsumes -`turned_down_from`, which was one list for every bad end at once and so -could not say that an applicant may withdraw from anywhere while the -authority may refuse only once the papers are in. The rebuilt site now -produces exactly the hand-corrected graph, and the access policy follows -it: `section_head` gets `complete -> refused` and no longer -`open -> refused`; `appeals_board` gets only `before_the_board -> upheld` -and `-> overturned`. - -**The public-view rule is now per bucket, not per need.** A permit -register holds the owner's small application and the approved firm's -large one, and is one page either way; the old rule refused to publish -a bucket the moment any role filed into it, which made "nobody outside -this building can see a case" - the intake's own complaint - unfixable. -A bucket only a role ever writes to is still refused, and that is why -the hearing register here is internal. - -## What portal cannot do yet - -Each of these is a change **proposed, not made**. They are ordered by -how much this sector needed them. - -### 1. A submitter may only act while the record is untouched - -`src/access.rs:223` pins a `self_transition`'s from-state to `open`: - -```rust -if let Some(st) = &alt.self_transition { - let from = crate::answers::OPEN_STATE; -``` - -The runtime is already general - `self_transition_answer` passes the -record's actual state as `context.from` and asks the policy - so this is -the compiler alone. The effect is that the applicant who is written to -for a missing drawing cannot send it: `incomplete -> complete` is in the -machine and in the plan, and the policy never emits it. Everything about -staying in dialogue with a person across a case dies here. - -*Proposed:* `self_transition` takes an optional `from: [state, ...]`, -defaulting to `[open]`; `access.rs` emits one rule per from-state, and -the lint checks each named state exists and that `from -> to` is -declared in the bucket's schema. The trainer already computes the set -(`moves_of(need, SUBMITTER)`) and would just write it down. - -### 2. A record cannot belong to another record - -An objection belongs to an application. An exemption rides on one. An -appeal is against a decision; an inspection is of a case; a hearing -answer answers a hearing request. Six of this site's twelve buckets hold -records that are *about* a record in another bucket, and the only thing -joining them is a `case_number` the person types in from a letter, which -nothing validates, nothing resolves, and nothing can list. - -This is the largest structural gap, and it is why the case officer here -still cannot be shown "this application and its four objections" on one -page - the thing the intake asks for twice. - -*Proposed:* a field `type: record` with `of: `, storing a record -id, validated by the lint against the bucket and at submission against -the store; the parent's desk row then offers its children, and a public -case page can be assembled from the parent plus everything pointing at -it. This is a real piece of work and should be its own release, not a -rider. - -### 3. Nothing moves a stage except a person - -`attended_by` lets a plan *document* a stage no desk button moves - here, -the hearing's six weeks - but nothing actually moves it. The record sits -in `open` until someone notices. The intake names this as its number one -problem: "the twelve-week clock, and the fact that stopping it and -starting it again is done by hand in a spreadsheet." - -*Proposed:* a state in `aggregates.yaml` may carry `after: { days: 42, -to: no_answer }` beside its `event:` and `mail:`, and something with a -timer fires it. gdo already holds a durable consumer, already reads -content, and already sends what a state tells it to - this is the same -shape as `mail:`, one field along. - -### 4. A public view publishes the whole bucket - -`watched_by: [public]` opens every record in the bucket, including the -ones that were refused and withdrawn. For a permit register that is -roughly right and for a register of firms it is not, which is why -`firm-approval` here is not public though the list of approved firms -genuinely is. - -*Proposed:* `public: { states: [...] }` on a bucket resource. - -### 5. A need whose success is a membership cannot say so - -`firm-approval` ending in `approved` is exactly what makes a firm a -member of `approved_firms`, and therefore what lets it file a -`permit-application` at all. Today somebody invites by hand afterwards. - -*Proposed:* `grants: ` on a state, next to `mail:`, using the -invite machinery that already exists. - -## Also found - -- The planner (`portal-trainer plan`) fails with `exited with exit status: 1` - whenever `ANTHROPIC_API_KEY` is set to anything the nested CLI rejects. - `--llm 'env -u ANTHROPIC_API_KEY claude -p'` is the fix. This plan was - written by hand, so the planner has not yet been asked to produce - anything this size. -- Two needs sharing a bucket emit the submitter's rule twice; harmless, - but the access listing has duplicate rows. - -## Reproducing - -```sh -docker run -d --rm --name iris-replay -p 127.0.0.1:14222:4222 nats:2.14.6-alpine -js -portal-trainer build --plan plans/building-permits.yaml --out runs/permits-2026-09-25 --lint iris -cd runs/permits-2026-09-25 -iris check --path questions --access -iris replay --path questions --nats nats://127.0.0.1:14222 --cases cases.jsonl -``` - -`fixed/` holds the hand-corrected `aggregates.yaml` from before the -trainer could produce it, kept as the proof that portal's engine was -never the thing in the way. Point replay at a throwaway NATS, never a -site's own: it writes. - -## Routing: one stable failure, and a leak that turned out not to cost anything - -Twenty-five routing tasks, three seeds, qwen3:8b as the visitor, with -the builder's own fallback wording and no model having touched the -prose: - - seed 1: 18/25 (72%) seed 2: 20/25 (80%) seed 3: 22/25 (88%) - -A sixteen-point spread is wider than this harness's usual floor, so the -misroutes were counted per task rather than per run. One fails in every -seed: - -- **`shop-to-flats@/want-to-build`** (3 of 3), and `garage-owner` the - same way (2 of 3): someone who wants to sit down with us before - paying an architect picks "permission to build it" instead. The - pre-application meeting does not read as distinguishable from - applying. A wording fault on the door page, and the kind a wording - round exists to fix. - -Everything else failed once - but the *shape* was not random. Of the -eight front-door misroutes across all three seeds, **six went to one -card**: a neighbour who got a notice, an owner asking for a completion -certificate and someone reporting a building behind a fence all picked -"the decision looked at again, by us and then by the board". - -The front door held two doors and two bare needs - "Want to build", -"Building near me", the appeal, and firm approval. A door is an -abstract category; a bare need is a concrete sentence, and the concrete -sentence was out-pulling the categories, collecting everyone with any -sort of grievance whatever it was about. - -So the obvious fix was measured: four doors, nothing bare, everything -on the front door at the same level (`runs/permits-doors-2026-09-25`). - -| | seed 1 | seed 2 | seed 3 | mean | -|---|---|---|---|---| -| two doors, two bare needs | 72% | 80% | 88% | **80.0%** | -| four doors | 76% | 72% | 84% | 77.3% | - -**The rewrite does not beat the spread, and is rejected.** The -diagnosis was right and the fix was still not worth making: with four -doors the appeal card stopped collecting misroutes completely - 0 of 10, -down from 6 of 8 - and the site got no better, because two offers went -from findable to hidden. `firm-insurance-lapsed` ("our certificate has -expired, we have renewed it, here it is") found "to be on the list, and -then to file without asking again" when it was a sentence on the front -door, and fails 3 of 3 once it is behind a door called "Work as a -firm". `owner-explains` got worse the same way. - -What that says, as a measurement rather than a taste: a concrete offer -standing among categories does leak, and hiding it costs more than the -leak. The earlier finding - four doors beat ten offers, six offers beat -doors - was about how many things a page holds. This one is about what -a door costs the person who was going to pick correctly: one more page -between them and the only thing they came for. The mixed front door -stays. diff --git a/vendor/trainer/runs/permits-2026-09-25/aggregates.yaml b/vendor/trainer/runs/permits-2026-09-25/aggregates.yaml deleted file mode 100644 index e65dd76..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/aggregates.yaml +++ /dev/null @@ -1,653 +0,0 @@ -aggregates: -- bucket: appeals - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about the decision looked at again, by us and then by the board. - - What you can do next: {site}/decide/appeal?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - reconsidered: - event: reconsidered - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Reconsidered' - body: |- - Hello, - - What you sent about the decision looked at again, by us and then by the board is now we are looking at it again. - - What you can do next: {site}/decide/appeal?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - changed_by_us: - event: changed_by_us - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Changed by us' - body: |- - Hello, - - What you sent about the decision looked at again, by us and then by the board is now we changed our own decision. - - Solveig Hauge at byggesak@vestmark.example - before_the_board: - event: before_the_board - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Before the board' - body: |- - Hello, - - What you sent about the decision looked at again, by us and then by the board is now with the appeals board. - - What you can do next: {site}/decide/appeal?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - upheld: - event: upheld - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Upheld' - body: |- - Hello, - - What you sent about the decision looked at again, by us and then by the board is now the board kept our decision. - - Solveig Hauge at byggesak@vestmark.example - overturned: - event: overturned - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Overturned' - body: |- - Hello, - - What you sent about the decision looked at again, by us and then by the board is now the board overturned us. - - Solveig Hauge at byggesak@vestmark.example - withdrawn: - event: withdrawn - transitions: - before_the_board: - - withdrawn - - overturned - - upheld - open: - - reconsidered - - withdrawn - reconsidered: - - before_the_board - - withdrawn - - changed_by_us -- bucket: applications - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about permission to build it, and to know where the case stands. - - What you can do next: {site}/decide/small-works-application?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - incomplete: - event: incomplete - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Incomplete' - body: |- - Hello, - - What you sent about permission to build it, and to know where the case stands is now papers missing. - - What you can do next: {site}/decide/small-works-application?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - complete: - event: complete - on_hearing: - event: on_hearing - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: On hearing' - body: |- - Hello, - - What you sent about permission to build it, and to know where the case stands is now out to the neighbours and the agencies. - - What you can do next: {site}/decide/small-works-application?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - recommended: - event: recommended - approved: - event: approved - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Approved' - body: |- - Hello, - - What you sent about permission to build it, and to know where the case stands is now approved. - - Solveig Hauge at byggesak@vestmark.example - approved_with_conditions: - event: approved_with_conditions - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Approved with conditions' - body: |- - Hello, - - What you sent about permission to build it, and to know where the case stands is now approved on conditions. - - Solveig Hauge at byggesak@vestmark.example - refused: - event: refused - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Refused' - body: |- - Hello, - - What you sent about permission to build it, and to know where the case stands is now refused. - - Solveig Hauge at byggesak@vestmark.example - withdrawn: - event: withdrawn - transitions: - complete: - - on_hearing - - withdrawn - - incomplete - - refused - incomplete: - - complete - - withdrawn - on_hearing: - - recommended - - withdrawn - - incomplete - - refused - open: - - complete - - withdrawn - - incomplete - recommended: - - approved - - approved_with_conditions - - withdrawn - - refused -- bucket: completions - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about the certificate that lets the building be used. - - Solveig Hauge at byggesak@vestmark.example - checked: - event: checked - temporary_permission: - event: temporary_permission - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Temporary permission' - body: |- - Hello, - - What you sent about the certificate that lets the building be used is now temporary permission to use. - - Solveig Hauge at byggesak@vestmark.example - certificate_issued: - event: certificate_issued - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Certificate issued' - body: |- - Hello, - - What you sent about the certificate that lets the building be used is now certificate issued. - - Solveig Hauge at byggesak@vestmark.example - refused: - event: refused - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Refused' - body: |- - Hello, - - What you sent about the certificate that lets the building be used is now refused. - - Solveig Hauge at byggesak@vestmark.example - transitions: - checked: - - temporary_permission - - certificate_issued - - refused - open: - - checked - - refused - temporary_permission: - - certificate_issued -- bucket: enquiries - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about to be told where it actually stands. - - Solveig Hauge at byggesak@vestmark.example - in_hand: - event: in_hand - answered: - event: answered - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Answered' - body: |- - Hello, - - What you sent about to be told where it actually stands is now answered. - - Solveig Hauge at byggesak@vestmark.example - transitions: - in_hand: - - answered - open: - - in_hand -- bucket: exemptions - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about to be allowed it anyway, with reasons on the record. - - What you can do next: {site}/decide/exemption-request?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - county_asked: - event: county_asked - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: County asked' - body: |- - Hello, - - What you sent about to be allowed it anyway, with reasons on the record is now with the county. - - What you can do next: {site}/decide/exemption-request?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - county_answered: - event: county_answered - recommended: - event: recommended - granted: - event: granted - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Granted' - body: |- - Hello, - - What you sent about to be allowed it anyway, with reasons on the record is now granted. - - Solveig Hauge at byggesak@vestmark.example - denied: - event: denied - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Denied' - body: |- - Hello, - - What you sent about to be allowed it anyway, with reasons on the record is now denied. - - Solveig Hauge at byggesak@vestmark.example - withdrawn: - event: withdrawn - transitions: - county_answered: - - recommended - - denied - - withdrawn - county_asked: - - county_answered - - denied - - withdrawn - open: - - county_asked - - denied - - withdrawn - recommended: - - granted - - denied - - withdrawn -- bucket: firms - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about to be on the list, and then to file without asking again. - - What you can do next: {site}/decide/firm-approval?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - papers_missing: - event: papers_missing - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Papers missing' - body: |- - Hello, - - What you sent about to be on the list, and then to file without asking again is now waiting on papers. - - What you can do next: {site}/decide/firm-approval?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - checked: - event: checked - approved: - event: approved - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Approved' - body: |- - Hello, - - What you sent about to be on the list, and then to file without asking again is now approved. - - Solveig Hauge at byggesak@vestmark.example - declined: - event: declined - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Declined' - body: |- - Hello, - - What you sent about to be on the list, and then to file without asking again is now declined. - - Solveig Hauge at byggesak@vestmark.example - transitions: - checked: - - approved - - declined - open: - - papers_missing - - checked - - declined - papers_missing: - - checked - - declined -- bucket: hearing_answers - initial: open - states: - open: - event: received - read: - event: read - followed: - event: followed - set_aside: - event: set_aside - transitions: - open: - - read - - set_aside - read: - - followed - - set_aside -- bucket: hearings - initial: open - states: - open: - event: received - answered: - event: answered - no_answer: - event: no_answer - cancelled: - event: cancelled - transitions: - open: - - answered - - no_answer - - cancelled - attended_by: | - the six-week deadline: when it passes with nothing from the agency the case goes to no_answer and the application goes on without one -- bucket: illegal_building - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about us to go and look, and to hear that we did. - - Solveig Hauge at byggesak@vestmark.example - inspected: - event: inspected - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Inspected' - body: |- - Hello, - - What you sent about us to go and look, and to hear that we did is now inspected. - - Solveig Hauge at byggesak@vestmark.example - owner_asked: - event: owner_asked - explained: - event: explained - resolved: - event: resolved - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Resolved' - body: |- - Hello, - - What you sent about us to go and look, and to hear that we did is now resolved. - - Solveig Hauge at byggesak@vestmark.example - fined: - event: fined - dropped: - event: dropped - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Dropped' - body: |- - Hello, - - What you sent about us to go and look, and to hear that we did is now nothing to pursue. - - Solveig Hauge at byggesak@vestmark.example - transitions: - explained: - - resolved - - dropped - inspected: - - owner_asked - - fined - open: - - inspected - - fined - owner_asked: - - explained -- bucket: inspections - initial: open - states: - open: - event: received - as_approved: - event: as_approved - deviation: - event: deviation - put_right: - event: put_right - escalated: - event: escalated - transitions: - deviation: - - as_approved - - put_right - - escalated - open: - - deviation - - escalated -- bucket: meetings - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello {name}, - - We have received what you sent about to hear what we will allow before paying an architect. - - What you can do next: {site}/decide/pre-application-meeting?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - scheduled: - event: scheduled - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Scheduled' - body: |- - Hello {name}, - - What you sent about to hear what we will allow before paying an architect is now scheduled. - - What you can do next: {site}/decide/pre-application-meeting?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - met: - event: met - advised: - event: advised - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Advised' - body: |- - Hello {name}, - - What you sent about to hear what we will allow before paying an architect is now written advice sent. - - Solveig Hauge at byggesak@vestmark.example - cancelled: - event: cancelled - transitions: - met: - - advised - - cancelled - open: - - scheduled - - cancelled - scheduled: - - met - - cancelled -- bucket: objections - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about what they think on the record, and answered in the decision. - - What you can do next: {site}/decide/objection?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - registered: - event: registered - answered_by_applicant: - event: answered_by_applicant - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Answered by applicant' - body: |- - Hello, - - What you sent about what they think on the record, and answered in the decision is now the applicant has answered. - - What you can do next: {site}/decide/objection?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - addressed: - event: addressed - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Addressed' - body: |- - Hello, - - What you sent about what they think on the record, and answered in the decision is now answered in the decision. - - Solveig Hauge at byggesak@vestmark.example - withdrawn: - event: withdrawn - transitions: - answered_by_applicant: - - addressed - - withdrawn - open: - - registered - - withdrawn - registered: - - answered_by_applicant - - withdrawn diff --git a/vendor/trainer/runs/permits-2026-09-25/answers-full-seed1.jsonl b/vendor/trainer/runs/permits-2026-09-25/answers-full-seed1.jsonl deleted file mode 100644 index 4b13c63..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/answers-full-seed1.jsonl +++ /dev/null @@ -1,25 +0,0 @@ -{"id":"garage-owner@/","choice":"Building near me","confidence":0.95} -{"id":"garage-owner@/want-to-build","choice":"to be allowed it anyway, with reasons on the record","confidence":0.95} -{"id":"shop-to-flats@/","choice":"Want to build","confidence":0.95} -{"id":"shop-to-flats@/want-to-build","choice":"permission to build it, and to know where the case stands","confidence":0.95} -{"id":"too-close-to-boundary@/","choice":"Want to build","confidence":0.95} -{"id":"too-close-to-boundary@/want-to-build","choice":"to be allowed it anyway, with reasons on the record","confidence":0.95} -{"id":"neighbour-view@/","choice":"the decision looked at again, by us and then by the board","confidence":0.95} -{"id":"neighbour-view@/building-near-me","choice":"what they think on the record, and answered in the decision","confidence":0.95} -{"id":"neighbour-parking@/","choice":"Building near me","confidence":0.95} -{"id":"neighbour-parking@/building-near-me","choice":"what they think on the record, and answered in the decision","confidence":0.95} -{"id":"refused-applicant@/","choice":"the decision looked at again, by us and then by the board","confidence":0.95} -{"id":"neighbour-appeals@/","choice":"the decision looked at again, by us and then by the board","confidence":0.95} -{"id":"board-member@/","choice":"the decision looked at again, by us and then by the board","confidence":0.95} -{"id":"firm-wants-certificate@/","choice":"the decision looked at again, by us and then by the board","confidence":0.95} -{"id":"firm-wants-certificate@/want-to-build","choice":"the certificate that lets the building be used","confidence":0.95} -{"id":"wants-to-move-in@/","choice":"Want to build","confidence":0.95} -{"id":"wants-to-move-in@/want-to-build","choice":"the certificate that lets the building be used","confidence":0.95} -{"id":"something-behind-fence@/","choice":"the decision looked at again, by us and then by the board","confidence":0.95} -{"id":"something-behind-fence@/building-near-me","choice":"us to go and look, and to hear that we did","confidence":0.95} -{"id":"owner-explains@/","choice":"Want to build","confidence":0.95} -{"id":"owner-explains@/building-near-me","choice":"us to go and look, and to hear that we did","confidence":0.95} -{"id":"new-firm@/","choice":"to be on the list, and then to file without asking again","confidence":1.0} -{"id":"firm-insurance-lapsed@/","choice":"to be on the list, and then to file without asking again","confidence":0.95} -{"id":"where-is-my-case@/","choice":"Building near me","confidence":0.95} -{"id":"where-is-my-case@/building-near-me","choice":"to be told where it actually stands","confidence":0.95} diff --git a/vendor/trainer/runs/permits-2026-09-25/answers-full-seed2.jsonl b/vendor/trainer/runs/permits-2026-09-25/answers-full-seed2.jsonl deleted file mode 100644 index 3a2ec69..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/answers-full-seed2.jsonl +++ /dev/null @@ -1,25 +0,0 @@ -{"id":"garage-owner@/","choice":"Want to build","confidence":0.95} -{"id":"garage-owner@/want-to-build","choice":"to be allowed it anyway, with reasons on the record","confidence":0.85} -{"id":"shop-to-flats@/","choice":"Want to build","confidence":0.95} -{"id":"shop-to-flats@/want-to-build","choice":"to be allowed it anyway, with reasons on the record","confidence":0.95} -{"id":"too-close-to-boundary@/","choice":"Want to build","confidence":0.95} -{"id":"too-close-to-boundary@/want-to-build","choice":"to be allowed it anyway, with reasons on the record","confidence":0.95} -{"id":"neighbour-view@/","choice":"Building near me","confidence":0.95} -{"id":"neighbour-view@/building-near-me","choice":"what they think on the record, and answered in the decision","confidence":0.95} -{"id":"neighbour-parking@/","choice":"Building near me","confidence":0.95} -{"id":"neighbour-parking@/building-near-me","choice":"what they think on the record, and answered in the decision","confidence":0.95} -{"id":"refused-applicant@/","choice":"the decision looked at again, by us and then by the board","confidence":0.95} -{"id":"neighbour-appeals@/","choice":"the decision looked at again, by us and then by the board","confidence":0.95} -{"id":"board-member@/","choice":"the decision looked at again, by us and then by the board","confidence":1.0} -{"id":"firm-wants-certificate@/","choice":"Want to build","confidence":0.95} -{"id":"firm-wants-certificate@/want-to-build","choice":"the certificate that lets the building be used","confidence":0.95} -{"id":"wants-to-move-in@/","choice":"the decision looked at again, by us and then by the board","confidence":0.95} -{"id":"wants-to-move-in@/want-to-build","choice":"to be allowed it anyway, with reasons on the record","confidence":0.85} -{"id":"something-behind-fence@/","choice":"Building near me","confidence":0.95} -{"id":"something-behind-fence@/building-near-me","choice":"us to go and look, and to hear that we did","confidence":0.95} -{"id":"owner-explains@/","choice":"Building near me","confidence":0.95} -{"id":"owner-explains@/building-near-me","choice":"us to go and look, and to hear that we did","confidence":0.95} -{"id":"new-firm@/","choice":"to be on the list, and then to file without asking again","confidence":1.0} -{"id":"firm-insurance-lapsed@/","choice":"to be on the list, and then to file without asking again","confidence":1.0} -{"id":"where-is-my-case@/","choice":"the decision looked at again, by us and then by the board","confidence":0.95} -{"id":"where-is-my-case@/building-near-me","choice":"to be told where it actually stands","confidence":0.95} diff --git a/vendor/trainer/runs/permits-2026-09-25/answers-full-seed3.jsonl b/vendor/trainer/runs/permits-2026-09-25/answers-full-seed3.jsonl deleted file mode 100644 index 0698247..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/answers-full-seed3.jsonl +++ /dev/null @@ -1,25 +0,0 @@ -{"id":"garage-owner@/","choice":"Want to build","confidence":0.95} -{"id":"garage-owner@/want-to-build","choice":"to hear what we will allow before paying an architect","confidence":0.95} -{"id":"shop-to-flats@/","choice":"Want to build","confidence":0.95} -{"id":"shop-to-flats@/want-to-build","choice":"permission to build it, and to know where the case stands","confidence":0.95} -{"id":"too-close-to-boundary@/","choice":"Want to build","confidence":0.95} -{"id":"too-close-to-boundary@/want-to-build","choice":"to be allowed it anyway, with reasons on the record","confidence":0.95} -{"id":"neighbour-view@/","choice":"Building near me","confidence":0.95} -{"id":"neighbour-view@/building-near-me","choice":"what they think on the record, and answered in the decision","confidence":0.95} -{"id":"neighbour-parking@/","choice":"Building near me","confidence":0.95} -{"id":"neighbour-parking@/building-near-me","choice":"what they think on the record, and answered in the decision","confidence":0.95} -{"id":"refused-applicant@/","choice":"the decision looked at again, by us and then by the board","confidence":0.95} -{"id":"neighbour-appeals@/","choice":"the decision looked at again, by us and then by the board","confidence":0.95} -{"id":"board-member@/","choice":"the decision looked at again, by us and then by the board","confidence":0.95} -{"id":"firm-wants-certificate@/","choice":"Want to build","confidence":0.95} -{"id":"firm-wants-certificate@/want-to-build","choice":"the certificate that lets the building be used","confidence":0.95} -{"id":"wants-to-move-in@/","choice":"the decision looked at again, by us and then by the board","confidence":0.95} -{"id":"wants-to-move-in@/want-to-build","choice":"the certificate that lets the building be used","confidence":0.95} -{"id":"something-behind-fence@/","choice":"Building near me","confidence":0.95} -{"id":"something-behind-fence@/building-near-me","choice":"us to go and look, and to hear that we did","confidence":0.95} -{"id":"owner-explains@/","choice":"Building near me","confidence":0.95} -{"id":"owner-explains@/building-near-me","choice":"to be told where it actually stands","confidence":0.95} -{"id":"new-firm@/","choice":"to be on the list, and then to file without asking again","confidence":1.0} -{"id":"firm-insurance-lapsed@/","choice":"to be on the list, and then to file without asking again","confidence":0.95} -{"id":"where-is-my-case@/","choice":"Building near me","confidence":0.95} -{"id":"where-is-my-case@/building-near-me","choice":"to be told where it actually stands","confidence":0.95} diff --git a/vendor/trainer/runs/permits-2026-09-25/cases.jsonl b/vendor/trainer/runs/permits-2026-09-25/cases.jsonl deleted file mode 100644 index 6373089..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/cases.jsonl +++ /dev/null @@ -1,15 +0,0 @@ -{"need":"small-works-application","persona":"straight-through","run":1,"record":{"email":"a@x.example","property_address":"Bjorkeveien 14","property_number":"42/7","what_is_planned":"A dormer window","neighbours_notified":"Yes"},"states":["open","complete","on_hearing","recommended","approved"]} -{"need":"small-works-application","persona":"asked-twice","run":1,"record":{"email":"b@x.example","property_address":"Solbakken 7","property_number":"51/2","what_is_planned":"A double garage","neighbours_notified":"Not yet"},"states":["open","incomplete","complete","incomplete","complete","on_hearing","recommended","approved_with_conditions"]} -{"need":"small-works-application","persona":"refused-on-arrival","run":1,"record":{"email":"c@x.example","property_address":"Torget 3","property_number":"12/9","what_is_planned":"Four flats in the old grocery","neighbours_notified":"Not yet"},"states":["open","refused"]} -{"need":"small-works-application","persona":"withdrawn-after-neighbours","run":1,"record":{"email":"d@x.example","property_address":"Elvegata 2","property_number":"18/4","what_is_planned":"An extension","neighbours_notified":"Yes"},"states":["open","complete","on_hearing","withdrawn"]} -{"need":"small-works-application","persona":"hearing-sent-it-back","run":1,"record":{"email":"e@x.example","property_address":"Kirkeveien 9","property_number":"7/33","what_is_planned":"A new access onto the county road","neighbours_notified":"Yes"},"states":["open","complete","on_hearing","incomplete","complete","on_hearing","recommended","approved"]} -{"need":"appeal","persona":"we-changed-our-mind","run":1,"record":{"email":"f@x.example","case_number":"2026/418","property":"Bjorkeveien 14","what_you_disagree_with":"You allowed the same thing twice in this street","your_interest":"I applied"},"states":["open","reconsidered","changed_by_us"]} -{"need":"appeal","persona":"board-upholds","run":1,"record":{"email":"g@x.example","case_number":"2026/501","property":"Torget 3","what_you_disagree_with":"The parking count is wrong","your_interest":"I am a neighbour"},"states":["open","reconsidered","before_the_board","upheld"]} -{"need":"appeal","persona":"board-overturns-unseen","run":1,"record":{"email":"h@x.example","case_number":"2026/377","property":"Solbakken 7","what_you_disagree_with":"Everything about it","your_interest":"Other"},"states":["open","overturned"]} -{"need":"completion-request","persona":"move-in-before-the-steps","run":1,"record":{"email":"i@x.example","case_number":"2026/418","property_address":"Bjorkeveien 14","work_finished":"2026-09-01","asking_for":"Temporary permission to move in"},"states":["open","checked","temporary_permission","certificate_issued"]} -{"need":"exemption-request","persona":"too-close-to-boundary","run":1,"record":{"email":"j@x.example","case_number":"2026/418","which_rule":"Four metres to the boundary","why_it_should_be_allowed":"The ground falls away everywhere else on the plot"},"states":["open","county_asked","county_answered","recommended","granted"]} -{"need":"objection","persona":"loses-the-afternoon-sun","run":1,"record":{"email":"k@x.example","case_number":"2026/418","your_property":"Bjorkeveien 16","your_objection":"It takes the sun off my whole terrace"},"states":["open","registered","answered_by_applicant","addressed"]} -{"need":"illegal-building-report","persona":"something-behind-the-fence","run":1,"record":{"email":"l@x.example","address":"Solbakken 7","what_you_saw":"A large structure, nobody was notified"},"states":["open","inspected","owner_asked","explained","resolved"]} -{"need":"request-hearing","persona":"county-never-answered","run":1,"record":{"case_number":"2026/501","which_authority":"The county","what_we_ask":"Is the access acceptable","answer_by":"2026-08-15"},"states":["open","no_answer"]} -{"need":"hearing-answer","persona":"road-authority-objects","run":1,"record":{"case_number":"2026/501","which_authority":"Road authority","our_answer":"Objection","what_we_say":"The access is within the sight line"},"states":["open","read","set_aside"]} -{"need":"inspection-finding","persona":"fire-wall-wrong","run":1,"record":{"case_number":"2026/418","site_address":"Bjorkeveien 14","what_i_found":"The fire wall is not built to the drawing"},"states":["open","deviation","put_right"]} diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/aggregates.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/aggregates.yaml deleted file mode 100644 index 6a01c16..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/aggregates.yaml +++ /dev/null @@ -1,653 +0,0 @@ -aggregates: -- bucket: appeals - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about the decision looked at again, by us and then by the board. - - What you can do next: {site}/decide/appeal?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - reconsidered: - event: reconsidered - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Reconsidered' - body: |- - Hello, - - What you sent about the decision looked at again, by us and then by the board is now we are looking at it again. - - What you can do next: {site}/decide/appeal?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - changed_by_us: - event: changed_by_us - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Changed by us' - body: |- - Hello, - - What you sent about the decision looked at again, by us and then by the board is now we changed our own decision. - - Solveig Hauge at byggesak@vestmark.example - before_the_board: - event: before_the_board - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Before the board' - body: |- - Hello, - - What you sent about the decision looked at again, by us and then by the board is now with the appeals board. - - What you can do next: {site}/decide/appeal?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - upheld: - event: upheld - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Upheld' - body: |- - Hello, - - What you sent about the decision looked at again, by us and then by the board is now the board kept our decision. - - Solveig Hauge at byggesak@vestmark.example - overturned: - event: overturned - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Overturned' - body: |- - Hello, - - What you sent about the decision looked at again, by us and then by the board is now the board overturned us. - - Solveig Hauge at byggesak@vestmark.example - withdrawn: - event: withdrawn - transitions: - open: - - reconsidered - - withdrawn - reconsidered: - - changed_by_us - - before_the_board - - withdrawn - before_the_board: - - upheld - - overturned - - withdrawn -- bucket: applications - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about permission to build it, and to know where the case stands. - - What you can do next: {site}/decide/small-works-application?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - incomplete: - event: incomplete - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Incomplete' - body: |- - Hello, - - What you sent about permission to build it, and to know where the case stands is now papers missing. - - What you can do next: {site}/decide/small-works-application?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - complete: - event: complete - on_hearing: - event: on_hearing - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: On hearing' - body: |- - Hello, - - What you sent about permission to build it, and to know where the case stands is now out to the neighbours and the agencies. - - What you can do next: {site}/decide/small-works-application?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - recommended: - event: recommended - approved: - event: approved - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Approved' - body: |- - Hello, - - What you sent about permission to build it, and to know where the case stands is now approved. - - Solveig Hauge at byggesak@vestmark.example - approved_with_conditions: - event: approved_with_conditions - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Approved with conditions' - body: |- - Hello, - - What you sent about permission to build it, and to know where the case stands is now approved on conditions. - - Solveig Hauge at byggesak@vestmark.example - refused: - event: refused - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Refused' - body: |- - Hello, - - What you sent about permission to build it, and to know where the case stands is now refused. - - Solveig Hauge at byggesak@vestmark.example - withdrawn: - event: withdrawn - transitions: - open: - - incomplete - - complete - - withdrawn - incomplete: - - complete - - withdrawn - complete: - - incomplete - - on_hearing - - refused - - withdrawn - on_hearing: - - incomplete - - recommended - - refused - - withdrawn - recommended: - - approved - - approved_with_conditions - - refused - - withdrawn -- bucket: completions - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about the certificate that lets the building be used. - - Solveig Hauge at byggesak@vestmark.example - checked: - event: checked - temporary_permission: - event: temporary_permission - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Temporary permission' - body: |- - Hello, - - What you sent about the certificate that lets the building be used is now temporary permission to use. - - Solveig Hauge at byggesak@vestmark.example - certificate_issued: - event: certificate_issued - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Certificate issued' - body: |- - Hello, - - What you sent about the certificate that lets the building be used is now certificate issued. - - Solveig Hauge at byggesak@vestmark.example - refused: - event: refused - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Refused' - body: |- - Hello, - - What you sent about the certificate that lets the building be used is now refused. - - Solveig Hauge at byggesak@vestmark.example - transitions: - checked: - - temporary_permission - - certificate_issued - - refused - open: - - checked - - refused - temporary_permission: - - certificate_issued -- bucket: enquiries - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about to be told where it actually stands. - - Solveig Hauge at byggesak@vestmark.example - in_hand: - event: in_hand - answered: - event: answered - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Answered' - body: |- - Hello, - - What you sent about to be told where it actually stands is now answered. - - Solveig Hauge at byggesak@vestmark.example - transitions: - in_hand: - - answered - open: - - in_hand -- bucket: exemptions - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about to be allowed it anyway, with reasons on the record. - - What you can do next: {site}/decide/exemption-request?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - county_asked: - event: county_asked - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: County asked' - body: |- - Hello, - - What you sent about to be allowed it anyway, with reasons on the record is now with the county. - - What you can do next: {site}/decide/exemption-request?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - county_answered: - event: county_answered - recommended: - event: recommended - granted: - event: granted - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Granted' - body: |- - Hello, - - What you sent about to be allowed it anyway, with reasons on the record is now granted. - - Solveig Hauge at byggesak@vestmark.example - denied: - event: denied - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Denied' - body: |- - Hello, - - What you sent about to be allowed it anyway, with reasons on the record is now denied. - - Solveig Hauge at byggesak@vestmark.example - withdrawn: - event: withdrawn - transitions: - county_answered: - - recommended - - denied - - withdrawn - county_asked: - - county_answered - - denied - - withdrawn - open: - - county_asked - - denied - - withdrawn - recommended: - - granted - - denied - - withdrawn -- bucket: firms - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about to be on the list, and then to file without asking again. - - What you can do next: {site}/decide/firm-approval?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - papers_missing: - event: papers_missing - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Papers missing' - body: |- - Hello, - - What you sent about to be on the list, and then to file without asking again is now waiting on papers. - - What you can do next: {site}/decide/firm-approval?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - checked: - event: checked - approved: - event: approved - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Approved' - body: |- - Hello, - - What you sent about to be on the list, and then to file without asking again is now approved. - - Solveig Hauge at byggesak@vestmark.example - declined: - event: declined - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Declined' - body: |- - Hello, - - What you sent about to be on the list, and then to file without asking again is now declined. - - Solveig Hauge at byggesak@vestmark.example - transitions: - checked: - - approved - - declined - open: - - papers_missing - - checked - - declined - papers_missing: - - checked - - declined -- bucket: hearing_answers - initial: open - states: - open: - event: received - read: - event: read - followed: - event: followed - set_aside: - event: set_aside - transitions: - open: - - read - - set_aside - read: - - followed - - set_aside -- bucket: hearings - initial: open - states: - open: - event: received - answered: - event: answered - no_answer: - event: no_answer - cancelled: - event: cancelled - transitions: - open: - - answered - - no_answer - - cancelled - attended_by: | - the six-week deadline: when it passes with nothing from the agency the case goes to no_answer and the application goes on without one -- bucket: illegal_building - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about us to go and look, and to hear that we did. - - Solveig Hauge at byggesak@vestmark.example - inspected: - event: inspected - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Inspected' - body: |- - Hello, - - What you sent about us to go and look, and to hear that we did is now inspected. - - Solveig Hauge at byggesak@vestmark.example - owner_asked: - event: owner_asked - explained: - event: explained - resolved: - event: resolved - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Resolved' - body: |- - Hello, - - What you sent about us to go and look, and to hear that we did is now resolved. - - Solveig Hauge at byggesak@vestmark.example - fined: - event: fined - dropped: - event: dropped - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Dropped' - body: |- - Hello, - - What you sent about us to go and look, and to hear that we did is now nothing to pursue. - - Solveig Hauge at byggesak@vestmark.example - transitions: - explained: - - resolved - - dropped - inspected: - - owner_asked - - fined - open: - - inspected - - fined - owner_asked: - - explained -- bucket: inspections - initial: open - states: - open: - event: received - as_approved: - event: as_approved - deviation: - event: deviation - put_right: - event: put_right - escalated: - event: escalated - transitions: - deviation: - - as_approved - - put_right - - escalated - open: - - deviation - - escalated -- bucket: meetings - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello {name}, - - We have received what you sent about to hear what we will allow before paying an architect. - - What you can do next: {site}/decide/pre-application-meeting?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - scheduled: - event: scheduled - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Scheduled' - body: |- - Hello {name}, - - What you sent about to hear what we will allow before paying an architect is now scheduled. - - What you can do next: {site}/decide/pre-application-meeting?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - met: - event: met - advised: - event: advised - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Advised' - body: |- - Hello {name}, - - What you sent about to hear what we will allow before paying an architect is now written advice sent. - - Solveig Hauge at byggesak@vestmark.example - cancelled: - event: cancelled - transitions: - met: - - advised - - cancelled - open: - - scheduled - - cancelled - scheduled: - - met - - cancelled -- bucket: objections - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about what they think on the record, and answered in the decision. - - What you can do next: {site}/decide/objection?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - registered: - event: registered - answered_by_applicant: - event: answered_by_applicant - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Answered by applicant' - body: |- - Hello, - - What you sent about what they think on the record, and answered in the decision is now the applicant has answered. - - What you can do next: {site}/decide/objection?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - addressed: - event: addressed - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Addressed' - body: |- - Hello, - - What you sent about what they think on the record, and answered in the decision is now answered in the decision. - - Solveig Hauge at byggesak@vestmark.example - withdrawn: - event: withdrawn - transitions: - answered_by_applicant: - - addressed - - withdrawn - open: - - registered - - withdrawn - registered: - - answered_by_applicant - - withdrawn diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/needs.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/needs.yaml deleted file mode 100644 index 0f4deac..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/needs.yaml +++ /dev/null @@ -1,430 +0,0 @@ -needs: -- id: pre-application-meeting - who: someone with an idea for a building and no drawings yet - wants: to hear what we will allow before paying an architect - enters: / - via: Want to build - lands_in: meetings - handled_by: case_officers - stages: - - open - - scheduled - - met - - advised - - cancelled - done_when: - - advised - - cancelled - success: - - advised - max_steps: 2 - max_fields: 5 - stage_words: - open: open - scheduled: scheduled - met: we have met - advised: written advice sent - cancelled: cancelled - also_moved_by: - - front_desk -- id: small-works-application - who: an owner applying for something small enough to file themselves - wants: permission to build it, and to know where the case stands - enters: / - via: Want to build - lands_in: applications - handled_by: case_officers - stages: - - open - - incomplete - - complete - - on_hearing - - recommended - - approved - - approved_with_conditions - - refused - - withdrawn - done_when: - - approved - - approved_with_conditions - - refused - - withdrawn - success: - - approved - - approved_with_conditions - max_steps: 2 - max_fields: 6 - stage_words: - open: open - incomplete: papers missing - complete: papers complete - on_hearing: out to the neighbours and the agencies - recommended: recommendation written - approved: approved - approved_with_conditions: approved on conditions - refused: refused - withdrawn: withdrawn - also_moved_by: - - section_head -- id: exemption-request - who: someone whose plans break a rule in the zoning map - wants: to be allowed it anyway, with reasons on the record - enters: / - via: Want to build - lands_in: exemptions - handled_by: case_officers - stages: - - open - - county_asked - - county_answered - - recommended - - granted - - denied - - withdrawn - done_when: - - granted - - denied - - withdrawn - success: - - granted - max_steps: 2 - max_fields: 4 - stage_words: - open: open - county_asked: with the county - county_answered: the county has answered - recommended: recommended - granted: granted - denied: denied - withdrawn: withdrawn - also_moved_by: - - agencies - - section_head -- id: completion-request - who: an owner or firm whose building work is finished - wants: the certificate that lets the building be used - enters: / - via: Want to build - lands_in: completions - handled_by: case_officers - stages: - - open - - checked - - temporary_permission - - certificate_issued - - refused - done_when: - - certificate_issued - - refused - success: - - certificate_issued - max_steps: 2 - max_fields: 5 - stage_words: - open: open - checked: checked against the inspections - temporary_permission: temporary permission to use - certificate_issued: certificate issued - refused: refused - also_moved_by: - - section_head -- id: objection - who: a neighbour who got a notice about what is planned next door - wants: what they think on the record, and answered in the decision - enters: / - via: Building near me - lands_in: objections - handled_by: case_officers - stages: - - open - - registered - - answered_by_applicant - - addressed - - withdrawn - done_when: - - addressed - - withdrawn - success: - - addressed - max_steps: 2 - max_fields: 4 - stage_words: - open: open - registered: on the case file - answered_by_applicant: the applicant has answered - addressed: answered in the decision - withdrawn: withdrawn - also_moved_by: - - approved_firms -- id: case-status-enquiry - who: someone waiting on a case and getting nothing back - wants: to be told where it actually stands - enters: / - via: Building near me - lands_in: enquiries - handled_by: front_desk - stages: - - open - - in_hand - - answered - done_when: - - answered - success: - - answered - max_steps: 2 - max_fields: 3 - stage_words: - open: open - in_hand: in hand - answered: answered - also_moved_by: - - case_officers -- id: illegal-building-report - who: someone who can see building going up that nobody was told about - wants: us to go and look, and to hear that we did - enters: / - via: Building near me - lands_in: illegal_building - handled_by: inspectors - stages: - - open - - inspected - - owner_asked - - explained - - resolved - - fined - - dropped - done_when: - - resolved - - fined - - dropped - success: - - resolved - - dropped - max_steps: 2 - max_fields: 3 - stage_words: - open: open - inspected: inspected - owner_asked: the owner has been written to - explained: the owner has answered - resolved: resolved - fined: fined - dropped: nothing to pursue - also_moved_by: - - case_officers - - section_head -- id: appeal - who: anyone with an interest who will not accept a decision of ours - wants: the decision looked at again, by us and then by the board - enters: / - via: the decision looked at again, by us and then by the board - lands_in: appeals - handled_by: case_officers - stages: - - open - - reconsidered - - changed_by_us - - before_the_board - - upheld - - overturned - - withdrawn - done_when: - - changed_by_us - - upheld - - overturned - - withdrawn - success: - - changed_by_us - - upheld - max_steps: 1 - max_fields: 5 - stage_words: - open: open - reconsidered: we are looking at it again - changed_by_us: we changed our own decision - before_the_board: with the appeals board - upheld: the board kept our decision - overturned: the board overturned us - withdrawn: withdrawn - also_moved_by: - - appeals_board - - section_head -- id: firm-approval - who: an architect or engineering firm that files for its clients - wants: to be on the list, and then to file without asking again - enters: / - via: to be on the list, and then to file without asking again - lands_in: firms - handled_by: case_officers - stages: - - open - - papers_missing - - checked - - approved - - declined - done_when: - - approved - - declined - success: - - approved - max_steps: 1 - max_fields: 6 - stage_words: - open: open - papers_missing: waiting on papers - checked: papers checked - approved: approved - declined: declined - also_moved_by: - - section_head -- id: permit-application - who: an approved firm filing on behalf of an owner - wants: a decision inside twelve weeks, and to know when the clock stops - enters: /approved_firms/permit-application - via: a decision inside twelve weeks, and to know when the clock stops - lands_in: applications - handled_by: case_officers - stages: - - open - - incomplete - - complete - - on_hearing - - recommended - - approved - - approved_with_conditions - - refused - - withdrawn - done_when: - - approved - - approved_with_conditions - - refused - - withdrawn - success: - - approved - - approved_with_conditions - max_steps: 1 - max_fields: 6 - stage_words: - open: open - incomplete: papers missing - complete: papers complete - on_hearing: out to the neighbours and the agencies - recommended: recommendation written - approved: approved - approved_with_conditions: approved on conditions - refused: refused - withdrawn: withdrawn - enters_as: approved_firms - also_moved_by: - - section_head -- id: log-counter-enquiry - who: whoever is on the counter with a queue and a caller on the line - wants: the question written down and sent to whoever has the case - enters: /front_desk/log-counter-enquiry - via: the question written down and sent to whoever has the case - lands_in: enquiries - handled_by: front_desk - stages: - - open - - in_hand - - answered - done_when: - - answered - success: - - answered - max_steps: 1 - max_fields: 3 - stage_words: - open: open - in_hand: in hand - answered: answered - enters_as: front_desk - also_moved_by: - - case_officers -- id: request-hearing - who: a case officer sending a case out to the authority that must see it - wants: an answer by the deadline, or a record that none came - enters: /case_officers/request-hearing - via: an answer by the deadline, or a record that none came - lands_in: hearings - handled_by: case_officers - stages: - - open - - answered - - no_answer - - cancelled - done_when: - - answered - - no_answer - - cancelled - success: - - answered - max_steps: 1 - max_fields: 4 - stage_words: - open: open - answered: answered - no_answer: the deadline passed with no answer - cancelled: cancelled - enters_as: case_officers - also_moved_by: - - agencies -- id: hearing-answer - who: a road, fire, heritage or county officer who has been asked about a case - wants: their answer on the file, in their own words - enters: /agencies/hearing-answer - via: their answer on the file, in their own words - lands_in: hearing_answers - handled_by: case_officers - stages: - - open - - read - - followed - - set_aside - done_when: - - followed - - set_aside - success: - - followed - max_steps: 1 - max_fields: 4 - stage_words: - open: open - read: read by the case officer - followed: followed in the decision - set_aside: set aside with reasons - enters_as: agencies -- id: inspection-finding - who: an inspector on a scaffold with gloves on and the wind blowing - wants: what they found logged before they climb down - enters: /inspectors/inspection-finding - via: what they found logged before they climb down - lands_in: inspections - handled_by: inspectors - stages: - - open - - as_approved - - deviation - - put_right - - escalated - done_when: - - as_approved - - put_right - - escalated - success: - - as_approved - - put_right - max_steps: 1 - max_fields: 3 - stage_words: - open: open - as_approved: built as approved - deviation: built differently - put_right: put right - escalated: handed to a case officer - enters_as: inspectors - also_moved_by: - - case_officers - - section_head -personas: [] diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/agencies/_section.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/agencies/_section.yaml deleted file mode 100644 index 71cfb91..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/agencies/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: agencies diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/agencies/hearing-answer-sent.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/agencies/hearing-answer-sent.yaml deleted file mode 100644 index 8bc747e..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/agencies/hearing-answer-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: /agencies - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/agencies/hearing-answer.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/agencies/hearing-answer.yaml deleted file mode 100644 index 23c7b7e..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/agencies/hearing-answer.yaml +++ /dev/null @@ -1,46 +0,0 @@ -followup: false -name: Hearing answer? -description: '' -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: their answer on the file, in their own words - description: For a road, fire, heritage or county officer who has been asked about a case. - action: /agencies/hearing-answer-sent - consequence: - - Send - record_as: hearing_answers - features: - - name: What you need - description: The hearing letter we sent you, which has the case number on it. - icon: lucide:key - - name: What happens next - description: It is open, then read by the case officer, and ends followed in the decision or set aside with reasons. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: case_number - label: Case number - type: text - - name: which_authority - label: Which authority - type: select - options: - - Road authority - - Fire service - - Heritage office - - The county - - name: our_answer - label: Our answer - type: select - options: - - No objection - - Objection - - Conditions required - - name: what_we_say - label: What we say - type: textarea diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/agencies/index.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/agencies/index.yaml deleted file mode 100644 index 485074a..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/agencies/index.yaml +++ /dev/null @@ -1,78 +0,0 @@ -name: What needs doing? -description: Everything hearing bodies looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Exemptions - description: Sent in by someone whose plans break a rule in the zoning map. - action: /agencies - consequence: - - Confirm - features: - - name: Exemptions - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: exemptions - requires_group: agencies - transitions: - - from: county_asked - to: county_answered - label: The county has answered -- name: Hearings - description: Sent in by a case officer sending a case out to the authority that must see it. - action: /agencies - consequence: - - Confirm - features: - - name: Hearings - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: hearings - requires_group: agencies - transitions: - - from: open - to: answered - label: Answered -- name: their answer on the file, in their own words - description: For a road, fire, heritage or county officer who has been asked about a case. - action: /agencies/hearing-answer - consequence: - - Open -- name: Invite someone into Hearing bodies - description: They get an account, a place in Hearing bodies, and a one-time link to set their own password or passkey. - action: /agencies - consequence: - - Invite - invite: - group: agencies - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite with the link it made. Mark it done when the person is in. - action: /agencies - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: agencies - transitions: - - from: open - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/appeals_board/_section.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/appeals_board/_section.yaml deleted file mode 100644 index a23502c..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/appeals_board/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: appeals_board diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/appeals_board/index.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/appeals_board/index.yaml deleted file mode 100644 index e3aa2d2..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/appeals_board/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -name: What needs doing? -description: Everything appeals board looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Appeals - description: Sent in by anyone with an interest who will not accept a decision of ours. - action: /appeals_board - consequence: - - Confirm - features: - - name: Appeals - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: appeals - requires_group: appeals_board - transitions: - - from: before_the_board - to: upheld - label: The board kept our decision - - from: before_the_board - to: overturned - label: The board overturned us - - from: open - to: overturned - label: The board overturned us - - from: reconsidered - to: overturned - label: The board overturned us -- name: Invite someone into Appeals board - description: They get an account, a place in Appeals board, and a one-time link to set their own password or passkey. - action: /appeals_board - consequence: - - Invite - invite: - group: appeals_board - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite with the link it made. Mark it done when the person is in. - action: /appeals_board - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: appeals_board - transitions: - - from: open - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/approved_firms/_section.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/approved_firms/_section.yaml deleted file mode 100644 index 85f1f10..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/approved_firms/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: approved_firms diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/approved_firms/index.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/approved_firms/index.yaml deleted file mode 100644 index bc823e4..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/approved_firms/index.yaml +++ /dev/null @@ -1,61 +0,0 @@ -name: What needs doing? -description: Everything approved firms looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Objections - description: Sent in by a neighbour who got a notice about what is planned next door. - action: /approved_firms - consequence: - - Confirm - features: - - name: Objections - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: objections - requires_group: approved_firms - transitions: - - from: registered - to: answered_by_applicant - label: The applicant has answered -- name: a decision inside twelve weeks, and to know when the clock stops - description: For an approved firm filing on behalf of an owner. - action: /approved_firms/permit-application - consequence: - - Open -- name: Invite someone into Approved firms - description: They get an account, a place in Approved firms, and a one-time link to set their own password or passkey. - action: /approved_firms - consequence: - - Invite - invite: - group: approved_firms - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite with the link it made. Mark it done when the person is in. - action: /approved_firms - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: approved_firms - transitions: - - from: open - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/approved_firms/permit-application-sent.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/approved_firms/permit-application-sent.yaml deleted file mode 100644 index 6914aa3..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/approved_firms/permit-application-sent.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: See all applications - description: '' - action: /status/applications - consequence: - - Open -- name: Back - description: '' - action: /approved_firms - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/approved_firms/permit-application.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/approved_firms/permit-application.yaml deleted file mode 100644 index 50d5e38..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/approved_firms/permit-application.yaml +++ /dev/null @@ -1,48 +0,0 @@ -followup: false -name: Permit application? -description: '' -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: a decision inside twelve weeks, and to know when the clock stops - description: For an approved firm filing on behalf of an owner. - action: /approved_firms/permit-application-sent - consequence: - - Send - record_as: applications - features: - - name: What happens next - description: It is open, then papers missing, then papers complete, then out to the neighbours and the agencies, then recommendation written, and ends approved, approved on conditions, refused or withdrawn. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: property_address - label: Property address - type: text - - name: property_number - label: Property number - type: text - - name: what_is_planned - label: What is planned - type: textarea - - name: neighbours_notified - label: Neighbours notified - type: select - options: - - Yes - - Not yet - - name: site - label: Site - type: location - optional: true - - name: drawings_url - label: Drawings url - type: text - optional: true diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/building-near-me/index.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/building-near-me/index.yaml deleted file mode 100644 index caf6e50..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/building-near-me/index.yaml +++ /dev/null @@ -1,88 +0,0 @@ -name: What do you need? -description: For someone who lives next to what is being built. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: what they think on the record, and answered in the decision - description: For a neighbour who got a notice about what is planned next door. - action: /received/objection - consequence: - - Send - record_as: objections - features: - - name: What you need - description: The notice that came in the post, which has the case number on it. - icon: lucide:key - - name: What happens next - description: It is open, then on the case file, then the applicant has answered, and ends answered in the decision or withdrawn. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: case_number - label: Case number - type: text - - name: your_property - label: Your property - type: text - - name: your_objection - label: Your objection - type: textarea -- name: to be told where it actually stands - description: For someone waiting on a case and getting nothing back. - action: /received/case-status-enquiry - consequence: - - Send - record_as: enquiries - features: - - name: What happens next - description: It is open, then in hand, and ends answered. - icon: lucide:route - - name: Who reads it - description: Front desk. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: case_number_or_address - label: Case number or address - type: text - - name: what_you_want_to_know - label: What you want to know - type: textarea -- name: us to go and look, and to hear that we did - description: For someone who can see building going up that nobody was told about. - action: /received/illegal-building-report - consequence: - - Send - record_as: illegal_building - features: - - name: What happens next - description: It is open, then inspected, then the owner has been written to, then the owner has answered, and ends resolved, fined or nothing to pursue. - icon: lucide:route - - name: Who reads it - description: Inspectors. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: address - label: Address - type: text - - name: what_you_saw - label: What you saw - type: textarea - - name: where - label: Where - type: location - optional: true diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/case_officers/_section.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/case_officers/_section.yaml deleted file mode 100644 index 0eb3949..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/case_officers/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: case_officers diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/case_officers/index.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/case_officers/index.yaml deleted file mode 100644 index 162a617..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/case_officers/index.yaml +++ /dev/null @@ -1,395 +0,0 @@ -name: What needs doing? -description: Everything case officers looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Appeals - description: Sent in by anyone with an interest who will not accept a decision of ours. - action: /case_officers - consequence: - - Confirm - features: - - name: Appeals - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: appeals - requires_group: case_officers - transitions: - - from: open - to: reconsidered - label: We are looking at it again -- name: Applications - description: Sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner. - action: /case_officers - consequence: - - Confirm - features: - - name: Applications - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: applications - requires_group: case_officers - transitions: - - from: complete - to: on_hearing - label: Out to the neighbours and the agencies - - from: incomplete - to: complete - label: Papers complete - - from: on_hearing - to: recommended - label: Recommendation written - - from: open - to: incomplete - label: Papers missing - - from: open - to: complete - label: Papers complete -- name: Completions - description: Sent in by an owner or firm whose building work is finished. - action: /case_officers - consequence: - - Confirm - features: - - name: Completions - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: completions - requires_group: case_officers - transitions: - - from: open - to: checked - label: Checked against the inspections -- name: Enquiries - description: Sent in by someone waiting on a case and getting nothing back or whoever is on the counter with a queue and a caller on the line. - action: /case_officers - consequence: - - Confirm - features: - - name: Enquiries - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: enquiries - requires_group: case_officers - transitions: - - from: open - to: in_hand - label: In hand -- name: Exemptions - description: Sent in by someone whose plans break a rule in the zoning map. - action: /case_officers - consequence: - - Confirm - features: - - name: Exemptions - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: exemptions - requires_group: case_officers - transitions: - - from: county_answered - to: recommended - label: Recommended - - from: open - to: county_asked - label: With the county -- name: Firms - description: Sent in by an architect or engineering firm that files for its clients. - action: /case_officers - consequence: - - Confirm - features: - - name: Firms - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: firms - requires_group: case_officers - transitions: - - from: open - to: papers_missing - label: Waiting on papers - - from: open - to: checked - label: Papers checked - - from: papers_missing - to: checked - label: Papers checked -- name: Hearing answers - description: Sent in by a road, fire, heritage or county officer who has been asked about a case. - action: /case_officers - consequence: - - Confirm - features: - - name: Hearing answers - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: hearing_answers - requires_group: case_officers - transitions: - - from: open - to: read - label: Read by the case officer - - from: open - to: set_aside - label: Set aside with reasons - - from: read - to: followed - label: Followed in the decision - - from: read - to: set_aside - label: Set aside with reasons -- name: Hearings - description: Sent in by a case officer sending a case out to the authority that must see it. - action: /case_officers - consequence: - - Confirm - features: - - name: Hearings - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: hearings - requires_group: case_officers - transitions: - - from: open - to: no_answer - label: The deadline passed with no answer - - from: open - to: cancelled - label: Cancelled -- name: Illegal building - description: Sent in by someone who can see building going up that nobody was told about. - action: /case_officers - consequence: - - Confirm - features: - - name: Illegal building - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: illegal_building - requires_group: case_officers - transitions: - - from: inspected - to: owner_asked - label: The owner has been written to - - from: owner_asked - to: explained - label: The owner has answered -- name: Inspections - description: Sent in by an inspector on a scaffold with gloves on and the wind blowing. - action: /case_officers - consequence: - - Confirm - features: - - name: Inspections - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: inspections - requires_group: case_officers - transitions: - - from: deviation - to: escalated - label: Handed to a case officer - - from: open - to: escalated - label: Handed to a case officer -- name: Meetings - description: Sent in by someone with an idea for a building and no drawings yet. - action: /case_officers - consequence: - - Confirm - features: - - name: Meetings - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: meetings - requires_group: case_officers - transitions: - - from: met - to: advised - label: Written advice sent - - from: open - to: scheduled - label: Scheduled - - from: scheduled - to: met - label: We have met -- name: Objections - description: Sent in by a neighbour who got a notice about what is planned next door. - action: /case_officers - consequence: - - Confirm - features: - - name: Objections - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: objections - requires_group: case_officers - transitions: - - from: answered_by_applicant - to: addressed - label: Answered in the decision - - from: open - to: registered - label: On the case file - - from: registered - to: answered_by_applicant - label: The applicant has answered -- name: an answer by the deadline, or a record that none came - description: For a case officer sending a case out to the authority that must see it. - action: /case_officers/request-hearing - consequence: - - Open -- name: Invite someone into Hearing bodies - description: They get an account, a place in Hearing bodies, and a one-time link to set their own password or passkey. - action: /case_officers - consequence: - - Invite - invite: - group: agencies - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Appeals board - description: They get an account, a place in Appeals board, and a one-time link to set their own password or passkey. - action: /case_officers - consequence: - - Invite - invite: - group: appeals_board - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Approved firms - description: They get an account, a place in Approved firms, and a one-time link to set their own password or passkey. - action: /case_officers - consequence: - - Invite - invite: - group: approved_firms - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Case officers - description: They get an account, a place in Case officers, and a one-time link to set their own password or passkey. - action: /case_officers - consequence: - - Invite - invite: - group: case_officers - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Front desk - description: They get an account, a place in Front desk, and a one-time link to set their own password or passkey. - action: /case_officers - consequence: - - Invite - invite: - group: front_desk - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Inspectors - description: They get an account, a place in Inspectors, and a one-time link to set their own password or passkey. - action: /case_officers - consequence: - - Invite - invite: - group: inspectors - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Head of section - description: They get an account, a place in Head of section, and a one-time link to set their own password or passkey. - action: /case_officers - consequence: - - Invite - invite: - group: section_head - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite with the link it made. Mark it done when the person is in. - action: /case_officers - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: case_officers - transitions: - - from: open - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/case_officers/request-hearing-sent.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/case_officers/request-hearing-sent.yaml deleted file mode 100644 index 9a588a6..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/case_officers/request-hearing-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: /case_officers - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/case_officers/request-hearing.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/case_officers/request-hearing.yaml deleted file mode 100644 index 7bd9196..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/case_officers/request-hearing.yaml +++ /dev/null @@ -1,43 +0,0 @@ -followup: false -name: Request hearing? -description: '' -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: an answer by the deadline, or a record that none came - description: For a case officer sending a case out to the authority that must see it. - action: /case_officers/request-hearing-sent - consequence: - - Send - record_as: hearings - features: - - name: What happens next - description: It is open, and ends answered, the deadline passed with no answer or cancelled. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: case_number - label: Case number - type: text - - name: which_authority - label: Which authority - type: select - options: - - Road authority - - Fire service - - Heritage office - - The county - - name: what_we_ask - label: What we ask - type: textarea - - name: answer_by - label: Answer by - type: date - - name: site - label: Site - type: location - optional: true diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/appeal.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/appeal.yaml deleted file mode 100644 index 9b0f503..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/appeal.yaml +++ /dev/null @@ -1,9 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Withdrawn - description: '' - self_transition: - bucket: appeals - to: withdrawn - label: Withdrawn diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/exemption-request.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/exemption-request.yaml deleted file mode 100644 index 647cfbc..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/exemption-request.yaml +++ /dev/null @@ -1,9 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Withdrawn - description: '' - self_transition: - bucket: exemptions - to: withdrawn - label: Withdrawn diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/firm-approval.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/firm-approval.yaml deleted file mode 100644 index c858427..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/firm-approval.yaml +++ /dev/null @@ -1,9 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Checked - description: '' - self_transition: - bucket: firms - to: checked - label: Checked diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/objection.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/objection.yaml deleted file mode 100644 index 7ddb909..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/objection.yaml +++ /dev/null @@ -1,9 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Withdrawn - description: '' - self_transition: - bucket: objections - to: withdrawn - label: Withdrawn diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/permit-application.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/permit-application.yaml deleted file mode 100644 index b90eacf..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/permit-application.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Complete - description: '' - self_transition: - bucket: applications - to: complete - label: Complete -- name: Withdrawn - description: '' - self_transition: - bucket: applications - to: withdrawn - label: Withdrawn diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/pre-application-meeting.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/pre-application-meeting.yaml deleted file mode 100644 index 315bde5..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/pre-application-meeting.yaml +++ /dev/null @@ -1,9 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Cancelled - description: '' - self_transition: - bucket: meetings - to: cancelled - label: Cancelled diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/small-works-application.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/small-works-application.yaml deleted file mode 100644 index b90eacf..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/decide/small-works-application.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Complete - description: '' - self_transition: - bucket: applications - to: complete - label: Complete -- name: Withdrawn - description: '' - self_transition: - bucket: applications - to: withdrawn - label: Withdrawn diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/front_desk/_section.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/front_desk/_section.yaml deleted file mode 100644 index 8b76bf9..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/front_desk/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: front_desk diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/front_desk/index.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/front_desk/index.yaml deleted file mode 100644 index b36f594..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/front_desk/index.yaml +++ /dev/null @@ -1,157 +0,0 @@ -name: What needs doing? -description: Everything front desk looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Appeals - description: Sent in by anyone with an interest who will not accept a decision of ours. - action: /front_desk - consequence: - - Confirm - features: - - name: Appeals - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: appeals - requires_group: front_desk - transitions: [] -- name: Applications - description: Sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner. - action: /front_desk - consequence: - - Confirm - features: - - name: Applications - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: applications - requires_group: front_desk - transitions: [] -- name: Enquiries - description: Sent in by someone waiting on a case and getting nothing back or whoever is on the counter with a queue and a caller on the line. - action: /front_desk - consequence: - - Confirm - features: - - name: Enquiries - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: enquiries - requires_group: front_desk - transitions: - - from: in_hand - to: answered - label: Answered - - from: open - to: in_hand - label: In hand -- name: Firms - description: Sent in by an architect or engineering firm that files for its clients. - action: /front_desk - consequence: - - Confirm - features: - - name: Firms - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: firms - requires_group: front_desk - transitions: [] -- name: Hearing answers - description: Sent in by a road, fire, heritage or county officer who has been asked about a case. - action: /front_desk - consequence: - - Confirm - features: - - name: Hearing answers - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: hearing_answers - requires_group: front_desk - transitions: [] -- name: Hearings - description: Sent in by a case officer sending a case out to the authority that must see it. - action: /front_desk - consequence: - - Confirm - features: - - name: Hearings - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: hearings - requires_group: front_desk - transitions: [] -- name: Meetings - description: Sent in by someone with an idea for a building and no drawings yet. - action: /front_desk - consequence: - - Confirm - features: - - name: Meetings - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: meetings - requires_group: front_desk - transitions: - - from: met - to: cancelled - label: Cancelled - - from: open - to: cancelled - label: Cancelled - - from: scheduled - to: cancelled - label: Cancelled -- name: the question written down and sent to whoever has the case - description: For whoever is on the counter with a queue and a caller on the line. - action: /front_desk/log-counter-enquiry - consequence: - - Open -- name: Invite someone into Front desk - description: They get an account, a place in Front desk, and a one-time link to set their own password or passkey. - action: /front_desk - consequence: - - Invite - invite: - group: front_desk - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite with the link it made. Mark it done when the person is in. - action: /front_desk - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: front_desk - transitions: - - from: open - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/front_desk/log-counter-enquiry-sent.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/front_desk/log-counter-enquiry-sent.yaml deleted file mode 100644 index 26a8dba..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/front_desk/log-counter-enquiry-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our front desk. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: /front_desk - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/front_desk/log-counter-enquiry.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/front_desk/log-counter-enquiry.yaml deleted file mode 100644 index fdab619..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/front_desk/log-counter-enquiry.yaml +++ /dev/null @@ -1,31 +0,0 @@ -followup: false -name: Log counter enquiry? -description: '' -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: the question written down and sent to whoever has the case - description: For whoever is on the counter with a queue and a caller on the line. - action: /front_desk/log-counter-enquiry-sent - consequence: - - Send - record_as: enquiries - features: - - name: What happens next - description: It is open, then in hand, and ends answered. - icon: lucide:route - - name: Who reads it - description: Front desk. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: case_number_or_address - label: Case number or address - type: text - - name: what_you_want_to_know - label: What you want to know - type: textarea diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/index.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/index.yaml deleted file mode 100644 index 21c9960..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/index.yaml +++ /dev/null @@ -1,127 +0,0 @@ -name: What brings you here? -description: | - The building authority for twenty-one thousand people. Anything built, demolished, divided or changed in use is decided here: the drawings are checked against the zoning map, the neighbours and the other authorities have their say, and then the head of section signs. The same office inspects what is actually built, signs off finished work, and deals with building nobody applied for. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: What we do - description: '' - features: - - name: Permission to build it, and to know where the case stands - description: | - Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. - - name: What they think on the record, and answered in the decision - description: | - If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision. -- name: Have a look around - description: '' - features: - - name: See all appeals - description: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) - icon: lucide:list - - name: See all applications - description: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) - icon: lucide:list - - name: See all completions - description: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) - icon: lucide:list - - name: See all exemptions - description: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) - icon: lucide:list - - name: See all objections - description: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections) - icon: lucide:list -- name: Want to build - description: For an owner or a firm with something to build, divide or change. - action: /want-to-build - consequence: - - Continue - features: - - name: '' - description: To hear what we will allow before paying an architect, permission to build it, and to know where the case stands, to be allowed it anyway, with reasons on the record, the certificate that lets the building be used. -- name: Building near me - description: For someone who lives next to what is being built. - action: /building-near-me - consequence: - - Continue - features: - - name: '' - description: What they think on the record, and answered in the decision, to be told where it actually stands, us to go and look, and to hear that we did. -- name: the decision looked at again, by us and then by the board - description: For anyone with an interest who will not accept a decision of ours. - action: /received/appeal - consequence: - - Send - record_as: appeals - features: - - name: What you need - description: A decision from us less than three weeks old, and its case number. - icon: lucide:key - - name: What happens next - description: It is open, then we are looking at it again, then with the appeals board, and ends we changed our own decision, the board kept our decision, the board overturned us or withdrawn. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: case_number - label: Case number - type: text - - name: property - label: Property - type: text - - name: what_you_disagree_with - label: What you disagree with - type: textarea - - name: your_interest - label: Your interest - type: select - options: - - I applied - - I am a neighbour - - Other -- name: to be on the list, and then to file without asking again - description: For an architect or engineering firm that files for its clients. - action: /received/firm-approval - consequence: - - Send - record_as: firms - features: - - name: What happens next - description: It is open, then waiting on papers, then papers checked, and ends approved or declined. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: firm_name - label: Firm name - type: text - - name: org_number - label: Org number - type: text - - name: email - label: Email - type: email - - name: qualified_for - label: Qualified for - type: select - options: - - Design - - Execution - - Independent control - - Site management - multiple: true - - name: insurance_expires - label: Insurance expires - type: date - - name: insurance_document - label: Insurance document - type: text - optional: true diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/inspectors/_section.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/inspectors/_section.yaml deleted file mode 100644 index d41d53f..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/inspectors/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: inspectors diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/inspectors/index.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/inspectors/index.yaml deleted file mode 100644 index f6a397a..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/inspectors/index.yaml +++ /dev/null @@ -1,118 +0,0 @@ -name: What needs doing? -description: Everything inspectors looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Applications - description: Sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner. - action: /inspectors - consequence: - - Confirm - features: - - name: Applications - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: applications - requires_group: inspectors - transitions: [] -- name: Completions - description: Sent in by an owner or firm whose building work is finished. - action: /inspectors - consequence: - - Confirm - features: - - name: Completions - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: completions - requires_group: inspectors - transitions: [] -- name: Illegal building - description: Sent in by someone who can see building going up that nobody was told about. - action: /inspectors - consequence: - - Confirm - features: - - name: Illegal building - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: illegal_building - requires_group: inspectors - transitions: - - from: explained - to: resolved - label: Resolved - - from: explained - to: dropped - label: Nothing to pursue - - from: open - to: inspected - label: Inspected -- name: Inspections - description: Sent in by an inspector on a scaffold with gloves on and the wind blowing. - action: /inspectors - consequence: - - Confirm - features: - - name: Inspections - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: inspections - requires_group: inspectors - transitions: - - from: deviation - to: as_approved - label: Built as approved - - from: deviation - to: put_right - label: Put right - - from: open - to: deviation - label: Built differently -- name: what they found logged before they climb down - description: For an inspector on a scaffold with gloves on and the wind blowing. - action: /inspectors/inspection-finding - consequence: - - Open -- name: Invite someone into Inspectors - description: They get an account, a place in Inspectors, and a one-time link to set their own password or passkey. - action: /inspectors - consequence: - - Invite - invite: - group: inspectors - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite with the link it made. Mark it done when the person is in. - action: /inspectors - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: inspectors - transitions: - - from: open - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/inspectors/inspection-finding-sent.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/inspectors/inspection-finding-sent.yaml deleted file mode 100644 index ac8e8b2..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/inspectors/inspection-finding-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our inspectors. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: /inspectors - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/inspectors/inspection-finding.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/inspectors/inspection-finding.yaml deleted file mode 100644 index 18b5d32..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/inspectors/inspection-finding.yaml +++ /dev/null @@ -1,35 +0,0 @@ -followup: false -name: Inspection finding? -description: '' -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: what they found logged before they climb down - description: For an inspector on a scaffold with gloves on and the wind blowing. - action: /inspectors/inspection-finding-sent - consequence: - - Send - record_as: inspections - features: - - name: What happens next - description: It is open, then built differently, and ends built as approved, put right or handed to a case officer. - icon: lucide:route - - name: Who reads it - description: Inspectors. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: case_number - label: Case number - type: text - - name: site_address - label: Site address - type: text - - name: what_i_found - label: What i found - type: textarea - - name: where - label: Where - type: location - optional: true diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/appeal.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/appeal.yaml deleted file mode 100644 index 6148787..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/appeal.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: See all appeals - description: '' - action: /status/appeals - consequence: - - Open -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/case-status-enquiry.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/case-status-enquiry.yaml deleted file mode 100644 index 7150e83..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/case-status-enquiry.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our front desk. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/completion-request.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/completion-request.yaml deleted file mode 100644 index 93e37f8..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/completion-request.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: See all completions - description: '' - action: /status/completions - consequence: - - Open -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/exemption-request.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/exemption-request.yaml deleted file mode 100644 index 04c3fe3..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/exemption-request.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: See all exemptions - description: '' - action: /status/exemptions - consequence: - - Open -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/firm-approval.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/firm-approval.yaml deleted file mode 100644 index 71486fa..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/firm-approval.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/illegal-building-report.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/illegal-building-report.yaml deleted file mode 100644 index 1dad0c2..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/illegal-building-report.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our inspectors. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/objection.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/objection.yaml deleted file mode 100644 index c75f760..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/objection.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: See all objections - description: '' - action: /status/objections - consequence: - - Open -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/pre-application-meeting.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/pre-application-meeting.yaml deleted file mode 100644 index 71486fa..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/pre-application-meeting.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/small-works-application.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/small-works-application.yaml deleted file mode 100644 index 6e621eb..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/received/small-works-application.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: See all applications - description: '' - action: /status/applications - consequence: - - Open -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/section_head/_section.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/section_head/_section.yaml deleted file mode 100644 index 569137f..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/section_head/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: section_head diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/section_head/index.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/section_head/index.yaml deleted file mode 100644 index c8b9474..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/section_head/index.yaml +++ /dev/null @@ -1,356 +0,0 @@ -name: What needs doing? -description: Everything head of section looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Appeals - description: Sent in by anyone with an interest who will not accept a decision of ours. - action: /section_head - consequence: - - Confirm - features: - - name: Appeals - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: appeals - requires_group: section_head - transitions: - - from: before_the_board - to: changed_by_us - label: We changed our own decision - - from: reconsidered - to: before_the_board - label: With the appeals board -- name: Applications - description: Sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner. - action: /section_head - consequence: - - Confirm - features: - - name: Applications - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: applications - requires_group: section_head - transitions: - - from: complete - to: refused - label: Refused - - from: incomplete - to: refused - label: Refused - - from: on_hearing - to: refused - label: Refused - - from: open - to: refused - label: Refused - - from: recommended - to: approved - label: Approved - - from: recommended - to: approved_with_conditions - label: Approved on conditions - - from: recommended - to: refused - label: Refused -- name: Completions - description: Sent in by an owner or firm whose building work is finished. - action: /section_head - consequence: - - Confirm - features: - - name: Completions - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: completions - requires_group: section_head - transitions: - - from: checked - to: temporary_permission - label: Temporary permission to use - - from: checked - to: certificate_issued - label: Certificate issued - - from: checked - to: refused - label: Refused - - from: open - to: refused - label: Refused - - from: temporary_permission - to: certificate_issued - label: Certificate issued -- name: Exemptions - description: Sent in by someone whose plans break a rule in the zoning map. - action: /section_head - consequence: - - Confirm - features: - - name: Exemptions - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: exemptions - requires_group: section_head - transitions: - - from: county_answered - to: denied - label: Denied - - from: county_asked - to: denied - label: Denied - - from: open - to: denied - label: Denied - - from: recommended - to: granted - label: Granted - - from: recommended - to: denied - label: Denied -- name: Firms - description: Sent in by an architect or engineering firm that files for its clients. - action: /section_head - consequence: - - Confirm - features: - - name: Firms - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: firms - requires_group: section_head - transitions: - - from: checked - to: approved - label: Approved - - from: checked - to: declined - label: Declined - - from: open - to: declined - label: Declined - - from: papers_missing - to: declined - label: Declined -- name: Hearing answers - description: Sent in by a road, fire, heritage or county officer who has been asked about a case. - action: /section_head - consequence: - - Confirm - features: - - name: Hearing answers - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: hearing_answers - requires_group: section_head - transitions: [] -- name: Hearings - description: Sent in by a case officer sending a case out to the authority that must see it. - action: /section_head - consequence: - - Confirm - features: - - name: Hearings - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: hearings - requires_group: section_head - transitions: [] -- name: Illegal building - description: Sent in by someone who can see building going up that nobody was told about. - action: /section_head - consequence: - - Confirm - features: - - name: Illegal building - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: illegal_building - requires_group: section_head - transitions: - - from: inspected - to: fined - label: Fined - - from: open - to: fined - label: Fined -- name: Inspections - description: Sent in by an inspector on a scaffold with gloves on and the wind blowing. - action: /section_head - consequence: - - Confirm - features: - - name: Inspections - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: inspections - requires_group: section_head - transitions: - - from: deviation - to: escalated - label: Handed to a case officer - - from: open - to: escalated - label: Handed to a case officer -- name: Objections - description: Sent in by a neighbour who got a notice about what is planned next door. - action: /section_head - consequence: - - Confirm - features: - - name: Objections - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: objections - requires_group: section_head - transitions: [] -- name: Invite someone into Hearing bodies - description: They get an account, a place in Hearing bodies, and a one-time link to set their own password or passkey. - action: /section_head - consequence: - - Invite - invite: - group: agencies - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Appeals board - description: They get an account, a place in Appeals board, and a one-time link to set their own password or passkey. - action: /section_head - consequence: - - Invite - invite: - group: appeals_board - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Approved firms - description: They get an account, a place in Approved firms, and a one-time link to set their own password or passkey. - action: /section_head - consequence: - - Invite - invite: - group: approved_firms - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Case officers - description: They get an account, a place in Case officers, and a one-time link to set their own password or passkey. - action: /section_head - consequence: - - Invite - invite: - group: case_officers - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Front desk - description: They get an account, a place in Front desk, and a one-time link to set their own password or passkey. - action: /section_head - consequence: - - Invite - invite: - group: front_desk - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Inspectors - description: They get an account, a place in Inspectors, and a one-time link to set their own password or passkey. - action: /section_head - consequence: - - Invite - invite: - group: inspectors - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Head of section - description: They get an account, a place in Head of section, and a one-time link to set their own password or passkey. - action: /section_head - consequence: - - Invite - invite: - group: section_head - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite with the link it made. Mark it done when the person is in. - action: /section_head - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: section_head - transitions: - - from: open - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/status/appeals/index.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/status/appeals/index.yaml deleted file mode 100644 index 662ae18..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/status/appeals/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -name: What has been sent in about appeals? -description: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Appeals - description: '' - features: - - name: Appeals - description: Each row is one case and the stage it has reached. Names and contact details are not shown here. - resource: - source: - kind: kv - bucket: appeals - public: true - jq: '.[] | .responses |= {case_number: .case_number, property: .property, what_you_disagree_with: .what_you_disagree_with, your_interest: .your_interest}' -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/status/applications/index.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/status/applications/index.yaml deleted file mode 100644 index 3146555..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/status/applications/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -name: What has been sent in about applications? -description: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Applications - description: '' - features: - - name: Applications - description: Each row is one case and the stage it has reached. Names and contact details are not shown here. - resource: - source: - kind: kv - bucket: applications - public: true - jq: '.[] | .responses |= {drawings_url: .drawings_url, neighbours_notified: .neighbours_notified, property_address: .property_address, property_number: .property_number, site: .site, what_is_planned: .what_is_planned}' -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/status/completions/index.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/status/completions/index.yaml deleted file mode 100644 index c635e35..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/status/completions/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -name: What has been sent in about completions? -description: Everything sent in by an owner or firm whose building work is finished, and where each one stands. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Completions - description: '' - features: - - name: Completions - description: Each row is one case and the stage it has reached. Names and contact details are not shown here. - resource: - source: - kind: kv - bucket: completions - public: true - jq: '.[] | .responses |= {asking_for: .asking_for, case_number: .case_number, property_address: .property_address, what_is_outstanding: .what_is_outstanding, work_finished: .work_finished}' -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/status/exemptions/index.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/status/exemptions/index.yaml deleted file mode 100644 index 7bc890c..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/status/exemptions/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -name: What has been sent in about exemptions? -description: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Exemptions - description: '' - features: - - name: Exemptions - description: Each row is one case and the stage it has reached. Names and contact details are not shown here. - resource: - source: - kind: kv - bucket: exemptions - public: true - jq: '.[] | .responses |= {case_number: .case_number, site: .site, which_rule: .which_rule, why_it_should_be_allowed: .why_it_should_be_allowed}' -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/status/objections/index.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/status/objections/index.yaml deleted file mode 100644 index 416efb6..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/status/objections/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -name: What has been sent in about objections? -description: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Objections - description: '' - features: - - name: Objections - description: Each row is one case and the stage it has reached. Names and contact details are not shown here. - resource: - source: - kind: kv - bucket: objections - public: true - jq: '.[] | .responses |= {case_number: .case_number, your_objection: .your_objection, your_property: .your_property}' -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/want-to-build/index.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/questions/want-to-build/index.yaml deleted file mode 100644 index 4b3e350..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/questions/want-to-build/index.yaml +++ /dev/null @@ -1,156 +0,0 @@ -name: What do you need? -description: For an owner or a firm with something to build, divide or change. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: to hear what we will allow before paying an architect - description: For someone with an idea for a building and no drawings yet. - action: /received/pre-application-meeting - consequence: - - Send - record_as: meetings - features: - - name: What happens next - description: It is open, then scheduled, then we have met, and ends written advice sent or cancelled. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: name - label: Name - type: text - - name: email - label: Email - type: email - - name: property_address - label: Property address - type: text - - name: what_you_want - label: What you want - type: textarea - - name: phone - label: Phone - type: tel - optional: true - - name: site - label: Site - type: location - optional: true -- name: permission to build it, and to know where the case stands - description: For an owner applying for something small enough to file themselves. - action: /received/small-works-application - consequence: - - Send - record_as: applications - features: - - name: What happens next - description: It is open, then papers missing, then papers complete, then out to the neighbours and the agencies, then recommendation written, and ends approved, approved on conditions, refused or withdrawn. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: property_address - label: Property address - type: text - - name: property_number - label: Property number - type: text - - name: what_is_planned - label: What is planned - type: textarea - - name: neighbours_notified - label: Neighbours notified - type: select - options: - - Yes - - Not yet - - name: site - label: Site - type: location - optional: true - - name: drawings_url - label: Drawings url - type: text - optional: true -- name: to be allowed it anyway, with reasons on the record - description: For someone whose plans break a rule in the zoning map. - action: /received/exemption-request - consequence: - - Send - record_as: exemptions - features: - - name: What you need - description: An application already with us, and the case number from its receipt. - icon: lucide:key - - name: What happens next - description: It is open, then with the county, then the county has answered, then recommended, and ends granted, denied or withdrawn. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: case_number - label: Case number - type: text - - name: which_rule - label: Which rule - type: text - - name: why_it_should_be_allowed - label: Why it should be allowed - type: textarea - - name: site - label: Site - type: location - optional: true -- name: the certificate that lets the building be used - description: For an owner or firm whose building work is finished. - action: /received/completion-request - consequence: - - Send - record_as: completions - features: - - name: What you need - description: A case number, and the work finished or close enough to move in. - icon: lucide:key - - name: What happens next - description: It is open, then checked against the inspections, then temporary permission to use, and ends certificate issued or refused. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: case_number - label: Case number - type: text - - name: property_address - label: Property address - type: text - - name: work_finished - label: Work finished - type: date - - name: asking_for - label: Asking for - type: select - options: - - Completion certificate - - Temporary permission to move in - - name: what_is_outstanding - label: What is outstanding - type: textarea - optional: true diff --git a/vendor/trainer/runs/permits-2026-09-25/fixed/site.yaml b/vendor/trainer/runs/permits-2026-09-25/fixed/site.yaml deleted file mode 100644 index 9d30842..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/fixed/site.yaml +++ /dev/null @@ -1,5 +0,0 @@ -title: Vestmark kommune - Building and Planning -lang: en -mail: - from: Vestmark Building and Planning - reply_to: byggesak@vestmark.example diff --git a/vendor/trainer/runs/permits-2026-09-25/needs.yaml b/vendor/trainer/runs/permits-2026-09-25/needs.yaml deleted file mode 100644 index e8fc8a7..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/needs.yaml +++ /dev/null @@ -1,499 +0,0 @@ -needs: -- id: pre-application-meeting - who: someone with an idea for a building and no drawings yet - wants: to hear what we will allow before paying an architect - enters: / - via: Want to build - lands_in: meetings - handled_by: case_officers - stages: - - open - - scheduled - - met - - advised - - cancelled - done_when: - - advised - - cancelled - success: - - advised - max_steps: 2 - max_fields: 5 - stage_words: - open: open - scheduled: scheduled - met: we have met - advised: written advice sent - cancelled: cancelled - also_moved_by: - - front_desk -- id: small-works-application - who: an owner applying for something small enough to file themselves - wants: permission to build it, and to know where the case stands - enters: / - via: Want to build - lands_in: applications - handled_by: case_officers - stages: - - open - - incomplete - - complete - - on_hearing - - recommended - - approved - - approved_with_conditions - - refused - - withdrawn - done_when: - - approved - - approved_with_conditions - - refused - - withdrawn - success: - - approved - - approved_with_conditions - max_steps: 2 - max_fields: 6 - stage_words: - open: open - incomplete: papers missing - complete: papers complete - on_hearing: out to the neighbours and the agencies - recommended: recommendation written - approved: approved - approved_with_conditions: approved on conditions - refused: refused - withdrawn: withdrawn - also_moved_by: - - section_head -- id: exemption-request - who: someone whose plans break a rule in the zoning map - wants: to be allowed it anyway, with reasons on the record - enters: / - via: Want to build - lands_in: exemptions - handled_by: case_officers - stages: - - open - - county_asked - - county_answered - - recommended - - granted - - denied - - withdrawn - done_when: - - granted - - denied - - withdrawn - success: - - granted - max_steps: 2 - max_fields: 4 - stage_words: - open: open - county_asked: with the county - county_answered: the county has answered - recommended: recommended - granted: granted - denied: denied - withdrawn: withdrawn - also_moved_by: - - agencies - - section_head -- id: completion-request - who: an owner or firm whose building work is finished - wants: the certificate that lets the building be used - enters: / - via: Want to build - lands_in: completions - handled_by: case_officers - stages: - - open - - checked - - temporary_permission - - certificate_issued - - refused - done_when: - - certificate_issued - - refused - success: - - certificate_issued - max_steps: 2 - max_fields: 5 - stage_words: - open: open - checked: checked against the inspections - temporary_permission: temporary permission to use - certificate_issued: certificate issued - refused: refused - also_moved_by: - - section_head -- id: objection - who: a neighbour who got a notice about what is planned next door - wants: what they think on the record, and answered in the decision - enters: / - via: Building near me - lands_in: objections - handled_by: case_officers - stages: - - open - - registered - - answered_by_applicant - - addressed - - withdrawn - done_when: - - addressed - - withdrawn - success: - - addressed - max_steps: 2 - max_fields: 4 - stage_words: - open: open - registered: on the case file - answered_by_applicant: the applicant has answered - addressed: answered in the decision - withdrawn: withdrawn - also_moved_by: - - approved_firms -- id: case-status-enquiry - who: someone waiting on a case and getting nothing back - wants: to be told where it actually stands - enters: / - via: Building near me - lands_in: enquiries - handled_by: front_desk - stages: - - open - - in_hand - - answered - done_when: - - answered - success: - - answered - max_steps: 2 - max_fields: 3 - stage_words: - open: open - in_hand: in hand - answered: answered - also_moved_by: - - case_officers -- id: illegal-building-report - who: someone who can see building going up that nobody was told about - wants: us to go and look, and to hear that we did - enters: / - via: Building near me - lands_in: illegal_building - handled_by: inspectors - stages: - - open - - inspected - - owner_asked - - explained - - resolved - - fined - - dropped - done_when: - - resolved - - fined - - dropped - success: - - resolved - - dropped - max_steps: 2 - max_fields: 3 - stage_words: - open: open - inspected: inspected - owner_asked: the owner has been written to - explained: the owner has answered - resolved: resolved - fined: fined - dropped: nothing to pursue - also_moved_by: - - case_officers - - section_head -- id: appeal - who: anyone with an interest who will not accept a decision of ours - wants: the decision looked at again, by us and then by the board - enters: / - via: the decision looked at again, by us and then by the board - lands_in: appeals - handled_by: case_officers - stages: - - open - - reconsidered - - changed_by_us - - before_the_board - - upheld - - overturned - - withdrawn - done_when: - - changed_by_us - - upheld - - overturned - - withdrawn - success: - - changed_by_us - - upheld - max_steps: 1 - max_fields: 5 - stage_words: - open: open - reconsidered: we are looking at it again - changed_by_us: we changed our own decision - before_the_board: with the appeals board - upheld: the board kept our decision - overturned: the board overturned us - withdrawn: withdrawn - also_moved_by: - - appeals_board - - section_head -- id: firm-approval - who: an architect or engineering firm that files for its clients - wants: to be on the list, and then to file without asking again - enters: / - via: to be on the list, and then to file without asking again - lands_in: firms - handled_by: case_officers - stages: - - open - - papers_missing - - checked - - approved - - declined - done_when: - - approved - - declined - success: - - approved - max_steps: 1 - max_fields: 6 - stage_words: - open: open - papers_missing: waiting on papers - checked: papers checked - approved: approved - declined: declined - also_moved_by: - - section_head -- id: permit-application - who: an approved firm filing on behalf of an owner - wants: a decision inside twelve weeks, and to know when the clock stops - enters: /approved_firms/permit-application - via: a decision inside twelve weeks, and to know when the clock stops - lands_in: applications - handled_by: case_officers - stages: - - open - - incomplete - - complete - - on_hearing - - recommended - - approved - - approved_with_conditions - - refused - - withdrawn - done_when: - - approved - - approved_with_conditions - - refused - - withdrawn - success: - - approved - - approved_with_conditions - max_steps: 1 - max_fields: 6 - stage_words: - open: open - incomplete: papers missing - complete: papers complete - on_hearing: out to the neighbours and the agencies - recommended: recommendation written - approved: approved - approved_with_conditions: approved on conditions - refused: refused - withdrawn: withdrawn - enters_as: approved_firms - also_moved_by: - - section_head -- id: log-counter-enquiry - who: whoever is on the counter with a queue and a caller on the line - wants: the question written down and sent to whoever has the case - enters: /front_desk/log-counter-enquiry - via: the question written down and sent to whoever has the case - lands_in: enquiries - handled_by: front_desk - stages: - - open - - in_hand - - answered - done_when: - - answered - success: - - answered - max_steps: 1 - max_fields: 3 - stage_words: - open: open - in_hand: in hand - answered: answered - enters_as: front_desk - also_moved_by: - - case_officers -- id: request-hearing - who: a case officer sending a case out to the authority that must see it - wants: an answer by the deadline, or a record that none came - enters: /case_officers/request-hearing - via: an answer by the deadline, or a record that none came - lands_in: hearings - handled_by: case_officers - stages: - - open - - answered - - no_answer - - cancelled - done_when: - - answered - - no_answer - - cancelled - success: - - answered - max_steps: 1 - max_fields: 4 - stage_words: - open: open - answered: answered - no_answer: the deadline passed with no answer - cancelled: cancelled - enters_as: case_officers - also_moved_by: - - agencies -- id: hearing-answer - who: a road, fire, heritage or county officer who has been asked about a case - wants: their answer on the file, in their own words - enters: /agencies/hearing-answer - via: their answer on the file, in their own words - lands_in: hearing_answers - handled_by: case_officers - stages: - - open - - read - - followed - - set_aside - done_when: - - followed - - set_aside - success: - - followed - max_steps: 1 - max_fields: 4 - stage_words: - open: open - read: read by the case officer - followed: followed in the decision - set_aside: set aside with reasons - enters_as: agencies -- id: inspection-finding - who: an inspector on a scaffold with gloves on and the wind blowing - wants: what they found logged before they climb down - enters: /inspectors/inspection-finding - via: what they found logged before they climb down - lands_in: inspections - handled_by: inspectors - stages: - - open - - as_approved - - deviation - - put_right - - escalated - done_when: - - as_approved - - put_right - - escalated - success: - - as_approved - - put_right - max_steps: 1 - max_fields: 3 - stage_words: - open: open - as_approved: built as approved - deviation: built differently - put_right: put right - escalated: handed to a case officer - enters_as: inspectors - also_moved_by: - - case_officers - - section_head -personas: -- id: garage-owner - need: pre-application-meeting - text: We want to put a double garage where the old shed is. Before I pay an architect I'd like to know whether you'll even allow it, because the neighbour says it's too close to the road. -- id: shop-to-flats - need: pre-application-meeting - text: I own the old grocery on Torget and want to make four flats out of it. There are a lot of questions - parking, fire, the facade is listed. Can we sit down with someone? -- id: firm-files-extension - need: permit-application - text: We are the responsible applicant for an extension at Bjorkeveien 14. Drawings, site plan and the neighbour notices are all ready. We file maybe forty of these a year. -- id: owner-small-window - need: permit-application - text: I want to put a dormer window in my roof. The man at the counter said I have to apply even though it's small. -- id: missing-drawings - need: permit-application - text: You wrote that our section drawing is missing and the case is on hold. I've got it here now, where do I send it so the clock starts again? -- id: too-close-to-boundary - need: exemption-request - text: The garage ends up one and a half metres from the boundary and the plan says four. We are asking you to allow it anyway - the ground falls away steeply everywhere else on the plot. -- id: neighbour-view - need: objection - text: I got a notice about the extension at number 14. It takes the afternoon sun off my entire terrace and I want that on the record before you decide anything. -- id: neighbour-parking - need: objection - text: The flats they want to build in the old grocery have four parking places for four flats and everyone here already parks on the street. I object. -- id: road-authority - need: hearing-answer - text: 'Regarding your case 2026/418: the access onto the county road is within the sight line and we cannot accept it as drawn. Our formal reply is attached.' -- id: fire-service - need: hearing-answer - text: We have looked at the conversion on Torget. We have no objection provided the stairwell is upgraded. Reference your case 2026/501. -- id: refused-applicant - need: appeal - text: You refused our exemption on the ninth. We don't accept the reasoning - you've allowed the same thing twice in the same street. We're appealing. -- id: neighbour-appeals - need: appeal - text: You approved the extension next door even though I objected. I'm appealing the decision. What do I need to send? -- id: board-member - need: appeal - text: I sit on the appeals board. I need the case, our own decision, and what the neighbours wrote, before Tuesday. -- id: inspector-on-roof - need: inspection-finding - text: I'm up on the scaffold at Bjorkeveien. The fire wall isn't built to the drawing at all. I've got gloves on and it's blowing. I want this logged before I climb down. -- id: inspector-all-good - need: inspection-finding - text: Been out at Torget. Everything is as approved. Nothing to report but I have to record that I was there. -- id: firm-wants-certificate - need: completion-request - text: The work at Bjorkeveien 14 is finished and inspected. We're asking for the completion certificate so the owners can get their mortgage released. -- id: wants-to-move-in - need: completion-request - text: The house is done apart from the outside steps, which we can't pour until spring. The family has sold their flat. Can we get a temporary permission to move in? -- id: something-behind-fence - need: illegal-building-report - text: There's a large structure going up behind the fence at Solbakken 7. Nobody has had a notice about it and it's been going on for two weeks. -- id: owner-explains - need: illegal-building-report - text: I got your letter about the terrace. I genuinely did not know it needed an application, it's been there since we moved in. What happens now? -- id: new-firm - need: firm-approval - text: We are a three-person architecture firm that has just started. We want to be approved so we can file applications for our clients in your municipality. -- id: firm-insurance-lapsed - need: firm-approval - text: You wrote that our liability insurance certificate has expired. We have renewed it, here it is. -- id: counter-phone-call - need: log-counter-enquiry - text: A woman rang about the case behind her house. Wants to know where it stands. I'm at the counter and there's a queue - I need to write it down and send it to whoever has that case. -- id: where-is-my-case - need: case-status-enquiry - text: I sent in my application five weeks ago and I've heard nothing. Is anyone looking at it? Is it in the six weeks with the neighbours or is it waiting on me? diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/agencies/_section.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/agencies/_section.yaml deleted file mode 100644 index 71cfb91..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/agencies/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: agencies diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/agencies/hearing-answer-sent.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/agencies/hearing-answer-sent.yaml deleted file mode 100644 index 8bc747e..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/agencies/hearing-answer-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: /agencies - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/agencies/hearing-answer.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/agencies/hearing-answer.yaml deleted file mode 100644 index 23c7b7e..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/agencies/hearing-answer.yaml +++ /dev/null @@ -1,46 +0,0 @@ -followup: false -name: Hearing answer? -description: '' -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: their answer on the file, in their own words - description: For a road, fire, heritage or county officer who has been asked about a case. - action: /agencies/hearing-answer-sent - consequence: - - Send - record_as: hearing_answers - features: - - name: What you need - description: The hearing letter we sent you, which has the case number on it. - icon: lucide:key - - name: What happens next - description: It is open, then read by the case officer, and ends followed in the decision or set aside with reasons. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: case_number - label: Case number - type: text - - name: which_authority - label: Which authority - type: select - options: - - Road authority - - Fire service - - Heritage office - - The county - - name: our_answer - label: Our answer - type: select - options: - - No objection - - Objection - - Conditions required - - name: what_we_say - label: What we say - type: textarea diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/agencies/index.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/agencies/index.yaml deleted file mode 100644 index 485074a..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/agencies/index.yaml +++ /dev/null @@ -1,78 +0,0 @@ -name: What needs doing? -description: Everything hearing bodies looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Exemptions - description: Sent in by someone whose plans break a rule in the zoning map. - action: /agencies - consequence: - - Confirm - features: - - name: Exemptions - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: exemptions - requires_group: agencies - transitions: - - from: county_asked - to: county_answered - label: The county has answered -- name: Hearings - description: Sent in by a case officer sending a case out to the authority that must see it. - action: /agencies - consequence: - - Confirm - features: - - name: Hearings - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: hearings - requires_group: agencies - transitions: - - from: open - to: answered - label: Answered -- name: their answer on the file, in their own words - description: For a road, fire, heritage or county officer who has been asked about a case. - action: /agencies/hearing-answer - consequence: - - Open -- name: Invite someone into Hearing bodies - description: They get an account, a place in Hearing bodies, and a one-time link to set their own password or passkey. - action: /agencies - consequence: - - Invite - invite: - group: agencies - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite with the link it made. Mark it done when the person is in. - action: /agencies - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: agencies - transitions: - - from: open - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/appeals_board/_section.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/appeals_board/_section.yaml deleted file mode 100644 index a23502c..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/appeals_board/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: appeals_board diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/appeals_board/index.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/appeals_board/index.yaml deleted file mode 100644 index fb84700..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/appeals_board/index.yaml +++ /dev/null @@ -1,59 +0,0 @@ -name: What needs doing? -description: Everything appeals board looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Appeals - description: Sent in by anyone with an interest who will not accept a decision of ours. - action: /appeals_board - consequence: - - Confirm - features: - - name: Appeals - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: appeals - requires_group: appeals_board - transitions: - - from: before_the_board - to: overturned - label: The board overturned us - - from: before_the_board - to: upheld - label: The board kept our decision -- name: Invite someone into Appeals board - description: They get an account, a place in Appeals board, and a one-time link to set their own password or passkey. - action: /appeals_board - consequence: - - Invite - invite: - group: appeals_board - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite with the link it made. Mark it done when the person is in. - action: /appeals_board - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: appeals_board - transitions: - - from: open - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/approved_firms/_section.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/approved_firms/_section.yaml deleted file mode 100644 index 85f1f10..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/approved_firms/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: approved_firms diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/approved_firms/index.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/approved_firms/index.yaml deleted file mode 100644 index bc823e4..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/approved_firms/index.yaml +++ /dev/null @@ -1,61 +0,0 @@ -name: What needs doing? -description: Everything approved firms looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Objections - description: Sent in by a neighbour who got a notice about what is planned next door. - action: /approved_firms - consequence: - - Confirm - features: - - name: Objections - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: objections - requires_group: approved_firms - transitions: - - from: registered - to: answered_by_applicant - label: The applicant has answered -- name: a decision inside twelve weeks, and to know when the clock stops - description: For an approved firm filing on behalf of an owner. - action: /approved_firms/permit-application - consequence: - - Open -- name: Invite someone into Approved firms - description: They get an account, a place in Approved firms, and a one-time link to set their own password or passkey. - action: /approved_firms - consequence: - - Invite - invite: - group: approved_firms - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite with the link it made. Mark it done when the person is in. - action: /approved_firms - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: approved_firms - transitions: - - from: open - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/approved_firms/permit-application-sent.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/approved_firms/permit-application-sent.yaml deleted file mode 100644 index 6914aa3..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/approved_firms/permit-application-sent.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: See all applications - description: '' - action: /status/applications - consequence: - - Open -- name: Back - description: '' - action: /approved_firms - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/approved_firms/permit-application.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/approved_firms/permit-application.yaml deleted file mode 100644 index 50d5e38..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/approved_firms/permit-application.yaml +++ /dev/null @@ -1,48 +0,0 @@ -followup: false -name: Permit application? -description: '' -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: a decision inside twelve weeks, and to know when the clock stops - description: For an approved firm filing on behalf of an owner. - action: /approved_firms/permit-application-sent - consequence: - - Send - record_as: applications - features: - - name: What happens next - description: It is open, then papers missing, then papers complete, then out to the neighbours and the agencies, then recommendation written, and ends approved, approved on conditions, refused or withdrawn. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: property_address - label: Property address - type: text - - name: property_number - label: Property number - type: text - - name: what_is_planned - label: What is planned - type: textarea - - name: neighbours_notified - label: Neighbours notified - type: select - options: - - Yes - - Not yet - - name: site - label: Site - type: location - optional: true - - name: drawings_url - label: Drawings url - type: text - optional: true diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/building-near-me/index.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/building-near-me/index.yaml deleted file mode 100644 index caf6e50..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/building-near-me/index.yaml +++ /dev/null @@ -1,88 +0,0 @@ -name: What do you need? -description: For someone who lives next to what is being built. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: what they think on the record, and answered in the decision - description: For a neighbour who got a notice about what is planned next door. - action: /received/objection - consequence: - - Send - record_as: objections - features: - - name: What you need - description: The notice that came in the post, which has the case number on it. - icon: lucide:key - - name: What happens next - description: It is open, then on the case file, then the applicant has answered, and ends answered in the decision or withdrawn. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: case_number - label: Case number - type: text - - name: your_property - label: Your property - type: text - - name: your_objection - label: Your objection - type: textarea -- name: to be told where it actually stands - description: For someone waiting on a case and getting nothing back. - action: /received/case-status-enquiry - consequence: - - Send - record_as: enquiries - features: - - name: What happens next - description: It is open, then in hand, and ends answered. - icon: lucide:route - - name: Who reads it - description: Front desk. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: case_number_or_address - label: Case number or address - type: text - - name: what_you_want_to_know - label: What you want to know - type: textarea -- name: us to go and look, and to hear that we did - description: For someone who can see building going up that nobody was told about. - action: /received/illegal-building-report - consequence: - - Send - record_as: illegal_building - features: - - name: What happens next - description: It is open, then inspected, then the owner has been written to, then the owner has answered, and ends resolved, fined or nothing to pursue. - icon: lucide:route - - name: Who reads it - description: Inspectors. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: address - label: Address - type: text - - name: what_you_saw - label: What you saw - type: textarea - - name: where - label: Where - type: location - optional: true diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/case_officers/_section.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/case_officers/_section.yaml deleted file mode 100644 index 0eb3949..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/case_officers/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: case_officers diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/case_officers/index.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/case_officers/index.yaml deleted file mode 100644 index d954b6c..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/case_officers/index.yaml +++ /dev/null @@ -1,401 +0,0 @@ -name: What needs doing? -description: Everything case officers looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Appeals - description: Sent in by anyone with an interest who will not accept a decision of ours. - action: /case_officers - consequence: - - Confirm - features: - - name: Appeals - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: appeals - requires_group: case_officers - transitions: - - from: open - to: reconsidered - label: We are looking at it again -- name: Applications - description: Sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner. - action: /case_officers - consequence: - - Confirm - features: - - name: Applications - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: applications - requires_group: case_officers - transitions: - - from: complete - to: on_hearing - label: Out to the neighbours and the agencies - - from: complete - to: incomplete - label: Papers missing - - from: incomplete - to: complete - label: Papers complete - - from: on_hearing - to: recommended - label: Recommendation written - - from: on_hearing - to: incomplete - label: Papers missing - - from: open - to: complete - label: Papers complete - - from: open - to: incomplete - label: Papers missing -- name: Completions - description: Sent in by an owner or firm whose building work is finished. - action: /case_officers - consequence: - - Confirm - features: - - name: Completions - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: completions - requires_group: case_officers - transitions: - - from: open - to: checked - label: Checked against the inspections -- name: Enquiries - description: Sent in by someone waiting on a case and getting nothing back or whoever is on the counter with a queue and a caller on the line. - action: /case_officers - consequence: - - Confirm - features: - - name: Enquiries - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: enquiries - requires_group: case_officers - transitions: - - from: open - to: in_hand - label: In hand -- name: Exemptions - description: Sent in by someone whose plans break a rule in the zoning map. - action: /case_officers - consequence: - - Confirm - features: - - name: Exemptions - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: exemptions - requires_group: case_officers - transitions: - - from: county_answered - to: recommended - label: Recommended - - from: open - to: county_asked - label: With the county -- name: Firms - description: Sent in by an architect or engineering firm that files for its clients. - action: /case_officers - consequence: - - Confirm - features: - - name: Firms - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: firms - requires_group: case_officers - transitions: - - from: open - to: papers_missing - label: Waiting on papers - - from: open - to: checked - label: Papers checked - - from: papers_missing - to: checked - label: Papers checked -- name: Hearing answers - description: Sent in by a road, fire, heritage or county officer who has been asked about a case. - action: /case_officers - consequence: - - Confirm - features: - - name: Hearing answers - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: hearing_answers - requires_group: case_officers - transitions: - - from: open - to: read - label: Read by the case officer - - from: open - to: set_aside - label: Set aside with reasons - - from: read - to: followed - label: Followed in the decision - - from: read - to: set_aside - label: Set aside with reasons -- name: Hearings - description: Sent in by a case officer sending a case out to the authority that must see it. - action: /case_officers - consequence: - - Confirm - features: - - name: Hearings - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: hearings - requires_group: case_officers - transitions: - - from: open - to: no_answer - label: The deadline passed with no answer - - from: open - to: cancelled - label: Cancelled -- name: Illegal building - description: Sent in by someone who can see building going up that nobody was told about. - action: /case_officers - consequence: - - Confirm - features: - - name: Illegal building - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: illegal_building - requires_group: case_officers - transitions: - - from: inspected - to: owner_asked - label: The owner has been written to - - from: owner_asked - to: explained - label: The owner has answered -- name: Inspections - description: Sent in by an inspector on a scaffold with gloves on and the wind blowing. - action: /case_officers - consequence: - - Confirm - features: - - name: Inspections - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: inspections - requires_group: case_officers - transitions: - - from: deviation - to: escalated - label: Handed to a case officer - - from: open - to: escalated - label: Handed to a case officer -- name: Meetings - description: Sent in by someone with an idea for a building and no drawings yet. - action: /case_officers - consequence: - - Confirm - features: - - name: Meetings - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: meetings - requires_group: case_officers - transitions: - - from: met - to: advised - label: Written advice sent - - from: open - to: scheduled - label: Scheduled - - from: scheduled - to: met - label: We have met -- name: Objections - description: Sent in by a neighbour who got a notice about what is planned next door. - action: /case_officers - consequence: - - Confirm - features: - - name: Objections - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: objections - requires_group: case_officers - transitions: - - from: answered_by_applicant - to: addressed - label: Answered in the decision - - from: open - to: registered - label: On the case file - - from: registered - to: answered_by_applicant - label: The applicant has answered -- name: an answer by the deadline, or a record that none came - description: For a case officer sending a case out to the authority that must see it. - action: /case_officers/request-hearing - consequence: - - Open -- name: Invite someone into Hearing bodies - description: They get an account, a place in Hearing bodies, and a one-time link to set their own password or passkey. - action: /case_officers - consequence: - - Invite - invite: - group: agencies - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Appeals board - description: They get an account, a place in Appeals board, and a one-time link to set their own password or passkey. - action: /case_officers - consequence: - - Invite - invite: - group: appeals_board - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Approved firms - description: They get an account, a place in Approved firms, and a one-time link to set their own password or passkey. - action: /case_officers - consequence: - - Invite - invite: - group: approved_firms - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Case officers - description: They get an account, a place in Case officers, and a one-time link to set their own password or passkey. - action: /case_officers - consequence: - - Invite - invite: - group: case_officers - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Front desk - description: They get an account, a place in Front desk, and a one-time link to set their own password or passkey. - action: /case_officers - consequence: - - Invite - invite: - group: front_desk - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Inspectors - description: They get an account, a place in Inspectors, and a one-time link to set their own password or passkey. - action: /case_officers - consequence: - - Invite - invite: - group: inspectors - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Head of section - description: They get an account, a place in Head of section, and a one-time link to set their own password or passkey. - action: /case_officers - consequence: - - Invite - invite: - group: section_head - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite with the link it made. Mark it done when the person is in. - action: /case_officers - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: case_officers - transitions: - - from: open - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/case_officers/request-hearing-sent.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/case_officers/request-hearing-sent.yaml deleted file mode 100644 index 9a588a6..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/case_officers/request-hearing-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: /case_officers - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/case_officers/request-hearing.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/case_officers/request-hearing.yaml deleted file mode 100644 index 7bd9196..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/case_officers/request-hearing.yaml +++ /dev/null @@ -1,43 +0,0 @@ -followup: false -name: Request hearing? -description: '' -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: an answer by the deadline, or a record that none came - description: For a case officer sending a case out to the authority that must see it. - action: /case_officers/request-hearing-sent - consequence: - - Send - record_as: hearings - features: - - name: What happens next - description: It is open, and ends answered, the deadline passed with no answer or cancelled. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: case_number - label: Case number - type: text - - name: which_authority - label: Which authority - type: select - options: - - Road authority - - Fire service - - Heritage office - - The county - - name: what_we_ask - label: What we ask - type: textarea - - name: answer_by - label: Answer by - type: date - - name: site - label: Site - type: location - optional: true diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/decide/appeal.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/decide/appeal.yaml deleted file mode 100644 index e042d0b..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/decide/appeal.yaml +++ /dev/null @@ -1,13 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Withdrawn - description: '' - self_transition: - bucket: appeals - to: withdrawn - from: - - before_the_board - - open - - reconsidered - label: Withdrawn diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/decide/exemption-request.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/decide/exemption-request.yaml deleted file mode 100644 index 0f2ef89..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/decide/exemption-request.yaml +++ /dev/null @@ -1,14 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Withdrawn - description: '' - self_transition: - bucket: exemptions - to: withdrawn - from: - - county_answered - - county_asked - - open - - recommended - label: Withdrawn diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/decide/firm-approval.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/decide/firm-approval.yaml deleted file mode 100644 index 3946a5c..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/decide/firm-approval.yaml +++ /dev/null @@ -1,12 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Checked - description: '' - self_transition: - bucket: firms - to: checked - from: - - open - - papers_missing - label: Checked diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/decide/objection.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/decide/objection.yaml deleted file mode 100644 index 211161b..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/decide/objection.yaml +++ /dev/null @@ -1,13 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Withdrawn - description: '' - self_transition: - bucket: objections - to: withdrawn - from: - - answered_by_applicant - - open - - registered - label: Withdrawn diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/decide/permit-application.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/decide/permit-application.yaml deleted file mode 100644 index 4343447..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/decide/permit-application.yaml +++ /dev/null @@ -1,24 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Complete - description: '' - self_transition: - bucket: applications - to: complete - from: - - incomplete - - open - label: Complete -- name: Withdrawn - description: '' - self_transition: - bucket: applications - to: withdrawn - from: - - complete - - incomplete - - on_hearing - - open - - recommended - label: Withdrawn diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/decide/pre-application-meeting.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/decide/pre-application-meeting.yaml deleted file mode 100644 index 3f67819..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/decide/pre-application-meeting.yaml +++ /dev/null @@ -1,13 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Cancelled - description: '' - self_transition: - bucket: meetings - to: cancelled - from: - - met - - open - - scheduled - label: Cancelled diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/decide/small-works-application.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/decide/small-works-application.yaml deleted file mode 100644 index 4343447..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/decide/small-works-application.yaml +++ /dev/null @@ -1,24 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Complete - description: '' - self_transition: - bucket: applications - to: complete - from: - - incomplete - - open - label: Complete -- name: Withdrawn - description: '' - self_transition: - bucket: applications - to: withdrawn - from: - - complete - - incomplete - - on_hearing - - open - - recommended - label: Withdrawn diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/front_desk/_section.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/front_desk/_section.yaml deleted file mode 100644 index 8b76bf9..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/front_desk/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: front_desk diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/front_desk/index.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/front_desk/index.yaml deleted file mode 100644 index b36f594..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/front_desk/index.yaml +++ /dev/null @@ -1,157 +0,0 @@ -name: What needs doing? -description: Everything front desk looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Appeals - description: Sent in by anyone with an interest who will not accept a decision of ours. - action: /front_desk - consequence: - - Confirm - features: - - name: Appeals - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: appeals - requires_group: front_desk - transitions: [] -- name: Applications - description: Sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner. - action: /front_desk - consequence: - - Confirm - features: - - name: Applications - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: applications - requires_group: front_desk - transitions: [] -- name: Enquiries - description: Sent in by someone waiting on a case and getting nothing back or whoever is on the counter with a queue and a caller on the line. - action: /front_desk - consequence: - - Confirm - features: - - name: Enquiries - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: enquiries - requires_group: front_desk - transitions: - - from: in_hand - to: answered - label: Answered - - from: open - to: in_hand - label: In hand -- name: Firms - description: Sent in by an architect or engineering firm that files for its clients. - action: /front_desk - consequence: - - Confirm - features: - - name: Firms - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: firms - requires_group: front_desk - transitions: [] -- name: Hearing answers - description: Sent in by a road, fire, heritage or county officer who has been asked about a case. - action: /front_desk - consequence: - - Confirm - features: - - name: Hearing answers - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: hearing_answers - requires_group: front_desk - transitions: [] -- name: Hearings - description: Sent in by a case officer sending a case out to the authority that must see it. - action: /front_desk - consequence: - - Confirm - features: - - name: Hearings - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: hearings - requires_group: front_desk - transitions: [] -- name: Meetings - description: Sent in by someone with an idea for a building and no drawings yet. - action: /front_desk - consequence: - - Confirm - features: - - name: Meetings - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: meetings - requires_group: front_desk - transitions: - - from: met - to: cancelled - label: Cancelled - - from: open - to: cancelled - label: Cancelled - - from: scheduled - to: cancelled - label: Cancelled -- name: the question written down and sent to whoever has the case - description: For whoever is on the counter with a queue and a caller on the line. - action: /front_desk/log-counter-enquiry - consequence: - - Open -- name: Invite someone into Front desk - description: They get an account, a place in Front desk, and a one-time link to set their own password or passkey. - action: /front_desk - consequence: - - Invite - invite: - group: front_desk - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite with the link it made. Mark it done when the person is in. - action: /front_desk - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: front_desk - transitions: - - from: open - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/front_desk/log-counter-enquiry-sent.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/front_desk/log-counter-enquiry-sent.yaml deleted file mode 100644 index 26a8dba..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/front_desk/log-counter-enquiry-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our front desk. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: /front_desk - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/front_desk/log-counter-enquiry.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/front_desk/log-counter-enquiry.yaml deleted file mode 100644 index fdab619..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/front_desk/log-counter-enquiry.yaml +++ /dev/null @@ -1,31 +0,0 @@ -followup: false -name: Log counter enquiry? -description: '' -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: the question written down and sent to whoever has the case - description: For whoever is on the counter with a queue and a caller on the line. - action: /front_desk/log-counter-enquiry-sent - consequence: - - Send - record_as: enquiries - features: - - name: What happens next - description: It is open, then in hand, and ends answered. - icon: lucide:route - - name: Who reads it - description: Front desk. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: case_number_or_address - label: Case number or address - type: text - - name: what_you_want_to_know - label: What you want to know - type: textarea diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/index.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/index.yaml deleted file mode 100644 index 21c9960..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/index.yaml +++ /dev/null @@ -1,127 +0,0 @@ -name: What brings you here? -description: | - The building authority for twenty-one thousand people. Anything built, demolished, divided or changed in use is decided here: the drawings are checked against the zoning map, the neighbours and the other authorities have their say, and then the head of section signs. The same office inspects what is actually built, signs off finished work, and deals with building nobody applied for. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: What we do - description: '' - features: - - name: Permission to build it, and to know where the case stands - description: | - Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. - - name: What they think on the record, and answered in the decision - description: | - If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision. -- name: Have a look around - description: '' - features: - - name: See all appeals - description: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) - icon: lucide:list - - name: See all applications - description: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) - icon: lucide:list - - name: See all completions - description: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) - icon: lucide:list - - name: See all exemptions - description: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) - icon: lucide:list - - name: See all objections - description: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections) - icon: lucide:list -- name: Want to build - description: For an owner or a firm with something to build, divide or change. - action: /want-to-build - consequence: - - Continue - features: - - name: '' - description: To hear what we will allow before paying an architect, permission to build it, and to know where the case stands, to be allowed it anyway, with reasons on the record, the certificate that lets the building be used. -- name: Building near me - description: For someone who lives next to what is being built. - action: /building-near-me - consequence: - - Continue - features: - - name: '' - description: What they think on the record, and answered in the decision, to be told where it actually stands, us to go and look, and to hear that we did. -- name: the decision looked at again, by us and then by the board - description: For anyone with an interest who will not accept a decision of ours. - action: /received/appeal - consequence: - - Send - record_as: appeals - features: - - name: What you need - description: A decision from us less than three weeks old, and its case number. - icon: lucide:key - - name: What happens next - description: It is open, then we are looking at it again, then with the appeals board, and ends we changed our own decision, the board kept our decision, the board overturned us or withdrawn. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: case_number - label: Case number - type: text - - name: property - label: Property - type: text - - name: what_you_disagree_with - label: What you disagree with - type: textarea - - name: your_interest - label: Your interest - type: select - options: - - I applied - - I am a neighbour - - Other -- name: to be on the list, and then to file without asking again - description: For an architect or engineering firm that files for its clients. - action: /received/firm-approval - consequence: - - Send - record_as: firms - features: - - name: What happens next - description: It is open, then waiting on papers, then papers checked, and ends approved or declined. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: firm_name - label: Firm name - type: text - - name: org_number - label: Org number - type: text - - name: email - label: Email - type: email - - name: qualified_for - label: Qualified for - type: select - options: - - Design - - Execution - - Independent control - - Site management - multiple: true - - name: insurance_expires - label: Insurance expires - type: date - - name: insurance_document - label: Insurance document - type: text - optional: true diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/inspectors/_section.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/inspectors/_section.yaml deleted file mode 100644 index d41d53f..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/inspectors/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: inspectors diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/inspectors/index.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/inspectors/index.yaml deleted file mode 100644 index f6a397a..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/inspectors/index.yaml +++ /dev/null @@ -1,118 +0,0 @@ -name: What needs doing? -description: Everything inspectors looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Applications - description: Sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner. - action: /inspectors - consequence: - - Confirm - features: - - name: Applications - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: applications - requires_group: inspectors - transitions: [] -- name: Completions - description: Sent in by an owner or firm whose building work is finished. - action: /inspectors - consequence: - - Confirm - features: - - name: Completions - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: completions - requires_group: inspectors - transitions: [] -- name: Illegal building - description: Sent in by someone who can see building going up that nobody was told about. - action: /inspectors - consequence: - - Confirm - features: - - name: Illegal building - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: illegal_building - requires_group: inspectors - transitions: - - from: explained - to: resolved - label: Resolved - - from: explained - to: dropped - label: Nothing to pursue - - from: open - to: inspected - label: Inspected -- name: Inspections - description: Sent in by an inspector on a scaffold with gloves on and the wind blowing. - action: /inspectors - consequence: - - Confirm - features: - - name: Inspections - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: inspections - requires_group: inspectors - transitions: - - from: deviation - to: as_approved - label: Built as approved - - from: deviation - to: put_right - label: Put right - - from: open - to: deviation - label: Built differently -- name: what they found logged before they climb down - description: For an inspector on a scaffold with gloves on and the wind blowing. - action: /inspectors/inspection-finding - consequence: - - Open -- name: Invite someone into Inspectors - description: They get an account, a place in Inspectors, and a one-time link to set their own password or passkey. - action: /inspectors - consequence: - - Invite - invite: - group: inspectors - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite with the link it made. Mark it done when the person is in. - action: /inspectors - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: inspectors - transitions: - - from: open - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/inspectors/inspection-finding-sent.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/inspectors/inspection-finding-sent.yaml deleted file mode 100644 index ac8e8b2..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/inspectors/inspection-finding-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our inspectors. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: /inspectors - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/inspectors/inspection-finding.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/inspectors/inspection-finding.yaml deleted file mode 100644 index 18b5d32..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/inspectors/inspection-finding.yaml +++ /dev/null @@ -1,35 +0,0 @@ -followup: false -name: Inspection finding? -description: '' -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: what they found logged before they climb down - description: For an inspector on a scaffold with gloves on and the wind blowing. - action: /inspectors/inspection-finding-sent - consequence: - - Send - record_as: inspections - features: - - name: What happens next - description: It is open, then built differently, and ends built as approved, put right or handed to a case officer. - icon: lucide:route - - name: Who reads it - description: Inspectors. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: case_number - label: Case number - type: text - - name: site_address - label: Site address - type: text - - name: what_i_found - label: What i found - type: textarea - - name: where - label: Where - type: location - optional: true diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/received/appeal.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/received/appeal.yaml deleted file mode 100644 index 6148787..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/received/appeal.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: See all appeals - description: '' - action: /status/appeals - consequence: - - Open -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/received/case-status-enquiry.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/received/case-status-enquiry.yaml deleted file mode 100644 index 7150e83..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/received/case-status-enquiry.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our front desk. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/received/completion-request.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/received/completion-request.yaml deleted file mode 100644 index 93e37f8..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/received/completion-request.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: See all completions - description: '' - action: /status/completions - consequence: - - Open -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/received/exemption-request.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/received/exemption-request.yaml deleted file mode 100644 index 04c3fe3..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/received/exemption-request.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: See all exemptions - description: '' - action: /status/exemptions - consequence: - - Open -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/received/firm-approval.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/received/firm-approval.yaml deleted file mode 100644 index 71486fa..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/received/firm-approval.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/received/illegal-building-report.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/received/illegal-building-report.yaml deleted file mode 100644 index 1dad0c2..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/received/illegal-building-report.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our inspectors. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/received/objection.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/received/objection.yaml deleted file mode 100644 index c75f760..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/received/objection.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: See all objections - description: '' - action: /status/objections - consequence: - - Open -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/received/pre-application-meeting.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/received/pre-application-meeting.yaml deleted file mode 100644 index 71486fa..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/received/pre-application-meeting.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/received/small-works-application.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/received/small-works-application.yaml deleted file mode 100644 index 6e621eb..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/received/small-works-application.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: See all applications - description: '' - action: /status/applications - consequence: - - Open -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/section_head/_section.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/section_head/_section.yaml deleted file mode 100644 index 569137f..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/section_head/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: section_head diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/section_head/index.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/section_head/index.yaml deleted file mode 100644 index deed9ce..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/section_head/index.yaml +++ /dev/null @@ -1,350 +0,0 @@ -name: What needs doing? -description: Everything head of section looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Appeals - description: Sent in by anyone with an interest who will not accept a decision of ours. - action: /section_head - consequence: - - Confirm - features: - - name: Appeals - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: appeals - requires_group: section_head - transitions: - - from: reconsidered - to: before_the_board - label: With the appeals board - - from: reconsidered - to: changed_by_us - label: We changed our own decision -- name: Applications - description: Sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner. - action: /section_head - consequence: - - Confirm - features: - - name: Applications - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: applications - requires_group: section_head - transitions: - - from: complete - to: refused - label: Refused - - from: on_hearing - to: refused - label: Refused - - from: recommended - to: approved - label: Approved - - from: recommended - to: approved_with_conditions - label: Approved on conditions - - from: recommended - to: refused - label: Refused -- name: Completions - description: Sent in by an owner or firm whose building work is finished. - action: /section_head - consequence: - - Confirm - features: - - name: Completions - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: completions - requires_group: section_head - transitions: - - from: checked - to: temporary_permission - label: Temporary permission to use - - from: checked - to: certificate_issued - label: Certificate issued - - from: checked - to: refused - label: Refused - - from: open - to: refused - label: Refused - - from: temporary_permission - to: certificate_issued - label: Certificate issued -- name: Exemptions - description: Sent in by someone whose plans break a rule in the zoning map. - action: /section_head - consequence: - - Confirm - features: - - name: Exemptions - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: exemptions - requires_group: section_head - transitions: - - from: county_answered - to: denied - label: Denied - - from: county_asked - to: denied - label: Denied - - from: open - to: denied - label: Denied - - from: recommended - to: granted - label: Granted - - from: recommended - to: denied - label: Denied -- name: Firms - description: Sent in by an architect or engineering firm that files for its clients. - action: /section_head - consequence: - - Confirm - features: - - name: Firms - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: firms - requires_group: section_head - transitions: - - from: checked - to: approved - label: Approved - - from: checked - to: declined - label: Declined - - from: open - to: declined - label: Declined - - from: papers_missing - to: declined - label: Declined -- name: Hearing answers - description: Sent in by a road, fire, heritage or county officer who has been asked about a case. - action: /section_head - consequence: - - Confirm - features: - - name: Hearing answers - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: hearing_answers - requires_group: section_head - transitions: [] -- name: Hearings - description: Sent in by a case officer sending a case out to the authority that must see it. - action: /section_head - consequence: - - Confirm - features: - - name: Hearings - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: hearings - requires_group: section_head - transitions: [] -- name: Illegal building - description: Sent in by someone who can see building going up that nobody was told about. - action: /section_head - consequence: - - Confirm - features: - - name: Illegal building - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: illegal_building - requires_group: section_head - transitions: - - from: inspected - to: fined - label: Fined - - from: open - to: fined - label: Fined -- name: Inspections - description: Sent in by an inspector on a scaffold with gloves on and the wind blowing. - action: /section_head - consequence: - - Confirm - features: - - name: Inspections - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: inspections - requires_group: section_head - transitions: - - from: deviation - to: escalated - label: Handed to a case officer - - from: open - to: escalated - label: Handed to a case officer -- name: Objections - description: Sent in by a neighbour who got a notice about what is planned next door. - action: /section_head - consequence: - - Confirm - features: - - name: Objections - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: objections - requires_group: section_head - transitions: [] -- name: Invite someone into Hearing bodies - description: They get an account, a place in Hearing bodies, and a one-time link to set their own password or passkey. - action: /section_head - consequence: - - Invite - invite: - group: agencies - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Appeals board - description: They get an account, a place in Appeals board, and a one-time link to set their own password or passkey. - action: /section_head - consequence: - - Invite - invite: - group: appeals_board - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Approved firms - description: They get an account, a place in Approved firms, and a one-time link to set their own password or passkey. - action: /section_head - consequence: - - Invite - invite: - group: approved_firms - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Case officers - description: They get an account, a place in Case officers, and a one-time link to set their own password or passkey. - action: /section_head - consequence: - - Invite - invite: - group: case_officers - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Front desk - description: They get an account, a place in Front desk, and a one-time link to set their own password or passkey. - action: /section_head - consequence: - - Invite - invite: - group: front_desk - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Inspectors - description: They get an account, a place in Inspectors, and a one-time link to set their own password or passkey. - action: /section_head - consequence: - - Invite - invite: - group: inspectors - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Head of section - description: They get an account, a place in Head of section, and a one-time link to set their own password or passkey. - action: /section_head - consequence: - - Invite - invite: - group: section_head - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite with the link it made. Mark it done when the person is in. - action: /section_head - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: section_head - transitions: - - from: open - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/status/appeals/index.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/status/appeals/index.yaml deleted file mode 100644 index 662ae18..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/status/appeals/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -name: What has been sent in about appeals? -description: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Appeals - description: '' - features: - - name: Appeals - description: Each row is one case and the stage it has reached. Names and contact details are not shown here. - resource: - source: - kind: kv - bucket: appeals - public: true - jq: '.[] | .responses |= {case_number: .case_number, property: .property, what_you_disagree_with: .what_you_disagree_with, your_interest: .your_interest}' -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/status/applications/index.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/status/applications/index.yaml deleted file mode 100644 index 3146555..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/status/applications/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -name: What has been sent in about applications? -description: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Applications - description: '' - features: - - name: Applications - description: Each row is one case and the stage it has reached. Names and contact details are not shown here. - resource: - source: - kind: kv - bucket: applications - public: true - jq: '.[] | .responses |= {drawings_url: .drawings_url, neighbours_notified: .neighbours_notified, property_address: .property_address, property_number: .property_number, site: .site, what_is_planned: .what_is_planned}' -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/status/completions/index.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/status/completions/index.yaml deleted file mode 100644 index c635e35..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/status/completions/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -name: What has been sent in about completions? -description: Everything sent in by an owner or firm whose building work is finished, and where each one stands. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Completions - description: '' - features: - - name: Completions - description: Each row is one case and the stage it has reached. Names and contact details are not shown here. - resource: - source: - kind: kv - bucket: completions - public: true - jq: '.[] | .responses |= {asking_for: .asking_for, case_number: .case_number, property_address: .property_address, what_is_outstanding: .what_is_outstanding, work_finished: .work_finished}' -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/status/exemptions/index.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/status/exemptions/index.yaml deleted file mode 100644 index 7bc890c..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/status/exemptions/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -name: What has been sent in about exemptions? -description: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Exemptions - description: '' - features: - - name: Exemptions - description: Each row is one case and the stage it has reached. Names and contact details are not shown here. - resource: - source: - kind: kv - bucket: exemptions - public: true - jq: '.[] | .responses |= {case_number: .case_number, site: .site, which_rule: .which_rule, why_it_should_be_allowed: .why_it_should_be_allowed}' -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/status/objections/index.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/status/objections/index.yaml deleted file mode 100644 index 416efb6..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/status/objections/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -name: What has been sent in about objections? -description: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Objections - description: '' - features: - - name: Objections - description: Each row is one case and the stage it has reached. Names and contact details are not shown here. - resource: - source: - kind: kv - bucket: objections - public: true - jq: '.[] | .responses |= {case_number: .case_number, your_objection: .your_objection, your_property: .your_property}' -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-2026-09-25/questions/want-to-build/index.yaml b/vendor/trainer/runs/permits-2026-09-25/questions/want-to-build/index.yaml deleted file mode 100644 index 4b3e350..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/questions/want-to-build/index.yaml +++ /dev/null @@ -1,156 +0,0 @@ -name: What do you need? -description: For an owner or a firm with something to build, divide or change. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: to hear what we will allow before paying an architect - description: For someone with an idea for a building and no drawings yet. - action: /received/pre-application-meeting - consequence: - - Send - record_as: meetings - features: - - name: What happens next - description: It is open, then scheduled, then we have met, and ends written advice sent or cancelled. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: name - label: Name - type: text - - name: email - label: Email - type: email - - name: property_address - label: Property address - type: text - - name: what_you_want - label: What you want - type: textarea - - name: phone - label: Phone - type: tel - optional: true - - name: site - label: Site - type: location - optional: true -- name: permission to build it, and to know where the case stands - description: For an owner applying for something small enough to file themselves. - action: /received/small-works-application - consequence: - - Send - record_as: applications - features: - - name: What happens next - description: It is open, then papers missing, then papers complete, then out to the neighbours and the agencies, then recommendation written, and ends approved, approved on conditions, refused or withdrawn. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: property_address - label: Property address - type: text - - name: property_number - label: Property number - type: text - - name: what_is_planned - label: What is planned - type: textarea - - name: neighbours_notified - label: Neighbours notified - type: select - options: - - Yes - - Not yet - - name: site - label: Site - type: location - optional: true - - name: drawings_url - label: Drawings url - type: text - optional: true -- name: to be allowed it anyway, with reasons on the record - description: For someone whose plans break a rule in the zoning map. - action: /received/exemption-request - consequence: - - Send - record_as: exemptions - features: - - name: What you need - description: An application already with us, and the case number from its receipt. - icon: lucide:key - - name: What happens next - description: It is open, then with the county, then the county has answered, then recommended, and ends granted, denied or withdrawn. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: case_number - label: Case number - type: text - - name: which_rule - label: Which rule - type: text - - name: why_it_should_be_allowed - label: Why it should be allowed - type: textarea - - name: site - label: Site - type: location - optional: true -- name: the certificate that lets the building be used - description: For an owner or firm whose building work is finished. - action: /received/completion-request - consequence: - - Send - record_as: completions - features: - - name: What you need - description: A case number, and the work finished or close enough to move in. - icon: lucide:key - - name: What happens next - description: It is open, then checked against the inspections, then temporary permission to use, and ends certificate issued or refused. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: case_number - label: Case number - type: text - - name: property_address - label: Property address - type: text - - name: work_finished - label: Work finished - type: date - - name: asking_for - label: Asking for - type: select - options: - - Completion certificate - - Temporary permission to move in - - name: what_is_outstanding - label: What is outstanding - type: textarea - optional: true diff --git a/vendor/trainer/runs/permits-2026-09-25/site.yaml b/vendor/trainer/runs/permits-2026-09-25/site.yaml deleted file mode 100644 index 9d30842..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/site.yaml +++ /dev/null @@ -1,5 +0,0 @@ -title: Vestmark kommune - Building and Planning -lang: en -mail: - from: Vestmark Building and Planning - reply_to: byggesak@vestmark.example diff --git a/vendor/trainer/runs/permits-2026-09-25/tasks-full.jsonl b/vendor/trainer/runs/permits-2026-09-25/tasks-full.jsonl deleted file mode 100644 index 883a425..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/tasks-full.jsonl +++ /dev/null @@ -1,25 +0,0 @@ -{"id":"garage-owner@/","persona":"garage-owner","need":"pre-application-meeting","page":"/","state":{"body":"We want to put a double garage where the old shed is. Before I pay an architect I'd like to know whether you'll even allow it, because the neighbour says it's too close to the road.","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","the decision looked at again, by us and then by the board":"For anyone with an interest who will not accept a decision of ours.","to be on the list, and then to file without asking again":"For an architect or engineering firm that files for its clients."}}},"expect":["Want to build"]} -{"id":"garage-owner@/want-to-build","persona":"garage-owner","need":"pre-application-meeting","page":"/want-to-build","state":{"body":"We want to put a double garage where the old shed is. Before I pay an architect I'd like to know whether you'll even allow it, because the neighbour says it's too close to the road."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need?\". Which alternative do they choose?","criteria":{"permission to build it, and to know where the case stands":"For an owner applying for something small enough to file themselves.","the certificate that lets the building be used":"For an owner or firm whose building work is finished.","to be allowed it anyway, with reasons on the record":"For someone whose plans break a rule in the zoning map.","to hear what we will allow before paying an architect":"For someone with an idea for a building and no drawings yet."}}},"expect":["to hear what we will allow before paying an architect"]} -{"id":"shop-to-flats@/","persona":"shop-to-flats","need":"pre-application-meeting","page":"/","state":{"body":"I own the old grocery on Torget and want to make four flats out of it. There are a lot of questions - parking, fire, the facade is listed. Can we sit down with someone?","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","the decision looked at again, by us and then by the board":"For anyone with an interest who will not accept a decision of ours.","to be on the list, and then to file without asking again":"For an architect or engineering firm that files for its clients."}}},"expect":["Want to build"]} -{"id":"shop-to-flats@/want-to-build","persona":"shop-to-flats","need":"pre-application-meeting","page":"/want-to-build","state":{"body":"I own the old grocery on Torget and want to make four flats out of it. There are a lot of questions - parking, fire, the facade is listed. Can we sit down with someone?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need?\". Which alternative do they choose?","criteria":{"permission to build it, and to know where the case stands":"For an owner applying for something small enough to file themselves.","the certificate that lets the building be used":"For an owner or firm whose building work is finished.","to be allowed it anyway, with reasons on the record":"For someone whose plans break a rule in the zoning map.","to hear what we will allow before paying an architect":"For someone with an idea for a building and no drawings yet."}}},"expect":["to hear what we will allow before paying an architect"]} -{"id":"too-close-to-boundary@/","persona":"too-close-to-boundary","need":"exemption-request","page":"/","state":{"body":"The garage ends up one and a half metres from the boundary and the plan says four. We are asking you to allow it anyway - the ground falls away steeply everywhere else on the plot.","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","the decision looked at again, by us and then by the board":"For anyone with an interest who will not accept a decision of ours.","to be on the list, and then to file without asking again":"For an architect or engineering firm that files for its clients."}}},"expect":["Want to build"]} -{"id":"too-close-to-boundary@/want-to-build","persona":"too-close-to-boundary","need":"exemption-request","page":"/want-to-build","state":{"body":"The garage ends up one and a half metres from the boundary and the plan says four. We are asking you to allow it anyway - the ground falls away steeply everywhere else on the plot."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need?\". Which alternative do they choose?","criteria":{"permission to build it, and to know where the case stands":"For an owner applying for something small enough to file themselves.","the certificate that lets the building be used":"For an owner or firm whose building work is finished.","to be allowed it anyway, with reasons on the record":"For someone whose plans break a rule in the zoning map.","to hear what we will allow before paying an architect":"For someone with an idea for a building and no drawings yet."}}},"expect":["to be allowed it anyway, with reasons on the record"]} -{"id":"neighbour-view@/","persona":"neighbour-view","need":"objection","page":"/","state":{"body":"I got a notice about the extension at number 14. It takes the afternoon sun off my entire terrace and I want that on the record before you decide anything.","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","the decision looked at again, by us and then by the board":"For anyone with an interest who will not accept a decision of ours.","to be on the list, and then to file without asking again":"For an architect or engineering firm that files for its clients."}}},"expect":["Building near me"]} -{"id":"neighbour-view@/building-near-me","persona":"neighbour-view","need":"objection","page":"/building-near-me","state":{"body":"I got a notice about the extension at number 14. It takes the afternoon sun off my entire terrace and I want that on the record before you decide anything."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need?\". Which alternative do they choose?","criteria":{"to be told where it actually stands":"For someone waiting on a case and getting nothing back.","us to go and look, and to hear that we did":"For someone who can see building going up that nobody was told about.","what they think on the record, and answered in the decision":"For a neighbour who got a notice about what is planned next door."}}},"expect":["what they think on the record, and answered in the decision"]} -{"id":"neighbour-parking@/","persona":"neighbour-parking","need":"objection","page":"/","state":{"body":"The flats they want to build in the old grocery have four parking places for four flats and everyone here already parks on the street. I object.","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","the decision looked at again, by us and then by the board":"For anyone with an interest who will not accept a decision of ours.","to be on the list, and then to file without asking again":"For an architect or engineering firm that files for its clients."}}},"expect":["Building near me"]} -{"id":"neighbour-parking@/building-near-me","persona":"neighbour-parking","need":"objection","page":"/building-near-me","state":{"body":"The flats they want to build in the old grocery have four parking places for four flats and everyone here already parks on the street. I object."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need?\". Which alternative do they choose?","criteria":{"to be told where it actually stands":"For someone waiting on a case and getting nothing back.","us to go and look, and to hear that we did":"For someone who can see building going up that nobody was told about.","what they think on the record, and answered in the decision":"For a neighbour who got a notice about what is planned next door."}}},"expect":["what they think on the record, and answered in the decision"]} -{"id":"refused-applicant@/","persona":"refused-applicant","need":"appeal","page":"/","state":{"body":"You refused our exemption on the ninth. We don't accept the reasoning - you've allowed the same thing twice in the same street. We're appealing.","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","the decision looked at again, by us and then by the board":"For anyone with an interest who will not accept a decision of ours.","to be on the list, and then to file without asking again":"For an architect or engineering firm that files for its clients."}}},"expect":["the decision looked at again, by us and then by the board"]} -{"id":"neighbour-appeals@/","persona":"neighbour-appeals","need":"appeal","page":"/","state":{"body":"You approved the extension next door even though I objected. I'm appealing the decision. What do I need to send?","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","the decision looked at again, by us and then by the board":"For anyone with an interest who will not accept a decision of ours.","to be on the list, and then to file without asking again":"For an architect or engineering firm that files for its clients."}}},"expect":["the decision looked at again, by us and then by the board"]} -{"id":"board-member@/","persona":"board-member","need":"appeal","page":"/","state":{"body":"I sit on the appeals board. I need the case, our own decision, and what the neighbours wrote, before Tuesday.","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","the decision looked at again, by us and then by the board":"For anyone with an interest who will not accept a decision of ours.","to be on the list, and then to file without asking again":"For an architect or engineering firm that files for its clients."}}},"expect":["the decision looked at again, by us and then by the board"]} -{"id":"firm-wants-certificate@/","persona":"firm-wants-certificate","need":"completion-request","page":"/","state":{"body":"The work at Bjorkeveien 14 is finished and inspected. We're asking for the completion certificate so the owners can get their mortgage released.","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","the decision looked at again, by us and then by the board":"For anyone with an interest who will not accept a decision of ours.","to be on the list, and then to file without asking again":"For an architect or engineering firm that files for its clients."}}},"expect":["Want to build"]} -{"id":"firm-wants-certificate@/want-to-build","persona":"firm-wants-certificate","need":"completion-request","page":"/want-to-build","state":{"body":"The work at Bjorkeveien 14 is finished and inspected. We're asking for the completion certificate so the owners can get their mortgage released."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need?\". Which alternative do they choose?","criteria":{"permission to build it, and to know where the case stands":"For an owner applying for something small enough to file themselves.","the certificate that lets the building be used":"For an owner or firm whose building work is finished.","to be allowed it anyway, with reasons on the record":"For someone whose plans break a rule in the zoning map.","to hear what we will allow before paying an architect":"For someone with an idea for a building and no drawings yet."}}},"expect":["the certificate that lets the building be used"]} -{"id":"wants-to-move-in@/","persona":"wants-to-move-in","need":"completion-request","page":"/","state":{"body":"The house is done apart from the outside steps, which we can't pour until spring. The family has sold their flat. Can we get a temporary permission to move in?","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","the decision looked at again, by us and then by the board":"For anyone with an interest who will not accept a decision of ours.","to be on the list, and then to file without asking again":"For an architect or engineering firm that files for its clients."}}},"expect":["Want to build"]} -{"id":"wants-to-move-in@/want-to-build","persona":"wants-to-move-in","need":"completion-request","page":"/want-to-build","state":{"body":"The house is done apart from the outside steps, which we can't pour until spring. The family has sold their flat. Can we get a temporary permission to move in?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need?\". Which alternative do they choose?","criteria":{"permission to build it, and to know where the case stands":"For an owner applying for something small enough to file themselves.","the certificate that lets the building be used":"For an owner or firm whose building work is finished.","to be allowed it anyway, with reasons on the record":"For someone whose plans break a rule in the zoning map.","to hear what we will allow before paying an architect":"For someone with an idea for a building and no drawings yet."}}},"expect":["the certificate that lets the building be used"]} -{"id":"something-behind-fence@/","persona":"something-behind-fence","need":"illegal-building-report","page":"/","state":{"body":"There's a large structure going up behind the fence at Solbakken 7. Nobody has had a notice about it and it's been going on for two weeks.","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","the decision looked at again, by us and then by the board":"For anyone with an interest who will not accept a decision of ours.","to be on the list, and then to file without asking again":"For an architect or engineering firm that files for its clients."}}},"expect":["Building near me"]} -{"id":"something-behind-fence@/building-near-me","persona":"something-behind-fence","need":"illegal-building-report","page":"/building-near-me","state":{"body":"There's a large structure going up behind the fence at Solbakken 7. Nobody has had a notice about it and it's been going on for two weeks."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need?\". Which alternative do they choose?","criteria":{"to be told where it actually stands":"For someone waiting on a case and getting nothing back.","us to go and look, and to hear that we did":"For someone who can see building going up that nobody was told about.","what they think on the record, and answered in the decision":"For a neighbour who got a notice about what is planned next door."}}},"expect":["us to go and look, and to hear that we did"]} -{"id":"owner-explains@/","persona":"owner-explains","need":"illegal-building-report","page":"/","state":{"body":"I got your letter about the terrace. I genuinely did not know it needed an application, it's been there since we moved in. What happens now?","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","the decision looked at again, by us and then by the board":"For anyone with an interest who will not accept a decision of ours.","to be on the list, and then to file without asking again":"For an architect or engineering firm that files for its clients."}}},"expect":["Building near me"]} -{"id":"owner-explains@/building-near-me","persona":"owner-explains","need":"illegal-building-report","page":"/building-near-me","state":{"body":"I got your letter about the terrace. I genuinely did not know it needed an application, it's been there since we moved in. What happens now?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need?\". Which alternative do they choose?","criteria":{"to be told where it actually stands":"For someone waiting on a case and getting nothing back.","us to go and look, and to hear that we did":"For someone who can see building going up that nobody was told about.","what they think on the record, and answered in the decision":"For a neighbour who got a notice about what is planned next door."}}},"expect":["us to go and look, and to hear that we did"]} -{"id":"new-firm@/","persona":"new-firm","need":"firm-approval","page":"/","state":{"body":"We are a three-person architecture firm that has just started. We want to be approved so we can file applications for our clients in your municipality.","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","the decision looked at again, by us and then by the board":"For anyone with an interest who will not accept a decision of ours.","to be on the list, and then to file without asking again":"For an architect or engineering firm that files for its clients."}}},"expect":["to be on the list, and then to file without asking again"]} -{"id":"firm-insurance-lapsed@/","persona":"firm-insurance-lapsed","need":"firm-approval","page":"/","state":{"body":"You wrote that our liability insurance certificate has expired. We have renewed it, here it is.","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","the decision looked at again, by us and then by the board":"For anyone with an interest who will not accept a decision of ours.","to be on the list, and then to file without asking again":"For an architect or engineering firm that files for its clients."}}},"expect":["to be on the list, and then to file without asking again"]} -{"id":"where-is-my-case@/","persona":"where-is-my-case","need":"case-status-enquiry","page":"/","state":{"body":"I sent in my application five weeks ago and I've heard nothing. Is anyone looking at it? Is it in the six weeks with the neighbours or is it waiting on me?","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","the decision looked at again, by us and then by the board":"For anyone with an interest who will not accept a decision of ours.","to be on the list, and then to file without asking again":"For an architect or engineering firm that files for its clients."}}},"expect":["Building near me"]} -{"id":"where-is-my-case@/building-near-me","persona":"where-is-my-case","need":"case-status-enquiry","page":"/building-near-me","state":{"body":"I sent in my application five weeks ago and I've heard nothing. Is anyone looking at it? Is it in the six weeks with the neighbours or is it waiting on me?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need?\". Which alternative do they choose?","criteria":{"to be told where it actually stands":"For someone waiting on a case and getting nothing back.","us to go and look, and to hear that we did":"For someone who can see building going up that nobody was told about.","what they think on the record, and answered in the decision":"For a neighbour who got a notice about what is planned next door."}}},"expect":["to be told where it actually stands"]} diff --git a/vendor/trainer/runs/permits-2026-09-25/words.json b/vendor/trainer/runs/permits-2026-09-25/words.json deleted file mode 100644 index 14a8edb..0000000 --- a/vendor/trainer/runs/permits-2026-09-25/words.json +++ /dev/null @@ -1,1681 +0,0 @@ -{ - "aggregates.yaml": { - "appeals": { - "before_the_board": { - "subject": "Vestmark kommune - Building and Planning: Before the board", - "body": "Hello,\n\nWhat you sent about the decision looked at again, by us and then by the board is now with the appeals board.\n\nWhat you can do next: {site}/decide/appeal?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "changed_by_us": { - "subject": "Vestmark kommune - Building and Planning: Changed by us", - "body": "Hello,\n\nWhat you sent about the decision looked at again, by us and then by the board is now we changed our own decision.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello,\n\nWe have received what you sent about the decision looked at again, by us and then by the board.\n\nWhat you can do next: {site}/decide/appeal?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "overturned": { - "subject": "Vestmark kommune - Building and Planning: Overturned", - "body": "Hello,\n\nWhat you sent about the decision looked at again, by us and then by the board is now the board overturned us.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "reconsidered": { - "subject": "Vestmark kommune - Building and Planning: Reconsidered", - "body": "Hello,\n\nWhat you sent about the decision looked at again, by us and then by the board is now we are looking at it again.\n\nWhat you can do next: {site}/decide/appeal?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "upheld": { - "subject": "Vestmark kommune - Building and Planning: Upheld", - "body": "Hello,\n\nWhat you sent about the decision looked at again, by us and then by the board is now the board kept our decision.\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "applications": { - "approved": { - "subject": "Vestmark kommune - Building and Planning: Approved", - "body": "Hello,\n\nWhat you sent about permission to build it, and to know where the case stands is now approved.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "approved_with_conditions": { - "subject": "Vestmark kommune - Building and Planning: Approved with conditions", - "body": "Hello,\n\nWhat you sent about permission to build it, and to know where the case stands is now approved on conditions.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "incomplete": { - "subject": "Vestmark kommune - Building and Planning: Incomplete", - "body": "Hello,\n\nWhat you sent about permission to build it, and to know where the case stands is now papers missing.\n\nWhat you can do next: {site}/decide/small-works-application?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "on_hearing": { - "subject": "Vestmark kommune - Building and Planning: On hearing", - "body": "Hello,\n\nWhat you sent about permission to build it, and to know where the case stands is now out to the neighbours and the agencies.\n\nWhat you can do next: {site}/decide/small-works-application?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello,\n\nWe have received what you sent about permission to build it, and to know where the case stands.\n\nWhat you can do next: {site}/decide/small-works-application?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "refused": { - "subject": "Vestmark kommune - Building and Planning: Refused", - "body": "Hello,\n\nWhat you sent about permission to build it, and to know where the case stands is now refused.\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "completions": { - "certificate_issued": { - "subject": "Vestmark kommune - Building and Planning: Certificate issued", - "body": "Hello,\n\nWhat you sent about the certificate that lets the building be used is now certificate issued.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello,\n\nWe have received what you sent about the certificate that lets the building be used.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "refused": { - "subject": "Vestmark kommune - Building and Planning: Refused", - "body": "Hello,\n\nWhat you sent about the certificate that lets the building be used is now refused.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "temporary_permission": { - "subject": "Vestmark kommune - Building and Planning: Temporary permission", - "body": "Hello,\n\nWhat you sent about the certificate that lets the building be used is now temporary permission to use.\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "enquiries": { - "answered": { - "subject": "Vestmark kommune - Building and Planning: Answered", - "body": "Hello,\n\nWhat you sent about to be told where it actually stands is now answered.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello,\n\nWe have received what you sent about to be told where it actually stands.\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "exemptions": { - "county_asked": { - "subject": "Vestmark kommune - Building and Planning: County asked", - "body": "Hello,\n\nWhat you sent about to be allowed it anyway, with reasons on the record is now with the county.\n\nWhat you can do next: {site}/decide/exemption-request?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "denied": { - "subject": "Vestmark kommune - Building and Planning: Denied", - "body": "Hello,\n\nWhat you sent about to be allowed it anyway, with reasons on the record is now denied.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "granted": { - "subject": "Vestmark kommune - Building and Planning: Granted", - "body": "Hello,\n\nWhat you sent about to be allowed it anyway, with reasons on the record is now granted.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello,\n\nWe have received what you sent about to be allowed it anyway, with reasons on the record.\n\nWhat you can do next: {site}/decide/exemption-request?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "firms": { - "approved": { - "subject": "Vestmark kommune - Building and Planning: Approved", - "body": "Hello,\n\nWhat you sent about to be on the list, and then to file without asking again is now approved.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "declined": { - "subject": "Vestmark kommune - Building and Planning: Declined", - "body": "Hello,\n\nWhat you sent about to be on the list, and then to file without asking again is now declined.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello,\n\nWe have received what you sent about to be on the list, and then to file without asking again.\n\nWhat you can do next: {site}/decide/firm-approval?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "papers_missing": { - "subject": "Vestmark kommune - Building and Planning: Papers missing", - "body": "Hello,\n\nWhat you sent about to be on the list, and then to file without asking again is now waiting on papers.\n\nWhat you can do next: {site}/decide/firm-approval?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "illegal_building": { - "dropped": { - "subject": "Vestmark kommune - Building and Planning: Dropped", - "body": "Hello,\n\nWhat you sent about us to go and look, and to hear that we did is now nothing to pursue.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "inspected": { - "subject": "Vestmark kommune - Building and Planning: Inspected", - "body": "Hello,\n\nWhat you sent about us to go and look, and to hear that we did is now inspected.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello,\n\nWe have received what you sent about us to go and look, and to hear that we did.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "resolved": { - "subject": "Vestmark kommune - Building and Planning: Resolved", - "body": "Hello,\n\nWhat you sent about us to go and look, and to hear that we did is now resolved.\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "meetings": { - "advised": { - "subject": "Vestmark kommune - Building and Planning: Advised", - "body": "Hello {name},\n\nWhat you sent about to hear what we will allow before paying an architect is now written advice sent.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello {name},\n\nWe have received what you sent about to hear what we will allow before paying an architect.\n\nWhat you can do next: {site}/decide/pre-application-meeting?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "scheduled": { - "subject": "Vestmark kommune - Building and Planning: Scheduled", - "body": "Hello {name},\n\nWhat you sent about to hear what we will allow before paying an architect is now scheduled.\n\nWhat you can do next: {site}/decide/pre-application-meeting?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "objections": { - "addressed": { - "subject": "Vestmark kommune - Building and Planning: Addressed", - "body": "Hello,\n\nWhat you sent about what they think on the record, and answered in the decision is now answered in the decision.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "answered_by_applicant": { - "subject": "Vestmark kommune - Building and Planning: Answered by applicant", - "body": "Hello,\n\nWhat you sent about what they think on the record, and answered in the decision is now the applicant has answered.\n\nWhat you can do next: {site}/decide/objection?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello,\n\nWe have received what you sent about what they think on the record, and answered in the decision.\n\nWhat you can do next: {site}/decide/objection?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - } - } - }, - "questions/agencies/hearing-answer-sent.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back" - }, - "questions/agencies/hearing-answer.yaml": { - "heading": "their answer on the file, in their own words", - "description": "For a road, fire, heritage or county officer who has been asked about a case.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "What you need", - "requires_description": "The hearing letter we sent you, which has the case number on it.", - "requires_icon": "key", - "road_title": "What happens next", - "road_description": "It is open, then read by the case officer, and ends followed in the decision or set aside with reasons.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "case_number": "Case number", - "which_authority": "Which authority", - "our_answer": "Our answer", - "what_we_say": "What we say" - }, - "hints": { - "case_number": "", - "which_authority": "", - "our_answer": "", - "what_we_say": "" - }, - "question": "Hearing answer?", - "page_description": "" - }, - "questions/agencies/index.yaml": { - "question": "What needs doing?", - "description": "Everything hearing bodies looks after.", - "confirm": "Confirm", - "buckets": { - "exemptions": { - "heading": "Exemptions", - "description": "Sent in by someone whose plans break a rule in the zoning map.", - "moves": { - "county_asked->county_answered": "The county has answered" - }, - "list_title": "Exemptions", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "hearings": { - "heading": "Hearings", - "description": "Sent in by a case officer sending a case out to the authority that must see it.", - "moves": { - "open->answered": "Answered" - }, - "list_title": "Hearings", - "list_note": "Each row is one case. The buttons record what you have just done with it." - } - }, - "links": { - "hearing-answer": { - "heading": "their answer on the file, in their own words", - "description": "For a road, fire, heritage or county officer who has been asked about a case.", - "button": "Open" - } - }, - "invites": { - "agencies": { - "heading": "Invite someone into Hearing bodies", - "description": "They get an account, a place in Hearing bodies, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - } - }, - "invited": { - "heading": "Invitations sent", - "description": "Each invite with the link it made. Mark it done when the person is in.", - "done": "Is in", - "list_title": "Who has been invited", - "list_note": "Each row is one invitation, with the one-time link while it is unused." - } - }, - "questions/appeals_board/index.yaml": { - "question": "What needs doing?", - "description": "Everything appeals board looks after.", - "confirm": "Confirm", - "buckets": { - "appeals": { - "heading": "Appeals", - "description": "Sent in by anyone with an interest who will not accept a decision of ours.", - "moves": { - "before_the_board->overturned": "The board overturned us", - "before_the_board->upheld": "The board kept our decision" - }, - "list_title": "Appeals", - "list_note": "Each row is one case. The buttons record what you have just done with it." - } - }, - "links": {}, - "invites": { - "appeals_board": { - "heading": "Invite someone into Appeals board", - "description": "They get an account, a place in Appeals board, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - } - }, - "invited": { - "heading": "Invitations sent", - "description": "Each invite with the link it made. Mark it done when the person is in.", - "done": "Is in", - "list_title": "Who has been invited", - "list_note": "Each row is one invitation, with the one-time link while it is unused." - } - }, - "questions/approved_firms/index.yaml": { - "question": "What needs doing?", - "description": "Everything approved firms looks after.", - "confirm": "Confirm", - "buckets": { - "objections": { - "heading": "Objections", - "description": "Sent in by a neighbour who got a notice about what is planned next door.", - "moves": { - "registered->answered_by_applicant": "The applicant has answered" - }, - "list_title": "Objections", - "list_note": "Each row is one case. The buttons record what you have just done with it." - } - }, - "links": { - "permit-application": { - "heading": "a decision inside twelve weeks, and to know when the clock stops", - "description": "For an approved firm filing on behalf of an owner.", - "button": "Open" - } - }, - "invites": { - "approved_firms": { - "heading": "Invite someone into Approved firms", - "description": "They get an account, a place in Approved firms, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - } - }, - "invited": { - "heading": "Invitations sent", - "description": "Each invite with the link it made. Mark it done when the person is in.", - "done": "Is in", - "list_title": "Who has been invited", - "list_note": "Each row is one invitation, with the one-time link while it is unused." - } - }, - "questions/approved_firms/permit-application-sent.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back", - "see_all": { - "heading": "See all applications", - "description": "", - "button": "Open" - } - }, - "questions/approved_firms/permit-application.yaml": { - "heading": "a decision inside twelve weeks, and to know when the clock stops", - "description": "For an approved firm filing on behalf of an owner.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is open, then papers missing, then papers complete, then out to the neighbours and the agencies, then recommendation written, and ends approved, approved on conditions, refused or withdrawn.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "email": "Email", - "property_address": "Property address", - "property_number": "Property number", - "what_is_planned": "What is planned", - "neighbours_notified": "Neighbours notified", - "site": "Site", - "drawings_url": "Drawings url" - }, - "hints": { - "email": "", - "property_address": "", - "property_number": "", - "what_is_planned": "", - "neighbours_notified": "", - "site": "", - "drawings_url": "" - }, - "question": "Permit application?", - "page_description": "" - }, - "questions/building-near-me/index.yaml": { - "question": "What do you need?", - "description": "For someone who lives next to what is being built.", - "needs": { - "objection": { - "heading": "what they think on the record, and answered in the decision", - "description": "For a neighbour who got a notice about what is planned next door.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "What you need", - "requires_description": "The notice that came in the post, which has the case number on it.", - "requires_icon": "key", - "road_title": "What happens next", - "road_description": "It is open, then on the case file, then the applicant has answered, and ends answered in the decision or withdrawn.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "email": "Email", - "case_number": "Case number", - "your_property": "Your property", - "your_objection": "Your objection" - }, - "hints": { - "email": "", - "case_number": "", - "your_property": "", - "your_objection": "" - } - }, - "case-status-enquiry": { - "heading": "to be told where it actually stands", - "description": "For someone waiting on a case and getting nothing back.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is open, then in hand, and ends answered.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Front desk. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "email": "Email", - "case_number_or_address": "Case number or address", - "what_you_want_to_know": "What you want to know" - }, - "hints": { - "email": "", - "case_number_or_address": "", - "what_you_want_to_know": "" - } - }, - "illegal-building-report": { - "heading": "us to go and look, and to hear that we did", - "description": "For someone who can see building going up that nobody was told about.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is open, then inspected, then the owner has been written to, then the owner has answered, and ends resolved, fined or nothing to pursue.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Inspectors. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "email": "Email", - "address": "Address", - "what_you_saw": "What you saw", - "where": "Where" - }, - "hints": { - "email": "", - "address": "", - "what_you_saw": "", - "where": "" - } - } - } - }, - "questions/case_officers/index.yaml": { - "question": "What needs doing?", - "description": "Everything case officers looks after.", - "confirm": "Confirm", - "buckets": { - "appeals": { - "heading": "Appeals", - "description": "Sent in by anyone with an interest who will not accept a decision of ours.", - "moves": { - "open->reconsidered": "We are looking at it again" - }, - "list_title": "Appeals", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "applications": { - "heading": "Applications", - "description": "Sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner.", - "moves": { - "complete->on_hearing": "Out to the neighbours and the agencies", - "complete->incomplete": "Papers missing", - "incomplete->complete": "Papers complete", - "on_hearing->recommended": "Recommendation written", - "on_hearing->incomplete": "Papers missing", - "open->complete": "Papers complete", - "open->incomplete": "Papers missing" - }, - "list_title": "Applications", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "completions": { - "heading": "Completions", - "description": "Sent in by an owner or firm whose building work is finished.", - "moves": { - "open->checked": "Checked against the inspections" - }, - "list_title": "Completions", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "enquiries": { - "heading": "Enquiries", - "description": "Sent in by someone waiting on a case and getting nothing back or whoever is on the counter with a queue and a caller on the line.", - "moves": { - "open->in_hand": "In hand" - }, - "list_title": "Enquiries", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "exemptions": { - "heading": "Exemptions", - "description": "Sent in by someone whose plans break a rule in the zoning map.", - "moves": { - "county_answered->recommended": "Recommended", - "open->county_asked": "With the county" - }, - "list_title": "Exemptions", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "firms": { - "heading": "Firms", - "description": "Sent in by an architect or engineering firm that files for its clients.", - "moves": { - "open->papers_missing": "Waiting on papers", - "open->checked": "Papers checked", - "papers_missing->checked": "Papers checked" - }, - "list_title": "Firms", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "hearing_answers": { - "heading": "Hearing answers", - "description": "Sent in by a road, fire, heritage or county officer who has been asked about a case.", - "moves": { - "open->read": "Read by the case officer", - "open->set_aside": "Set aside with reasons", - "read->followed": "Followed in the decision", - "read->set_aside": "Set aside with reasons" - }, - "list_title": "Hearing answers", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "hearings": { - "heading": "Hearings", - "description": "Sent in by a case officer sending a case out to the authority that must see it.", - "moves": { - "open->no_answer": "The deadline passed with no answer", - "open->cancelled": "Cancelled" - }, - "list_title": "Hearings", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "illegal_building": { - "heading": "Illegal building", - "description": "Sent in by someone who can see building going up that nobody was told about.", - "moves": { - "inspected->owner_asked": "The owner has been written to", - "owner_asked->explained": "The owner has answered" - }, - "list_title": "Illegal building", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "inspections": { - "heading": "Inspections", - "description": "Sent in by an inspector on a scaffold with gloves on and the wind blowing.", - "moves": { - "deviation->escalated": "Handed to a case officer", - "open->escalated": "Handed to a case officer" - }, - "list_title": "Inspections", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "meetings": { - "heading": "Meetings", - "description": "Sent in by someone with an idea for a building and no drawings yet.", - "moves": { - "met->advised": "Written advice sent", - "open->scheduled": "Scheduled", - "scheduled->met": "We have met" - }, - "list_title": "Meetings", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "objections": { - "heading": "Objections", - "description": "Sent in by a neighbour who got a notice about what is planned next door.", - "moves": { - "answered_by_applicant->addressed": "Answered in the decision", - "open->registered": "On the case file", - "registered->answered_by_applicant": "The applicant has answered" - }, - "list_title": "Objections", - "list_note": "Each row is one case. The buttons record what you have just done with it." - } - }, - "links": { - "request-hearing": { - "heading": "an answer by the deadline, or a record that none came", - "description": "For a case officer sending a case out to the authority that must see it.", - "button": "Open" - } - }, - "invites": { - "agencies": { - "heading": "Invite someone into Hearing bodies", - "description": "They get an account, a place in Hearing bodies, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "appeals_board": { - "heading": "Invite someone into Appeals board", - "description": "They get an account, a place in Appeals board, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "approved_firms": { - "heading": "Invite someone into Approved firms", - "description": "They get an account, a place in Approved firms, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "case_officers": { - "heading": "Invite someone into Case officers", - "description": "They get an account, a place in Case officers, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "front_desk": { - "heading": "Invite someone into Front desk", - "description": "They get an account, a place in Front desk, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "inspectors": { - "heading": "Invite someone into Inspectors", - "description": "They get an account, a place in Inspectors, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "section_head": { - "heading": "Invite someone into Head of section", - "description": "They get an account, a place in Head of section, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - } - }, - "invited": { - "heading": "Invitations sent", - "description": "Each invite with the link it made. Mark it done when the person is in.", - "done": "Is in", - "list_title": "Who has been invited", - "list_note": "Each row is one invitation, with the one-time link while it is unused." - } - }, - "questions/case_officers/request-hearing-sent.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back" - }, - "questions/case_officers/request-hearing.yaml": { - "heading": "an answer by the deadline, or a record that none came", - "description": "For a case officer sending a case out to the authority that must see it.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is open, and ends answered, the deadline passed with no answer or cancelled.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "case_number": "Case number", - "which_authority": "Which authority", - "what_we_ask": "What we ask", - "answer_by": "Answer by", - "site": "Site" - }, - "hints": { - "case_number": "", - "which_authority": "", - "what_we_ask": "", - "answer_by": "", - "site": "" - }, - "question": "Request hearing?", - "page_description": "" - }, - "questions/decide/appeal.yaml": { - "question": "What would you like to do?", - "description": "", - "moves": { - "withdrawn": { - "heading": "Withdrawn", - "description": "", - "button": "Withdrawn" - } - } - }, - "questions/decide/exemption-request.yaml": { - "question": "What would you like to do?", - "description": "", - "moves": { - "withdrawn": { - "heading": "Withdrawn", - "description": "", - "button": "Withdrawn" - } - } - }, - "questions/decide/firm-approval.yaml": { - "question": "What would you like to do?", - "description": "", - "moves": { - "checked": { - "heading": "Checked", - "description": "", - "button": "Checked" - } - } - }, - "questions/decide/objection.yaml": { - "question": "What would you like to do?", - "description": "", - "moves": { - "withdrawn": { - "heading": "Withdrawn", - "description": "", - "button": "Withdrawn" - } - } - }, - "questions/decide/permit-application.yaml": { - "question": "What would you like to do?", - "description": "", - "moves": { - "complete": { - "heading": "Complete", - "description": "", - "button": "Complete" - }, - "withdrawn": { - "heading": "Withdrawn", - "description": "", - "button": "Withdrawn" - } - } - }, - "questions/decide/pre-application-meeting.yaml": { - "question": "What would you like to do?", - "description": "", - "moves": { - "cancelled": { - "heading": "Cancelled", - "description": "", - "button": "Cancelled" - } - } - }, - "questions/decide/small-works-application.yaml": { - "question": "What would you like to do?", - "description": "", - "moves": { - "complete": { - "heading": "Complete", - "description": "", - "button": "Complete" - }, - "withdrawn": { - "heading": "Withdrawn", - "description": "", - "button": "Withdrawn" - } - } - }, - "questions/front_desk/index.yaml": { - "question": "What needs doing?", - "description": "Everything front desk looks after.", - "confirm": "Confirm", - "buckets": { - "appeals": { - "heading": "Appeals", - "description": "Sent in by anyone with an interest who will not accept a decision of ours.", - "moves": {}, - "list_title": "Appeals", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "applications": { - "heading": "Applications", - "description": "Sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner.", - "moves": {}, - "list_title": "Applications", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "enquiries": { - "heading": "Enquiries", - "description": "Sent in by someone waiting on a case and getting nothing back or whoever is on the counter with a queue and a caller on the line.", - "moves": { - "in_hand->answered": "Answered", - "open->in_hand": "In hand" - }, - "list_title": "Enquiries", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "firms": { - "heading": "Firms", - "description": "Sent in by an architect or engineering firm that files for its clients.", - "moves": {}, - "list_title": "Firms", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "hearing_answers": { - "heading": "Hearing answers", - "description": "Sent in by a road, fire, heritage or county officer who has been asked about a case.", - "moves": {}, - "list_title": "Hearing answers", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "hearings": { - "heading": "Hearings", - "description": "Sent in by a case officer sending a case out to the authority that must see it.", - "moves": {}, - "list_title": "Hearings", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "meetings": { - "heading": "Meetings", - "description": "Sent in by someone with an idea for a building and no drawings yet.", - "moves": { - "met->cancelled": "Cancelled", - "open->cancelled": "Cancelled", - "scheduled->cancelled": "Cancelled" - }, - "list_title": "Meetings", - "list_note": "Each row is one case. The buttons record what you have just done with it." - } - }, - "links": { - "log-counter-enquiry": { - "heading": "the question written down and sent to whoever has the case", - "description": "For whoever is on the counter with a queue and a caller on the line.", - "button": "Open" - } - }, - "invites": { - "front_desk": { - "heading": "Invite someone into Front desk", - "description": "They get an account, a place in Front desk, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - } - }, - "invited": { - "heading": "Invitations sent", - "description": "Each invite with the link it made. Mark it done when the person is in.", - "done": "Is in", - "list_title": "Who has been invited", - "list_note": "Each row is one invitation, with the one-time link while it is unused." - } - }, - "questions/front_desk/log-counter-enquiry-sent.yaml": { - "question": "What happens now?", - "description": "It has reached our front desk.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back" - }, - "questions/front_desk/log-counter-enquiry.yaml": { - "heading": "the question written down and sent to whoever has the case", - "description": "For whoever is on the counter with a queue and a caller on the line.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is open, then in hand, and ends answered.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Front desk. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "email": "Email", - "case_number_or_address": "Case number or address", - "what_you_want_to_know": "What you want to know" - }, - "hints": { - "email": "", - "case_number_or_address": "", - "what_you_want_to_know": "" - }, - "question": "Log counter enquiry?", - "page_description": "" - }, - "questions/index.yaml": { - "question": "What brings you here?", - "description": "The building authority for twenty-one thousand people. Anything built, demolished, divided or changed in use is decided here: the drawings are checked against the zoning map, the neighbours and the other authorities have their say, and then the head of section signs. The same office inspects what is actually built, signs off finished work, and deals with building nobody applied for.\n", - "opener": { - "heading": "What we do", - "description": "", - "features": { - "we-decide-what-may-be-built": { - "heading": "Permission to build it, and to know where the case stands", - "description": "Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to.\n", - "icon": "" - }, - "your-neighbours-case-is-readable": { - "heading": "What they think on the record, and answered in the decision", - "description": "If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\n", - "icon": "" - } - } - }, - "shopping": { - "heading": "Have a look around", - "description": "", - "items": { - "status-appeals": { - "heading": "See all appeals", - "description": "Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands.", - "icon": "list" - }, - "status-applications": { - "heading": "See all applications", - "description": "Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands.", - "icon": "list" - }, - "status-completions": { - "heading": "See all completions", - "description": "Everything sent in by an owner or firm whose building work is finished, and where each one stands.", - "icon": "list" - }, - "status-exemptions": { - "heading": "See all exemptions", - "description": "Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands.", - "icon": "list" - }, - "status-objections": { - "heading": "See all objections", - "description": "Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands.", - "icon": "list" - } - } - }, - "doors": { - "want-to-build": { - "heading": "Want to build", - "description": "For an owner or a firm with something to build, divide or change.", - "button": "Continue", - "icon": "", - "for_whom": "", - "behind": "To hear what we will allow before paying an architect, permission to build it, and to know where the case stands, to be allowed it anyway, with reasons on the record, the certificate that lets the building be used." - }, - "building-near-me": { - "heading": "Building near me", - "description": "For someone who lives next to what is being built.", - "button": "Continue", - "icon": "", - "for_whom": "", - "behind": "What they think on the record, and answered in the decision, to be told where it actually stands, us to go and look, and to hear that we did." - } - }, - "needs": { - "appeal": { - "heading": "the decision looked at again, by us and then by the board", - "description": "For anyone with an interest who will not accept a decision of ours.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "What you need", - "requires_description": "A decision from us less than three weeks old, and its case number.", - "requires_icon": "key", - "road_title": "What happens next", - "road_description": "It is open, then we are looking at it again, then with the appeals board, and ends we changed our own decision, the board kept our decision, the board overturned us or withdrawn.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "email": "Email", - "case_number": "Case number", - "property": "Property", - "what_you_disagree_with": "What you disagree with", - "your_interest": "Your interest" - }, - "hints": { - "email": "", - "case_number": "", - "property": "", - "what_you_disagree_with": "", - "your_interest": "" - } - }, - "firm-approval": { - "heading": "to be on the list, and then to file without asking again", - "description": "For an architect or engineering firm that files for its clients.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is open, then waiting on papers, then papers checked, and ends approved or declined.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "firm_name": "Firm name", - "org_number": "Org number", - "email": "Email", - "qualified_for": "Qualified for", - "insurance_expires": "Insurance expires", - "insurance_document": "Insurance document" - }, - "hints": { - "firm_name": "", - "org_number": "", - "email": "", - "qualified_for": "", - "insurance_expires": "", - "insurance_document": "" - } - } - } - }, - "questions/inspectors/index.yaml": { - "question": "What needs doing?", - "description": "Everything inspectors looks after.", - "confirm": "Confirm", - "buckets": { - "applications": { - "heading": "Applications", - "description": "Sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner.", - "moves": {}, - "list_title": "Applications", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "completions": { - "heading": "Completions", - "description": "Sent in by an owner or firm whose building work is finished.", - "moves": {}, - "list_title": "Completions", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "illegal_building": { - "heading": "Illegal building", - "description": "Sent in by someone who can see building going up that nobody was told about.", - "moves": { - "explained->resolved": "Resolved", - "explained->dropped": "Nothing to pursue", - "open->inspected": "Inspected" - }, - "list_title": "Illegal building", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "inspections": { - "heading": "Inspections", - "description": "Sent in by an inspector on a scaffold with gloves on and the wind blowing.", - "moves": { - "deviation->as_approved": "Built as approved", - "deviation->put_right": "Put right", - "open->deviation": "Built differently" - }, - "list_title": "Inspections", - "list_note": "Each row is one case. The buttons record what you have just done with it." - } - }, - "links": { - "inspection-finding": { - "heading": "what they found logged before they climb down", - "description": "For an inspector on a scaffold with gloves on and the wind blowing.", - "button": "Open" - } - }, - "invites": { - "inspectors": { - "heading": "Invite someone into Inspectors", - "description": "They get an account, a place in Inspectors, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - } - }, - "invited": { - "heading": "Invitations sent", - "description": "Each invite with the link it made. Mark it done when the person is in.", - "done": "Is in", - "list_title": "Who has been invited", - "list_note": "Each row is one invitation, with the one-time link while it is unused." - } - }, - "questions/inspectors/inspection-finding-sent.yaml": { - "question": "What happens now?", - "description": "It has reached our inspectors.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back" - }, - "questions/inspectors/inspection-finding.yaml": { - "heading": "what they found logged before they climb down", - "description": "For an inspector on a scaffold with gloves on and the wind blowing.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is open, then built differently, and ends built as approved, put right or handed to a case officer.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Inspectors. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "case_number": "Case number", - "site_address": "Site address", - "what_i_found": "What i found", - "where": "Where" - }, - "hints": { - "case_number": "", - "site_address": "", - "what_i_found": "", - "where": "" - }, - "question": "Inspection finding?", - "page_description": "" - }, - "questions/received/appeal.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back", - "see_all": { - "heading": "See all appeals", - "description": "", - "button": "Open" - } - }, - "questions/received/case-status-enquiry.yaml": { - "question": "What happens now?", - "description": "It has reached our front desk.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back" - }, - "questions/received/completion-request.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back", - "see_all": { - "heading": "See all completions", - "description": "", - "button": "Open" - } - }, - "questions/received/exemption-request.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back", - "see_all": { - "heading": "See all exemptions", - "description": "", - "button": "Open" - } - }, - "questions/received/firm-approval.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back" - }, - "questions/received/illegal-building-report.yaml": { - "question": "What happens now?", - "description": "It has reached our inspectors.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back" - }, - "questions/received/objection.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back", - "see_all": { - "heading": "See all objections", - "description": "", - "button": "Open" - } - }, - "questions/received/pre-application-meeting.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back" - }, - "questions/received/small-works-application.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back", - "see_all": { - "heading": "See all applications", - "description": "", - "button": "Open" - } - }, - "questions/section_head/index.yaml": { - "question": "What needs doing?", - "description": "Everything head of section looks after.", - "confirm": "Confirm", - "buckets": { - "appeals": { - "heading": "Appeals", - "description": "Sent in by anyone with an interest who will not accept a decision of ours.", - "moves": { - "reconsidered->before_the_board": "With the appeals board", - "reconsidered->changed_by_us": "We changed our own decision" - }, - "list_title": "Appeals", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "applications": { - "heading": "Applications", - "description": "Sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner.", - "moves": { - "complete->refused": "Refused", - "on_hearing->refused": "Refused", - "recommended->approved": "Approved", - "recommended->approved_with_conditions": "Approved on conditions", - "recommended->refused": "Refused" - }, - "list_title": "Applications", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "completions": { - "heading": "Completions", - "description": "Sent in by an owner or firm whose building work is finished.", - "moves": { - "checked->temporary_permission": "Temporary permission to use", - "checked->certificate_issued": "Certificate issued", - "checked->refused": "Refused", - "open->refused": "Refused", - "temporary_permission->certificate_issued": "Certificate issued" - }, - "list_title": "Completions", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "exemptions": { - "heading": "Exemptions", - "description": "Sent in by someone whose plans break a rule in the zoning map.", - "moves": { - "county_answered->denied": "Denied", - "county_asked->denied": "Denied", - "open->denied": "Denied", - "recommended->granted": "Granted", - "recommended->denied": "Denied" - }, - "list_title": "Exemptions", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "firms": { - "heading": "Firms", - "description": "Sent in by an architect or engineering firm that files for its clients.", - "moves": { - "checked->approved": "Approved", - "checked->declined": "Declined", - "open->declined": "Declined", - "papers_missing->declined": "Declined" - }, - "list_title": "Firms", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "hearing_answers": { - "heading": "Hearing answers", - "description": "Sent in by a road, fire, heritage or county officer who has been asked about a case.", - "moves": {}, - "list_title": "Hearing answers", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "hearings": { - "heading": "Hearings", - "description": "Sent in by a case officer sending a case out to the authority that must see it.", - "moves": {}, - "list_title": "Hearings", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "illegal_building": { - "heading": "Illegal building", - "description": "Sent in by someone who can see building going up that nobody was told about.", - "moves": { - "inspected->fined": "Fined", - "open->fined": "Fined" - }, - "list_title": "Illegal building", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "inspections": { - "heading": "Inspections", - "description": "Sent in by an inspector on a scaffold with gloves on and the wind blowing.", - "moves": { - "deviation->escalated": "Handed to a case officer", - "open->escalated": "Handed to a case officer" - }, - "list_title": "Inspections", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "objections": { - "heading": "Objections", - "description": "Sent in by a neighbour who got a notice about what is planned next door.", - "moves": {}, - "list_title": "Objections", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - } - }, - "links": {}, - "invites": { - "agencies": { - "heading": "Invite someone into Hearing bodies", - "description": "They get an account, a place in Hearing bodies, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "appeals_board": { - "heading": "Invite someone into Appeals board", - "description": "They get an account, a place in Appeals board, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "approved_firms": { - "heading": "Invite someone into Approved firms", - "description": "They get an account, a place in Approved firms, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "case_officers": { - "heading": "Invite someone into Case officers", - "description": "They get an account, a place in Case officers, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "front_desk": { - "heading": "Invite someone into Front desk", - "description": "They get an account, a place in Front desk, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "inspectors": { - "heading": "Invite someone into Inspectors", - "description": "They get an account, a place in Inspectors, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "section_head": { - "heading": "Invite someone into Head of section", - "description": "They get an account, a place in Head of section, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - } - }, - "invited": { - "heading": "Invitations sent", - "description": "Each invite with the link it made. Mark it done when the person is in.", - "done": "Is in", - "list_title": "Who has been invited", - "list_note": "Each row is one invitation, with the one-time link while it is unused." - } - }, - "questions/status/appeals/index.yaml": { - "question": "What has been sent in about appeals?", - "description": "Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands.", - "heading": "Appeals", - "list_description": "", - "list_title": "Appeals", - "list_note": "Each row is one case and the stage it has reached. Names and contact details are not shown here.", - "back": "Back" - }, - "questions/status/applications/index.yaml": { - "question": "What has been sent in about applications?", - "description": "Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands.", - "heading": "Applications", - "list_description": "", - "list_title": "Applications", - "list_note": "Each row is one case and the stage it has reached. Names and contact details are not shown here.", - "back": "Back" - }, - "questions/status/completions/index.yaml": { - "question": "What has been sent in about completions?", - "description": "Everything sent in by an owner or firm whose building work is finished, and where each one stands.", - "heading": "Completions", - "list_description": "", - "list_title": "Completions", - "list_note": "Each row is one case and the stage it has reached. Names and contact details are not shown here.", - "back": "Back" - }, - "questions/status/exemptions/index.yaml": { - "question": "What has been sent in about exemptions?", - "description": "Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands.", - "heading": "Exemptions", - "list_description": "", - "list_title": "Exemptions", - "list_note": "Each row is one case and the stage it has reached. Names and contact details are not shown here.", - "back": "Back" - }, - "questions/status/objections/index.yaml": { - "question": "What has been sent in about objections?", - "description": "Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands.", - "heading": "Objections", - "list_description": "", - "list_title": "Objections", - "list_note": "Each row is one case and the stage it has reached. Names and contact details are not shown here.", - "back": "Back" - }, - "questions/want-to-build/index.yaml": { - "question": "What do you need?", - "description": "For an owner or a firm with something to build, divide or change.", - "needs": { - "pre-application-meeting": { - "heading": "to hear what we will allow before paying an architect", - "description": "For someone with an idea for a building and no drawings yet.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is open, then scheduled, then we have met, and ends written advice sent or cancelled.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "name": "Name", - "email": "Email", - "property_address": "Property address", - "what_you_want": "What you want", - "phone": "Phone", - "site": "Site" - }, - "hints": { - "name": "", - "email": "", - "property_address": "", - "what_you_want": "", - "phone": "", - "site": "" - } - }, - "small-works-application": { - "heading": "permission to build it, and to know where the case stands", - "description": "For an owner applying for something small enough to file themselves.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is open, then papers missing, then papers complete, then out to the neighbours and the agencies, then recommendation written, and ends approved, approved on conditions, refused or withdrawn.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "email": "Email", - "property_address": "Property address", - "property_number": "Property number", - "what_is_planned": "What is planned", - "neighbours_notified": "Neighbours notified", - "site": "Site", - "drawings_url": "Drawings url" - }, - "hints": { - "email": "", - "property_address": "", - "property_number": "", - "what_is_planned": "", - "neighbours_notified": "", - "site": "", - "drawings_url": "" - } - }, - "exemption-request": { - "heading": "to be allowed it anyway, with reasons on the record", - "description": "For someone whose plans break a rule in the zoning map.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "What you need", - "requires_description": "An application already with us, and the case number from its receipt.", - "requires_icon": "key", - "road_title": "What happens next", - "road_description": "It is open, then with the county, then the county has answered, then recommended, and ends granted, denied or withdrawn.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "email": "Email", - "case_number": "Case number", - "which_rule": "Which rule", - "why_it_should_be_allowed": "Why it should be allowed", - "site": "Site" - }, - "hints": { - "email": "", - "case_number": "", - "which_rule": "", - "why_it_should_be_allowed": "", - "site": "" - } - }, - "completion-request": { - "heading": "the certificate that lets the building be used", - "description": "For an owner or firm whose building work is finished.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "What you need", - "requires_description": "A case number, and the work finished or close enough to move in.", - "requires_icon": "key", - "road_title": "What happens next", - "road_description": "It is open, then checked against the inspections, then temporary permission to use, and ends certificate issued or refused.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "email": "Email", - "case_number": "Case number", - "property_address": "Property address", - "work_finished": "Work finished", - "asking_for": "Asking for", - "what_is_outstanding": "What is outstanding" - }, - "hints": { - "email": "", - "case_number": "", - "property_address": "", - "work_finished": "", - "asking_for": "", - "what_is_outstanding": "" - } - } - } - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/aggregates.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/aggregates.yaml deleted file mode 100644 index e65dd76..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/aggregates.yaml +++ /dev/null @@ -1,653 +0,0 @@ -aggregates: -- bucket: appeals - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about the decision looked at again, by us and then by the board. - - What you can do next: {site}/decide/appeal?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - reconsidered: - event: reconsidered - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Reconsidered' - body: |- - Hello, - - What you sent about the decision looked at again, by us and then by the board is now we are looking at it again. - - What you can do next: {site}/decide/appeal?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - changed_by_us: - event: changed_by_us - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Changed by us' - body: |- - Hello, - - What you sent about the decision looked at again, by us and then by the board is now we changed our own decision. - - Solveig Hauge at byggesak@vestmark.example - before_the_board: - event: before_the_board - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Before the board' - body: |- - Hello, - - What you sent about the decision looked at again, by us and then by the board is now with the appeals board. - - What you can do next: {site}/decide/appeal?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - upheld: - event: upheld - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Upheld' - body: |- - Hello, - - What you sent about the decision looked at again, by us and then by the board is now the board kept our decision. - - Solveig Hauge at byggesak@vestmark.example - overturned: - event: overturned - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Overturned' - body: |- - Hello, - - What you sent about the decision looked at again, by us and then by the board is now the board overturned us. - - Solveig Hauge at byggesak@vestmark.example - withdrawn: - event: withdrawn - transitions: - before_the_board: - - withdrawn - - overturned - - upheld - open: - - reconsidered - - withdrawn - reconsidered: - - before_the_board - - withdrawn - - changed_by_us -- bucket: applications - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about permission to build it, and to know where the case stands. - - What you can do next: {site}/decide/small-works-application?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - incomplete: - event: incomplete - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Incomplete' - body: |- - Hello, - - What you sent about permission to build it, and to know where the case stands is now papers missing. - - What you can do next: {site}/decide/small-works-application?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - complete: - event: complete - on_hearing: - event: on_hearing - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: On hearing' - body: |- - Hello, - - What you sent about permission to build it, and to know where the case stands is now out to the neighbours and the agencies. - - What you can do next: {site}/decide/small-works-application?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - recommended: - event: recommended - approved: - event: approved - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Approved' - body: |- - Hello, - - What you sent about permission to build it, and to know where the case stands is now approved. - - Solveig Hauge at byggesak@vestmark.example - approved_with_conditions: - event: approved_with_conditions - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Approved with conditions' - body: |- - Hello, - - What you sent about permission to build it, and to know where the case stands is now approved on conditions. - - Solveig Hauge at byggesak@vestmark.example - refused: - event: refused - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Refused' - body: |- - Hello, - - What you sent about permission to build it, and to know where the case stands is now refused. - - Solveig Hauge at byggesak@vestmark.example - withdrawn: - event: withdrawn - transitions: - complete: - - on_hearing - - withdrawn - - incomplete - - refused - incomplete: - - complete - - withdrawn - on_hearing: - - recommended - - withdrawn - - incomplete - - refused - open: - - complete - - withdrawn - - incomplete - recommended: - - approved - - approved_with_conditions - - withdrawn - - refused -- bucket: completions - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about the certificate that lets the building be used. - - Solveig Hauge at byggesak@vestmark.example - checked: - event: checked - temporary_permission: - event: temporary_permission - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Temporary permission' - body: |- - Hello, - - What you sent about the certificate that lets the building be used is now temporary permission to use. - - Solveig Hauge at byggesak@vestmark.example - certificate_issued: - event: certificate_issued - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Certificate issued' - body: |- - Hello, - - What you sent about the certificate that lets the building be used is now certificate issued. - - Solveig Hauge at byggesak@vestmark.example - refused: - event: refused - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Refused' - body: |- - Hello, - - What you sent about the certificate that lets the building be used is now refused. - - Solveig Hauge at byggesak@vestmark.example - transitions: - checked: - - temporary_permission - - certificate_issued - - refused - open: - - checked - - refused - temporary_permission: - - certificate_issued -- bucket: enquiries - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about to be told where it actually stands. - - Solveig Hauge at byggesak@vestmark.example - in_hand: - event: in_hand - answered: - event: answered - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Answered' - body: |- - Hello, - - What you sent about to be told where it actually stands is now answered. - - Solveig Hauge at byggesak@vestmark.example - transitions: - in_hand: - - answered - open: - - in_hand -- bucket: exemptions - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about to be allowed it anyway, with reasons on the record. - - What you can do next: {site}/decide/exemption-request?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - county_asked: - event: county_asked - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: County asked' - body: |- - Hello, - - What you sent about to be allowed it anyway, with reasons on the record is now with the county. - - What you can do next: {site}/decide/exemption-request?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - county_answered: - event: county_answered - recommended: - event: recommended - granted: - event: granted - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Granted' - body: |- - Hello, - - What you sent about to be allowed it anyway, with reasons on the record is now granted. - - Solveig Hauge at byggesak@vestmark.example - denied: - event: denied - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Denied' - body: |- - Hello, - - What you sent about to be allowed it anyway, with reasons on the record is now denied. - - Solveig Hauge at byggesak@vestmark.example - withdrawn: - event: withdrawn - transitions: - county_answered: - - recommended - - denied - - withdrawn - county_asked: - - county_answered - - denied - - withdrawn - open: - - county_asked - - denied - - withdrawn - recommended: - - granted - - denied - - withdrawn -- bucket: firms - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about to be on the list, and then to file without asking again. - - What you can do next: {site}/decide/firm-approval?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - papers_missing: - event: papers_missing - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Papers missing' - body: |- - Hello, - - What you sent about to be on the list, and then to file without asking again is now waiting on papers. - - What you can do next: {site}/decide/firm-approval?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - checked: - event: checked - approved: - event: approved - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Approved' - body: |- - Hello, - - What you sent about to be on the list, and then to file without asking again is now approved. - - Solveig Hauge at byggesak@vestmark.example - declined: - event: declined - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Declined' - body: |- - Hello, - - What you sent about to be on the list, and then to file without asking again is now declined. - - Solveig Hauge at byggesak@vestmark.example - transitions: - checked: - - approved - - declined - open: - - papers_missing - - checked - - declined - papers_missing: - - checked - - declined -- bucket: hearing_answers - initial: open - states: - open: - event: received - read: - event: read - followed: - event: followed - set_aside: - event: set_aside - transitions: - open: - - read - - set_aside - read: - - followed - - set_aside -- bucket: hearings - initial: open - states: - open: - event: received - answered: - event: answered - no_answer: - event: no_answer - cancelled: - event: cancelled - transitions: - open: - - answered - - no_answer - - cancelled - attended_by: | - the six-week deadline: when it passes with nothing from the agency the case goes to no_answer and the application goes on without one -- bucket: illegal_building - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about us to go and look, and to hear that we did. - - Solveig Hauge at byggesak@vestmark.example - inspected: - event: inspected - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Inspected' - body: |- - Hello, - - What you sent about us to go and look, and to hear that we did is now inspected. - - Solveig Hauge at byggesak@vestmark.example - owner_asked: - event: owner_asked - explained: - event: explained - resolved: - event: resolved - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Resolved' - body: |- - Hello, - - What you sent about us to go and look, and to hear that we did is now resolved. - - Solveig Hauge at byggesak@vestmark.example - fined: - event: fined - dropped: - event: dropped - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Dropped' - body: |- - Hello, - - What you sent about us to go and look, and to hear that we did is now nothing to pursue. - - Solveig Hauge at byggesak@vestmark.example - transitions: - explained: - - resolved - - dropped - inspected: - - owner_asked - - fined - open: - - inspected - - fined - owner_asked: - - explained -- bucket: inspections - initial: open - states: - open: - event: received - as_approved: - event: as_approved - deviation: - event: deviation - put_right: - event: put_right - escalated: - event: escalated - transitions: - deviation: - - as_approved - - put_right - - escalated - open: - - deviation - - escalated -- bucket: meetings - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello {name}, - - We have received what you sent about to hear what we will allow before paying an architect. - - What you can do next: {site}/decide/pre-application-meeting?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - scheduled: - event: scheduled - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Scheduled' - body: |- - Hello {name}, - - What you sent about to hear what we will allow before paying an architect is now scheduled. - - What you can do next: {site}/decide/pre-application-meeting?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - met: - event: met - advised: - event: advised - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Advised' - body: |- - Hello {name}, - - What you sent about to hear what we will allow before paying an architect is now written advice sent. - - Solveig Hauge at byggesak@vestmark.example - cancelled: - event: cancelled - transitions: - met: - - advised - - cancelled - open: - - scheduled - - cancelled - scheduled: - - met - - cancelled -- bucket: objections - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello, - - We have received what you sent about what they think on the record, and answered in the decision. - - What you can do next: {site}/decide/objection?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - registered: - event: registered - answered_by_applicant: - event: answered_by_applicant - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Answered by applicant' - body: |- - Hello, - - What you sent about what they think on the record, and answered in the decision is now the applicant has answered. - - What you can do next: {site}/decide/objection?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - addressed: - event: addressed - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Addressed' - body: |- - Hello, - - What you sent about what they think on the record, and answered in the decision is now answered in the decision. - - Solveig Hauge at byggesak@vestmark.example - withdrawn: - event: withdrawn - transitions: - answered_by_applicant: - - addressed - - withdrawn - open: - - registered - - withdrawn - registered: - - answered_by_applicant - - withdrawn diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/answers-full-seed1.jsonl b/vendor/trainer/runs/permits-doors-2026-09-25/answers-full-seed1.jsonl deleted file mode 100644 index 594d05f..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/answers-full-seed1.jsonl +++ /dev/null @@ -1,25 +0,0 @@ -{"id":"garage-owner@/","choice":"Want to build","confidence":0.95} -{"id":"garage-owner@/want-to-build","choice":"to be allowed it anyway, with reasons on the record","confidence":0.95} -{"id":"shop-to-flats@/","choice":"Want to build","confidence":0.95} -{"id":"shop-to-flats@/want-to-build","choice":"permission to build it, and to know where the case stands","confidence":0.95} -{"id":"too-close-to-boundary@/","choice":"Want to build","confidence":0.95} -{"id":"too-close-to-boundary@/want-to-build","choice":"to be allowed it anyway, with reasons on the record","confidence":0.95} -{"id":"neighbour-view@/","choice":"Building near me","confidence":0.95} -{"id":"neighbour-view@/building-near-me","choice":"what they think on the record, and answered in the decision","confidence":0.95} -{"id":"neighbour-parking@/","choice":"Want to build","confidence":1.0} -{"id":"neighbour-parking@/building-near-me","choice":"what they think on the record, and answered in the decision","confidence":0.95} -{"id":"refused-applicant@/","choice":"After a decision","confidence":0.95} -{"id":"neighbour-appeals@/","choice":"After a decision","confidence":0.95} -{"id":"board-member@/","choice":"After a decision","confidence":0.95} -{"id":"firm-wants-certificate@/","choice":"Want to build","confidence":0.95} -{"id":"firm-wants-certificate@/want-to-build","choice":"the certificate that lets the building be used","confidence":0.95} -{"id":"wants-to-move-in@/","choice":"Want to build","confidence":0.95} -{"id":"wants-to-move-in@/want-to-build","choice":"the certificate that lets the building be used","confidence":0.95} -{"id":"something-behind-fence@/","choice":"Building near me","confidence":0.95} -{"id":"something-behind-fence@/building-near-me","choice":"us to go and look, and to hear that we did","confidence":0.95} -{"id":"owner-explains@/","choice":"Want to build","confidence":0.95} -{"id":"owner-explains@/building-near-me","choice":"us to go and look, and to hear that we did","confidence":0.95} -{"id":"new-firm@/","choice":"Work as a firm","confidence":1.0} -{"id":"firm-insurance-lapsed@/","choice":"Want to build","confidence":0.95} -{"id":"where-is-my-case@/","choice":"Want to build","confidence":0.95} -{"id":"where-is-my-case@/building-near-me","choice":"to be told where it actually stands","confidence":0.95} diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/answers-full-seed2.jsonl b/vendor/trainer/runs/permits-doors-2026-09-25/answers-full-seed2.jsonl deleted file mode 100644 index d97dbc2..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/answers-full-seed2.jsonl +++ /dev/null @@ -1,25 +0,0 @@ -{"id":"garage-owner@/","choice":"Want to build","confidence":0.95} -{"id":"garage-owner@/want-to-build","choice":"to be allowed it anyway, with reasons on the record","confidence":0.95} -{"id":"shop-to-flats@/","choice":"Want to build","confidence":0.95} -{"id":"shop-to-flats@/want-to-build","choice":"to be allowed it anyway, with reasons on the record","confidence":0.95} -{"id":"too-close-to-boundary@/","choice":"Want to build","confidence":0.95} -{"id":"too-close-to-boundary@/want-to-build","choice":"to be allowed it anyway, with reasons on the record","confidence":0.95} -{"id":"neighbour-view@/","choice":"Building near me","confidence":0.95} -{"id":"neighbour-view@/building-near-me","choice":"what they think on the record, and answered in the decision","confidence":0.95} -{"id":"neighbour-parking@/","choice":"Building near me","confidence":1.0} -{"id":"neighbour-parking@/building-near-me","choice":"what they think on the record, and answered in the decision","confidence":0.95} -{"id":"refused-applicant@/","choice":"After a decision","confidence":0.95} -{"id":"neighbour-appeals@/","choice":"After a decision","confidence":0.95} -{"id":"board-member@/","choice":"After a decision","confidence":0.95} -{"id":"firm-wants-certificate@/","choice":"Want to build","confidence":0.95} -{"id":"firm-wants-certificate@/want-to-build","choice":"the certificate that lets the building be used","confidence":0.95} -{"id":"wants-to-move-in@/","choice":"Building near me","confidence":0.95} -{"id":"wants-to-move-in@/want-to-build","choice":"to be allowed it anyway, with reasons on the record","confidence":0.85} -{"id":"something-behind-fence@/","choice":"Building near me","confidence":0.95} -{"id":"something-behind-fence@/building-near-me","choice":"us to go and look, and to hear that we did","confidence":0.95} -{"id":"owner-explains@/","choice":"Want to build","confidence":0.95} -{"id":"owner-explains@/building-near-me","choice":"us to go and look, and to hear that we did","confidence":0.95} -{"id":"new-firm@/","choice":"Work as a firm","confidence":1.0} -{"id":"firm-insurance-lapsed@/","choice":"Building near me","confidence":0.95} -{"id":"where-is-my-case@/","choice":"Want to build","confidence":0.95} -{"id":"where-is-my-case@/building-near-me","choice":"to be told where it actually stands","confidence":0.95} diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/answers-full-seed3.jsonl b/vendor/trainer/runs/permits-doors-2026-09-25/answers-full-seed3.jsonl deleted file mode 100644 index 12cc0c4..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/answers-full-seed3.jsonl +++ /dev/null @@ -1,25 +0,0 @@ -{"id":"garage-owner@/","choice":"Want to build","confidence":0.95} -{"id":"garage-owner@/want-to-build","choice":"to hear what we will allow before paying an architect","confidence":0.95} -{"id":"shop-to-flats@/","choice":"Want to build","confidence":0.95} -{"id":"shop-to-flats@/want-to-build","choice":"permission to build it, and to know where the case stands","confidence":0.95} -{"id":"too-close-to-boundary@/","choice":"Want to build","confidence":0.95} -{"id":"too-close-to-boundary@/want-to-build","choice":"to be allowed it anyway, with reasons on the record","confidence":0.95} -{"id":"neighbour-view@/","choice":"Building near me","confidence":0.95} -{"id":"neighbour-view@/building-near-me","choice":"what they think on the record, and answered in the decision","confidence":0.95} -{"id":"neighbour-parking@/","choice":"Building near me","confidence":0.95} -{"id":"neighbour-parking@/building-near-me","choice":"what they think on the record, and answered in the decision","confidence":0.95} -{"id":"refused-applicant@/","choice":"After a decision","confidence":0.95} -{"id":"neighbour-appeals@/","choice":"After a decision","confidence":0.95} -{"id":"board-member@/","choice":"After a decision","confidence":0.95} -{"id":"firm-wants-certificate@/","choice":"Want to build","confidence":0.95} -{"id":"firm-wants-certificate@/want-to-build","choice":"the certificate that lets the building be used","confidence":0.95} -{"id":"wants-to-move-in@/","choice":"Want to build","confidence":0.95} -{"id":"wants-to-move-in@/want-to-build","choice":"the certificate that lets the building be used","confidence":0.95} -{"id":"something-behind-fence@/","choice":"Building near me","confidence":0.95} -{"id":"something-behind-fence@/building-near-me","choice":"us to go and look, and to hear that we did","confidence":0.95} -{"id":"owner-explains@/","choice":"Want to build","confidence":0.95} -{"id":"owner-explains@/building-near-me","choice":"to be told where it actually stands","confidence":0.95} -{"id":"new-firm@/","choice":"Work as a firm","confidence":1.0} -{"id":"firm-insurance-lapsed@/","choice":"Building near me","confidence":0.95} -{"id":"where-is-my-case@/","choice":"Building near me","confidence":0.95} -{"id":"where-is-my-case@/building-near-me","choice":"to be told where it actually stands","confidence":0.95} diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/needs.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/needs.yaml deleted file mode 100644 index 05d9a07..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/needs.yaml +++ /dev/null @@ -1,499 +0,0 @@ -needs: -- id: pre-application-meeting - who: someone with an idea for a building and no drawings yet - wants: to hear what we will allow before paying an architect - enters: / - via: Want to build - lands_in: meetings - handled_by: case_officers - stages: - - open - - scheduled - - met - - advised - - cancelled - done_when: - - advised - - cancelled - success: - - advised - max_steps: 2 - max_fields: 5 - stage_words: - open: open - scheduled: scheduled - met: we have met - advised: written advice sent - cancelled: cancelled - also_moved_by: - - front_desk -- id: small-works-application - who: an owner applying for something small enough to file themselves - wants: permission to build it, and to know where the case stands - enters: / - via: Want to build - lands_in: applications - handled_by: case_officers - stages: - - open - - incomplete - - complete - - on_hearing - - recommended - - approved - - approved_with_conditions - - refused - - withdrawn - done_when: - - approved - - approved_with_conditions - - refused - - withdrawn - success: - - approved - - approved_with_conditions - max_steps: 2 - max_fields: 6 - stage_words: - open: open - incomplete: papers missing - complete: papers complete - on_hearing: out to the neighbours and the agencies - recommended: recommendation written - approved: approved - approved_with_conditions: approved on conditions - refused: refused - withdrawn: withdrawn - also_moved_by: - - section_head -- id: exemption-request - who: someone whose plans break a rule in the zoning map - wants: to be allowed it anyway, with reasons on the record - enters: / - via: Want to build - lands_in: exemptions - handled_by: case_officers - stages: - - open - - county_asked - - county_answered - - recommended - - granted - - denied - - withdrawn - done_when: - - granted - - denied - - withdrawn - success: - - granted - max_steps: 2 - max_fields: 4 - stage_words: - open: open - county_asked: with the county - county_answered: the county has answered - recommended: recommended - granted: granted - denied: denied - withdrawn: withdrawn - also_moved_by: - - agencies - - section_head -- id: completion-request - who: an owner or firm whose building work is finished - wants: the certificate that lets the building be used - enters: / - via: Want to build - lands_in: completions - handled_by: case_officers - stages: - - open - - checked - - temporary_permission - - certificate_issued - - refused - done_when: - - certificate_issued - - refused - success: - - certificate_issued - max_steps: 2 - max_fields: 5 - stage_words: - open: open - checked: checked against the inspections - temporary_permission: temporary permission to use - certificate_issued: certificate issued - refused: refused - also_moved_by: - - section_head -- id: objection - who: a neighbour who got a notice about what is planned next door - wants: what they think on the record, and answered in the decision - enters: / - via: Building near me - lands_in: objections - handled_by: case_officers - stages: - - open - - registered - - answered_by_applicant - - addressed - - withdrawn - done_when: - - addressed - - withdrawn - success: - - addressed - max_steps: 2 - max_fields: 4 - stage_words: - open: open - registered: on the case file - answered_by_applicant: the applicant has answered - addressed: answered in the decision - withdrawn: withdrawn - also_moved_by: - - approved_firms -- id: case-status-enquiry - who: someone waiting on a case and getting nothing back - wants: to be told where it actually stands - enters: / - via: Building near me - lands_in: enquiries - handled_by: front_desk - stages: - - open - - in_hand - - answered - done_when: - - answered - success: - - answered - max_steps: 2 - max_fields: 3 - stage_words: - open: open - in_hand: in hand - answered: answered - also_moved_by: - - case_officers -- id: illegal-building-report - who: someone who can see building going up that nobody was told about - wants: us to go and look, and to hear that we did - enters: / - via: Building near me - lands_in: illegal_building - handled_by: inspectors - stages: - - open - - inspected - - owner_asked - - explained - - resolved - - fined - - dropped - done_when: - - resolved - - fined - - dropped - success: - - resolved - - dropped - max_steps: 2 - max_fields: 3 - stage_words: - open: open - inspected: inspected - owner_asked: the owner has been written to - explained: the owner has answered - resolved: resolved - fined: fined - dropped: nothing to pursue - also_moved_by: - - case_officers - - section_head -- id: appeal - who: anyone with an interest who will not accept a decision of ours - wants: the decision looked at again, by us and then by the board - enters: / - via: After a decision - lands_in: appeals - handled_by: case_officers - stages: - - open - - reconsidered - - changed_by_us - - before_the_board - - upheld - - overturned - - withdrawn - done_when: - - changed_by_us - - upheld - - overturned - - withdrawn - success: - - changed_by_us - - upheld - max_steps: 2 - max_fields: 5 - stage_words: - open: open - reconsidered: we are looking at it again - changed_by_us: we changed our own decision - before_the_board: with the appeals board - upheld: the board kept our decision - overturned: the board overturned us - withdrawn: withdrawn - also_moved_by: - - appeals_board - - section_head -- id: firm-approval - who: an architect or engineering firm that files for its clients - wants: to be on the list, and then to file without asking again - enters: / - via: Work as a firm - lands_in: firms - handled_by: case_officers - stages: - - open - - papers_missing - - checked - - approved - - declined - done_when: - - approved - - declined - success: - - approved - max_steps: 2 - max_fields: 6 - stage_words: - open: open - papers_missing: waiting on papers - checked: papers checked - approved: approved - declined: declined - also_moved_by: - - section_head -- id: permit-application - who: an approved firm filing on behalf of an owner - wants: a decision inside twelve weeks, and to know when the clock stops - enters: /approved_firms/permit-application - via: a decision inside twelve weeks, and to know when the clock stops - lands_in: applications - handled_by: case_officers - stages: - - open - - incomplete - - complete - - on_hearing - - recommended - - approved - - approved_with_conditions - - refused - - withdrawn - done_when: - - approved - - approved_with_conditions - - refused - - withdrawn - success: - - approved - - approved_with_conditions - max_steps: 1 - max_fields: 6 - stage_words: - open: open - incomplete: papers missing - complete: papers complete - on_hearing: out to the neighbours and the agencies - recommended: recommendation written - approved: approved - approved_with_conditions: approved on conditions - refused: refused - withdrawn: withdrawn - enters_as: approved_firms - also_moved_by: - - section_head -- id: log-counter-enquiry - who: whoever is on the counter with a queue and a caller on the line - wants: the question written down and sent to whoever has the case - enters: /front_desk/log-counter-enquiry - via: the question written down and sent to whoever has the case - lands_in: enquiries - handled_by: front_desk - stages: - - open - - in_hand - - answered - done_when: - - answered - success: - - answered - max_steps: 1 - max_fields: 3 - stage_words: - open: open - in_hand: in hand - answered: answered - enters_as: front_desk - also_moved_by: - - case_officers -- id: request-hearing - who: a case officer sending a case out to the authority that must see it - wants: an answer by the deadline, or a record that none came - enters: /case_officers/request-hearing - via: an answer by the deadline, or a record that none came - lands_in: hearings - handled_by: case_officers - stages: - - open - - answered - - no_answer - - cancelled - done_when: - - answered - - no_answer - - cancelled - success: - - answered - max_steps: 1 - max_fields: 4 - stage_words: - open: open - answered: answered - no_answer: the deadline passed with no answer - cancelled: cancelled - enters_as: case_officers - also_moved_by: - - agencies -- id: hearing-answer - who: a road, fire, heritage or county officer who has been asked about a case - wants: their answer on the file, in their own words - enters: /agencies/hearing-answer - via: their answer on the file, in their own words - lands_in: hearing_answers - handled_by: case_officers - stages: - - open - - read - - followed - - set_aside - done_when: - - followed - - set_aside - success: - - followed - max_steps: 1 - max_fields: 4 - stage_words: - open: open - read: read by the case officer - followed: followed in the decision - set_aside: set aside with reasons - enters_as: agencies -- id: inspection-finding - who: an inspector on a scaffold with gloves on and the wind blowing - wants: what they found logged before they climb down - enters: /inspectors/inspection-finding - via: what they found logged before they climb down - lands_in: inspections - handled_by: inspectors - stages: - - open - - as_approved - - deviation - - put_right - - escalated - done_when: - - as_approved - - put_right - - escalated - success: - - as_approved - - put_right - max_steps: 1 - max_fields: 3 - stage_words: - open: open - as_approved: built as approved - deviation: built differently - put_right: put right - escalated: handed to a case officer - enters_as: inspectors - also_moved_by: - - case_officers - - section_head -personas: -- id: garage-owner - need: pre-application-meeting - text: We want to put a double garage where the old shed is. Before I pay an architect I'd like to know whether you'll even allow it, because the neighbour says it's too close to the road. -- id: shop-to-flats - need: pre-application-meeting - text: I own the old grocery on Torget and want to make four flats out of it. There are a lot of questions - parking, fire, the facade is listed. Can we sit down with someone? -- id: firm-files-extension - need: permit-application - text: We are the responsible applicant for an extension at Bjorkeveien 14. Drawings, site plan and the neighbour notices are all ready. We file maybe forty of these a year. -- id: owner-small-window - need: permit-application - text: I want to put a dormer window in my roof. The man at the counter said I have to apply even though it's small. -- id: missing-drawings - need: permit-application - text: You wrote that our section drawing is missing and the case is on hold. I've got it here now, where do I send it so the clock starts again? -- id: too-close-to-boundary - need: exemption-request - text: The garage ends up one and a half metres from the boundary and the plan says four. We are asking you to allow it anyway - the ground falls away steeply everywhere else on the plot. -- id: neighbour-view - need: objection - text: I got a notice about the extension at number 14. It takes the afternoon sun off my entire terrace and I want that on the record before you decide anything. -- id: neighbour-parking - need: objection - text: The flats they want to build in the old grocery have four parking places for four flats and everyone here already parks on the street. I object. -- id: road-authority - need: hearing-answer - text: 'Regarding your case 2026/418: the access onto the county road is within the sight line and we cannot accept it as drawn. Our formal reply is attached.' -- id: fire-service - need: hearing-answer - text: We have looked at the conversion on Torget. We have no objection provided the stairwell is upgraded. Reference your case 2026/501. -- id: refused-applicant - need: appeal - text: You refused our exemption on the ninth. We don't accept the reasoning - you've allowed the same thing twice in the same street. We're appealing. -- id: neighbour-appeals - need: appeal - text: You approved the extension next door even though I objected. I'm appealing the decision. What do I need to send? -- id: board-member - need: appeal - text: I sit on the appeals board. I need the case, our own decision, and what the neighbours wrote, before Tuesday. -- id: inspector-on-roof - need: inspection-finding - text: I'm up on the scaffold at Bjorkeveien. The fire wall isn't built to the drawing at all. I've got gloves on and it's blowing. I want this logged before I climb down. -- id: inspector-all-good - need: inspection-finding - text: Been out at Torget. Everything is as approved. Nothing to report but I have to record that I was there. -- id: firm-wants-certificate - need: completion-request - text: The work at Bjorkeveien 14 is finished and inspected. We're asking for the completion certificate so the owners can get their mortgage released. -- id: wants-to-move-in - need: completion-request - text: The house is done apart from the outside steps, which we can't pour until spring. The family has sold their flat. Can we get a temporary permission to move in? -- id: something-behind-fence - need: illegal-building-report - text: There's a large structure going up behind the fence at Solbakken 7. Nobody has had a notice about it and it's been going on for two weeks. -- id: owner-explains - need: illegal-building-report - text: I got your letter about the terrace. I genuinely did not know it needed an application, it's been there since we moved in. What happens now? -- id: new-firm - need: firm-approval - text: We are a three-person architecture firm that has just started. We want to be approved so we can file applications for our clients in your municipality. -- id: firm-insurance-lapsed - need: firm-approval - text: You wrote that our liability insurance certificate has expired. We have renewed it, here it is. -- id: counter-phone-call - need: log-counter-enquiry - text: A woman rang about the case behind her house. Wants to know where it stands. I'm at the counter and there's a queue - I need to write it down and send it to whoever has that case. -- id: where-is-my-case - need: case-status-enquiry - text: I sent in my application five weeks ago and I've heard nothing. Is anyone looking at it? Is it in the six weeks with the neighbours or is it waiting on me? diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/after-a-decision/index.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/after-a-decision/index.yaml deleted file mode 100644 index 16260c1..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/after-a-decision/index.yaml +++ /dev/null @@ -1,43 +0,0 @@ -name: What do you need? -description: For someone who has had a decision from us and does not accept it. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: the decision looked at again, by us and then by the board - description: For anyone with an interest who will not accept a decision of ours. - action: /received/appeal - consequence: - - Send - record_as: appeals - features: - - name: What you need - description: A decision from us less than three weeks old, and its case number. - icon: lucide:key - - name: What happens next - description: It is open, then we are looking at it again, then with the appeals board, and ends we changed our own decision, the board kept our decision, the board overturned us or withdrawn. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: case_number - label: Case number - type: text - - name: property - label: Property - type: text - - name: what_you_disagree_with - label: What you disagree with - type: textarea - - name: your_interest - label: Your interest - type: select - options: - - I applied - - I am a neighbour - - Other diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/agencies/_section.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/agencies/_section.yaml deleted file mode 100644 index 71cfb91..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/agencies/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: agencies diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/agencies/hearing-answer-sent.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/agencies/hearing-answer-sent.yaml deleted file mode 100644 index 8bc747e..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/agencies/hearing-answer-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: /agencies - consequence: - - Back diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/agencies/hearing-answer.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/agencies/hearing-answer.yaml deleted file mode 100644 index 23c7b7e..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/agencies/hearing-answer.yaml +++ /dev/null @@ -1,46 +0,0 @@ -followup: false -name: Hearing answer? -description: '' -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: their answer on the file, in their own words - description: For a road, fire, heritage or county officer who has been asked about a case. - action: /agencies/hearing-answer-sent - consequence: - - Send - record_as: hearing_answers - features: - - name: What you need - description: The hearing letter we sent you, which has the case number on it. - icon: lucide:key - - name: What happens next - description: It is open, then read by the case officer, and ends followed in the decision or set aside with reasons. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: case_number - label: Case number - type: text - - name: which_authority - label: Which authority - type: select - options: - - Road authority - - Fire service - - Heritage office - - The county - - name: our_answer - label: Our answer - type: select - options: - - No objection - - Objection - - Conditions required - - name: what_we_say - label: What we say - type: textarea diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/agencies/index.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/agencies/index.yaml deleted file mode 100644 index 485074a..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/agencies/index.yaml +++ /dev/null @@ -1,78 +0,0 @@ -name: What needs doing? -description: Everything hearing bodies looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Exemptions - description: Sent in by someone whose plans break a rule in the zoning map. - action: /agencies - consequence: - - Confirm - features: - - name: Exemptions - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: exemptions - requires_group: agencies - transitions: - - from: county_asked - to: county_answered - label: The county has answered -- name: Hearings - description: Sent in by a case officer sending a case out to the authority that must see it. - action: /agencies - consequence: - - Confirm - features: - - name: Hearings - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: hearings - requires_group: agencies - transitions: - - from: open - to: answered - label: Answered -- name: their answer on the file, in their own words - description: For a road, fire, heritage or county officer who has been asked about a case. - action: /agencies/hearing-answer - consequence: - - Open -- name: Invite someone into Hearing bodies - description: They get an account, a place in Hearing bodies, and a one-time link to set their own password or passkey. - action: /agencies - consequence: - - Invite - invite: - group: agencies - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite with the link it made. Mark it done when the person is in. - action: /agencies - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: agencies - transitions: - - from: open - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/appeals_board/_section.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/appeals_board/_section.yaml deleted file mode 100644 index a23502c..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/appeals_board/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: appeals_board diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/appeals_board/index.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/appeals_board/index.yaml deleted file mode 100644 index fb84700..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/appeals_board/index.yaml +++ /dev/null @@ -1,59 +0,0 @@ -name: What needs doing? -description: Everything appeals board looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Appeals - description: Sent in by anyone with an interest who will not accept a decision of ours. - action: /appeals_board - consequence: - - Confirm - features: - - name: Appeals - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: appeals - requires_group: appeals_board - transitions: - - from: before_the_board - to: overturned - label: The board overturned us - - from: before_the_board - to: upheld - label: The board kept our decision -- name: Invite someone into Appeals board - description: They get an account, a place in Appeals board, and a one-time link to set their own password or passkey. - action: /appeals_board - consequence: - - Invite - invite: - group: appeals_board - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite with the link it made. Mark it done when the person is in. - action: /appeals_board - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: appeals_board - transitions: - - from: open - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/approved_firms/_section.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/approved_firms/_section.yaml deleted file mode 100644 index 85f1f10..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/approved_firms/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: approved_firms diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/approved_firms/index.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/approved_firms/index.yaml deleted file mode 100644 index bc823e4..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/approved_firms/index.yaml +++ /dev/null @@ -1,61 +0,0 @@ -name: What needs doing? -description: Everything approved firms looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Objections - description: Sent in by a neighbour who got a notice about what is planned next door. - action: /approved_firms - consequence: - - Confirm - features: - - name: Objections - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: objections - requires_group: approved_firms - transitions: - - from: registered - to: answered_by_applicant - label: The applicant has answered -- name: a decision inside twelve weeks, and to know when the clock stops - description: For an approved firm filing on behalf of an owner. - action: /approved_firms/permit-application - consequence: - - Open -- name: Invite someone into Approved firms - description: They get an account, a place in Approved firms, and a one-time link to set their own password or passkey. - action: /approved_firms - consequence: - - Invite - invite: - group: approved_firms - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite with the link it made. Mark it done when the person is in. - action: /approved_firms - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: approved_firms - transitions: - - from: open - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/approved_firms/permit-application-sent.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/approved_firms/permit-application-sent.yaml deleted file mode 100644 index 6914aa3..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/approved_firms/permit-application-sent.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: See all applications - description: '' - action: /status/applications - consequence: - - Open -- name: Back - description: '' - action: /approved_firms - consequence: - - Back diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/approved_firms/permit-application.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/approved_firms/permit-application.yaml deleted file mode 100644 index 50d5e38..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/approved_firms/permit-application.yaml +++ /dev/null @@ -1,48 +0,0 @@ -followup: false -name: Permit application? -description: '' -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: a decision inside twelve weeks, and to know when the clock stops - description: For an approved firm filing on behalf of an owner. - action: /approved_firms/permit-application-sent - consequence: - - Send - record_as: applications - features: - - name: What happens next - description: It is open, then papers missing, then papers complete, then out to the neighbours and the agencies, then recommendation written, and ends approved, approved on conditions, refused or withdrawn. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: property_address - label: Property address - type: text - - name: property_number - label: Property number - type: text - - name: what_is_planned - label: What is planned - type: textarea - - name: neighbours_notified - label: Neighbours notified - type: select - options: - - Yes - - Not yet - - name: site - label: Site - type: location - optional: true - - name: drawings_url - label: Drawings url - type: text - optional: true diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/building-near-me/index.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/building-near-me/index.yaml deleted file mode 100644 index caf6e50..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/building-near-me/index.yaml +++ /dev/null @@ -1,88 +0,0 @@ -name: What do you need? -description: For someone who lives next to what is being built. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: what they think on the record, and answered in the decision - description: For a neighbour who got a notice about what is planned next door. - action: /received/objection - consequence: - - Send - record_as: objections - features: - - name: What you need - description: The notice that came in the post, which has the case number on it. - icon: lucide:key - - name: What happens next - description: It is open, then on the case file, then the applicant has answered, and ends answered in the decision or withdrawn. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: case_number - label: Case number - type: text - - name: your_property - label: Your property - type: text - - name: your_objection - label: Your objection - type: textarea -- name: to be told where it actually stands - description: For someone waiting on a case and getting nothing back. - action: /received/case-status-enquiry - consequence: - - Send - record_as: enquiries - features: - - name: What happens next - description: It is open, then in hand, and ends answered. - icon: lucide:route - - name: Who reads it - description: Front desk. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: case_number_or_address - label: Case number or address - type: text - - name: what_you_want_to_know - label: What you want to know - type: textarea -- name: us to go and look, and to hear that we did - description: For someone who can see building going up that nobody was told about. - action: /received/illegal-building-report - consequence: - - Send - record_as: illegal_building - features: - - name: What happens next - description: It is open, then inspected, then the owner has been written to, then the owner has answered, and ends resolved, fined or nothing to pursue. - icon: lucide:route - - name: Who reads it - description: Inspectors. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: address - label: Address - type: text - - name: what_you_saw - label: What you saw - type: textarea - - name: where - label: Where - type: location - optional: true diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/case_officers/_section.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/case_officers/_section.yaml deleted file mode 100644 index 0eb3949..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/case_officers/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: case_officers diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/case_officers/index.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/case_officers/index.yaml deleted file mode 100644 index d954b6c..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/case_officers/index.yaml +++ /dev/null @@ -1,401 +0,0 @@ -name: What needs doing? -description: Everything case officers looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Appeals - description: Sent in by anyone with an interest who will not accept a decision of ours. - action: /case_officers - consequence: - - Confirm - features: - - name: Appeals - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: appeals - requires_group: case_officers - transitions: - - from: open - to: reconsidered - label: We are looking at it again -- name: Applications - description: Sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner. - action: /case_officers - consequence: - - Confirm - features: - - name: Applications - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: applications - requires_group: case_officers - transitions: - - from: complete - to: on_hearing - label: Out to the neighbours and the agencies - - from: complete - to: incomplete - label: Papers missing - - from: incomplete - to: complete - label: Papers complete - - from: on_hearing - to: recommended - label: Recommendation written - - from: on_hearing - to: incomplete - label: Papers missing - - from: open - to: complete - label: Papers complete - - from: open - to: incomplete - label: Papers missing -- name: Completions - description: Sent in by an owner or firm whose building work is finished. - action: /case_officers - consequence: - - Confirm - features: - - name: Completions - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: completions - requires_group: case_officers - transitions: - - from: open - to: checked - label: Checked against the inspections -- name: Enquiries - description: Sent in by someone waiting on a case and getting nothing back or whoever is on the counter with a queue and a caller on the line. - action: /case_officers - consequence: - - Confirm - features: - - name: Enquiries - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: enquiries - requires_group: case_officers - transitions: - - from: open - to: in_hand - label: In hand -- name: Exemptions - description: Sent in by someone whose plans break a rule in the zoning map. - action: /case_officers - consequence: - - Confirm - features: - - name: Exemptions - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: exemptions - requires_group: case_officers - transitions: - - from: county_answered - to: recommended - label: Recommended - - from: open - to: county_asked - label: With the county -- name: Firms - description: Sent in by an architect or engineering firm that files for its clients. - action: /case_officers - consequence: - - Confirm - features: - - name: Firms - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: firms - requires_group: case_officers - transitions: - - from: open - to: papers_missing - label: Waiting on papers - - from: open - to: checked - label: Papers checked - - from: papers_missing - to: checked - label: Papers checked -- name: Hearing answers - description: Sent in by a road, fire, heritage or county officer who has been asked about a case. - action: /case_officers - consequence: - - Confirm - features: - - name: Hearing answers - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: hearing_answers - requires_group: case_officers - transitions: - - from: open - to: read - label: Read by the case officer - - from: open - to: set_aside - label: Set aside with reasons - - from: read - to: followed - label: Followed in the decision - - from: read - to: set_aside - label: Set aside with reasons -- name: Hearings - description: Sent in by a case officer sending a case out to the authority that must see it. - action: /case_officers - consequence: - - Confirm - features: - - name: Hearings - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: hearings - requires_group: case_officers - transitions: - - from: open - to: no_answer - label: The deadline passed with no answer - - from: open - to: cancelled - label: Cancelled -- name: Illegal building - description: Sent in by someone who can see building going up that nobody was told about. - action: /case_officers - consequence: - - Confirm - features: - - name: Illegal building - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: illegal_building - requires_group: case_officers - transitions: - - from: inspected - to: owner_asked - label: The owner has been written to - - from: owner_asked - to: explained - label: The owner has answered -- name: Inspections - description: Sent in by an inspector on a scaffold with gloves on and the wind blowing. - action: /case_officers - consequence: - - Confirm - features: - - name: Inspections - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: inspections - requires_group: case_officers - transitions: - - from: deviation - to: escalated - label: Handed to a case officer - - from: open - to: escalated - label: Handed to a case officer -- name: Meetings - description: Sent in by someone with an idea for a building and no drawings yet. - action: /case_officers - consequence: - - Confirm - features: - - name: Meetings - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: meetings - requires_group: case_officers - transitions: - - from: met - to: advised - label: Written advice sent - - from: open - to: scheduled - label: Scheduled - - from: scheduled - to: met - label: We have met -- name: Objections - description: Sent in by a neighbour who got a notice about what is planned next door. - action: /case_officers - consequence: - - Confirm - features: - - name: Objections - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: objections - requires_group: case_officers - transitions: - - from: answered_by_applicant - to: addressed - label: Answered in the decision - - from: open - to: registered - label: On the case file - - from: registered - to: answered_by_applicant - label: The applicant has answered -- name: an answer by the deadline, or a record that none came - description: For a case officer sending a case out to the authority that must see it. - action: /case_officers/request-hearing - consequence: - - Open -- name: Invite someone into Hearing bodies - description: They get an account, a place in Hearing bodies, and a one-time link to set their own password or passkey. - action: /case_officers - consequence: - - Invite - invite: - group: agencies - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Appeals board - description: They get an account, a place in Appeals board, and a one-time link to set their own password or passkey. - action: /case_officers - consequence: - - Invite - invite: - group: appeals_board - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Approved firms - description: They get an account, a place in Approved firms, and a one-time link to set their own password or passkey. - action: /case_officers - consequence: - - Invite - invite: - group: approved_firms - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Case officers - description: They get an account, a place in Case officers, and a one-time link to set their own password or passkey. - action: /case_officers - consequence: - - Invite - invite: - group: case_officers - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Front desk - description: They get an account, a place in Front desk, and a one-time link to set their own password or passkey. - action: /case_officers - consequence: - - Invite - invite: - group: front_desk - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Inspectors - description: They get an account, a place in Inspectors, and a one-time link to set their own password or passkey. - action: /case_officers - consequence: - - Invite - invite: - group: inspectors - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Head of section - description: They get an account, a place in Head of section, and a one-time link to set their own password or passkey. - action: /case_officers - consequence: - - Invite - invite: - group: section_head - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite with the link it made. Mark it done when the person is in. - action: /case_officers - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: case_officers - transitions: - - from: open - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/case_officers/request-hearing-sent.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/case_officers/request-hearing-sent.yaml deleted file mode 100644 index 9a588a6..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/case_officers/request-hearing-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: /case_officers - consequence: - - Back diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/case_officers/request-hearing.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/case_officers/request-hearing.yaml deleted file mode 100644 index 7bd9196..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/case_officers/request-hearing.yaml +++ /dev/null @@ -1,43 +0,0 @@ -followup: false -name: Request hearing? -description: '' -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: an answer by the deadline, or a record that none came - description: For a case officer sending a case out to the authority that must see it. - action: /case_officers/request-hearing-sent - consequence: - - Send - record_as: hearings - features: - - name: What happens next - description: It is open, and ends answered, the deadline passed with no answer or cancelled. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: case_number - label: Case number - type: text - - name: which_authority - label: Which authority - type: select - options: - - Road authority - - Fire service - - Heritage office - - The county - - name: what_we_ask - label: What we ask - type: textarea - - name: answer_by - label: Answer by - type: date - - name: site - label: Site - type: location - optional: true diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/appeal.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/appeal.yaml deleted file mode 100644 index 9b0f503..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/appeal.yaml +++ /dev/null @@ -1,9 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Withdrawn - description: '' - self_transition: - bucket: appeals - to: withdrawn - label: Withdrawn diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/exemption-request.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/exemption-request.yaml deleted file mode 100644 index 647cfbc..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/exemption-request.yaml +++ /dev/null @@ -1,9 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Withdrawn - description: '' - self_transition: - bucket: exemptions - to: withdrawn - label: Withdrawn diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/firm-approval.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/firm-approval.yaml deleted file mode 100644 index c858427..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/firm-approval.yaml +++ /dev/null @@ -1,9 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Checked - description: '' - self_transition: - bucket: firms - to: checked - label: Checked diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/objection.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/objection.yaml deleted file mode 100644 index 7ddb909..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/objection.yaml +++ /dev/null @@ -1,9 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Withdrawn - description: '' - self_transition: - bucket: objections - to: withdrawn - label: Withdrawn diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/permit-application.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/permit-application.yaml deleted file mode 100644 index b90eacf..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/permit-application.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Complete - description: '' - self_transition: - bucket: applications - to: complete - label: Complete -- name: Withdrawn - description: '' - self_transition: - bucket: applications - to: withdrawn - label: Withdrawn diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/pre-application-meeting.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/pre-application-meeting.yaml deleted file mode 100644 index 315bde5..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/pre-application-meeting.yaml +++ /dev/null @@ -1,9 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Cancelled - description: '' - self_transition: - bucket: meetings - to: cancelled - label: Cancelled diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/small-works-application.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/small-works-application.yaml deleted file mode 100644 index b90eacf..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/decide/small-works-application.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Complete - description: '' - self_transition: - bucket: applications - to: complete - label: Complete -- name: Withdrawn - description: '' - self_transition: - bucket: applications - to: withdrawn - label: Withdrawn diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/front_desk/_section.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/front_desk/_section.yaml deleted file mode 100644 index 8b76bf9..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/front_desk/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: front_desk diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/front_desk/index.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/front_desk/index.yaml deleted file mode 100644 index b36f594..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/front_desk/index.yaml +++ /dev/null @@ -1,157 +0,0 @@ -name: What needs doing? -description: Everything front desk looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Appeals - description: Sent in by anyone with an interest who will not accept a decision of ours. - action: /front_desk - consequence: - - Confirm - features: - - name: Appeals - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: appeals - requires_group: front_desk - transitions: [] -- name: Applications - description: Sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner. - action: /front_desk - consequence: - - Confirm - features: - - name: Applications - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: applications - requires_group: front_desk - transitions: [] -- name: Enquiries - description: Sent in by someone waiting on a case and getting nothing back or whoever is on the counter with a queue and a caller on the line. - action: /front_desk - consequence: - - Confirm - features: - - name: Enquiries - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: enquiries - requires_group: front_desk - transitions: - - from: in_hand - to: answered - label: Answered - - from: open - to: in_hand - label: In hand -- name: Firms - description: Sent in by an architect or engineering firm that files for its clients. - action: /front_desk - consequence: - - Confirm - features: - - name: Firms - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: firms - requires_group: front_desk - transitions: [] -- name: Hearing answers - description: Sent in by a road, fire, heritage or county officer who has been asked about a case. - action: /front_desk - consequence: - - Confirm - features: - - name: Hearing answers - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: hearing_answers - requires_group: front_desk - transitions: [] -- name: Hearings - description: Sent in by a case officer sending a case out to the authority that must see it. - action: /front_desk - consequence: - - Confirm - features: - - name: Hearings - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: hearings - requires_group: front_desk - transitions: [] -- name: Meetings - description: Sent in by someone with an idea for a building and no drawings yet. - action: /front_desk - consequence: - - Confirm - features: - - name: Meetings - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: meetings - requires_group: front_desk - transitions: - - from: met - to: cancelled - label: Cancelled - - from: open - to: cancelled - label: Cancelled - - from: scheduled - to: cancelled - label: Cancelled -- name: the question written down and sent to whoever has the case - description: For whoever is on the counter with a queue and a caller on the line. - action: /front_desk/log-counter-enquiry - consequence: - - Open -- name: Invite someone into Front desk - description: They get an account, a place in Front desk, and a one-time link to set their own password or passkey. - action: /front_desk - consequence: - - Invite - invite: - group: front_desk - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite with the link it made. Mark it done when the person is in. - action: /front_desk - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: front_desk - transitions: - - from: open - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/front_desk/log-counter-enquiry-sent.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/front_desk/log-counter-enquiry-sent.yaml deleted file mode 100644 index 26a8dba..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/front_desk/log-counter-enquiry-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our front desk. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: /front_desk - consequence: - - Back diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/front_desk/log-counter-enquiry.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/front_desk/log-counter-enquiry.yaml deleted file mode 100644 index fdab619..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/front_desk/log-counter-enquiry.yaml +++ /dev/null @@ -1,31 +0,0 @@ -followup: false -name: Log counter enquiry? -description: '' -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: the question written down and sent to whoever has the case - description: For whoever is on the counter with a queue and a caller on the line. - action: /front_desk/log-counter-enquiry-sent - consequence: - - Send - record_as: enquiries - features: - - name: What happens next - description: It is open, then in hand, and ends answered. - icon: lucide:route - - name: Who reads it - description: Front desk. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: case_number_or_address - label: Case number or address - type: text - - name: what_you_want_to_know - label: What you want to know - type: textarea diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/index.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/index.yaml deleted file mode 100644 index 073cbd8..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/index.yaml +++ /dev/null @@ -1,66 +0,0 @@ -name: What brings you here? -description: | - The building authority for twenty-one thousand people. Anything built, demolished, divided or changed in use is decided here: the drawings are checked against the zoning map, the neighbours and the other authorities have their say, and then the head of section signs. The same office inspects what is actually built, signs off finished work, and deals with building nobody applied for. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: What we do - description: '' - features: - - name: Permission to build it, and to know where the case stands - description: | - Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. - - name: What they think on the record, and answered in the decision - description: | - If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision. -- name: Have a look around - description: '' - features: - - name: See all appeals - description: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) - icon: lucide:list - - name: See all applications - description: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) - icon: lucide:list - - name: See all completions - description: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) - icon: lucide:list - - name: See all exemptions - description: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) - icon: lucide:list - - name: See all objections - description: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections) - icon: lucide:list -- name: Want to build - description: For an owner or a firm with something to build, divide or change. - action: /want-to-build - consequence: - - Continue - features: - - name: '' - description: To hear what we will allow before paying an architect, permission to build it, and to know where the case stands, to be allowed it anyway, with reasons on the record, the certificate that lets the building be used. -- name: After a decision - description: For someone who has had a decision from us and does not accept it. - action: /after-a-decision - consequence: - - Continue - features: - - name: '' - description: The decision looked at again, by us and then by the board. -- name: Work as a firm - description: For an architect or engineering firm that files for its clients. - action: /work-as-a-firm - consequence: - - Continue - features: - - name: '' - description: To be on the list, and then to file without asking again. -- name: Building near me - description: For someone who lives next to what is being built. - action: /building-near-me - consequence: - - Continue - features: - - name: '' - description: What they think on the record, and answered in the decision, to be told where it actually stands, us to go and look, and to hear that we did. diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/inspectors/_section.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/inspectors/_section.yaml deleted file mode 100644 index d41d53f..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/inspectors/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: inspectors diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/inspectors/index.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/inspectors/index.yaml deleted file mode 100644 index f6a397a..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/inspectors/index.yaml +++ /dev/null @@ -1,118 +0,0 @@ -name: What needs doing? -description: Everything inspectors looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Applications - description: Sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner. - action: /inspectors - consequence: - - Confirm - features: - - name: Applications - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: applications - requires_group: inspectors - transitions: [] -- name: Completions - description: Sent in by an owner or firm whose building work is finished. - action: /inspectors - consequence: - - Confirm - features: - - name: Completions - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: completions - requires_group: inspectors - transitions: [] -- name: Illegal building - description: Sent in by someone who can see building going up that nobody was told about. - action: /inspectors - consequence: - - Confirm - features: - - name: Illegal building - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: illegal_building - requires_group: inspectors - transitions: - - from: explained - to: resolved - label: Resolved - - from: explained - to: dropped - label: Nothing to pursue - - from: open - to: inspected - label: Inspected -- name: Inspections - description: Sent in by an inspector on a scaffold with gloves on and the wind blowing. - action: /inspectors - consequence: - - Confirm - features: - - name: Inspections - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: inspections - requires_group: inspectors - transitions: - - from: deviation - to: as_approved - label: Built as approved - - from: deviation - to: put_right - label: Put right - - from: open - to: deviation - label: Built differently -- name: what they found logged before they climb down - description: For an inspector on a scaffold with gloves on and the wind blowing. - action: /inspectors/inspection-finding - consequence: - - Open -- name: Invite someone into Inspectors - description: They get an account, a place in Inspectors, and a one-time link to set their own password or passkey. - action: /inspectors - consequence: - - Invite - invite: - group: inspectors - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite with the link it made. Mark it done when the person is in. - action: /inspectors - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: inspectors - transitions: - - from: open - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/inspectors/inspection-finding-sent.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/inspectors/inspection-finding-sent.yaml deleted file mode 100644 index ac8e8b2..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/inspectors/inspection-finding-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our inspectors. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: /inspectors - consequence: - - Back diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/inspectors/inspection-finding.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/inspectors/inspection-finding.yaml deleted file mode 100644 index 18b5d32..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/inspectors/inspection-finding.yaml +++ /dev/null @@ -1,35 +0,0 @@ -followup: false -name: Inspection finding? -description: '' -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: what they found logged before they climb down - description: For an inspector on a scaffold with gloves on and the wind blowing. - action: /inspectors/inspection-finding-sent - consequence: - - Send - record_as: inspections - features: - - name: What happens next - description: It is open, then built differently, and ends built as approved, put right or handed to a case officer. - icon: lucide:route - - name: Who reads it - description: Inspectors. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: case_number - label: Case number - type: text - - name: site_address - label: Site address - type: text - - name: what_i_found - label: What i found - type: textarea - - name: where - label: Where - type: location - optional: true diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/appeal.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/appeal.yaml deleted file mode 100644 index 6148787..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/appeal.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: See all appeals - description: '' - action: /status/appeals - consequence: - - Open -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/case-status-enquiry.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/case-status-enquiry.yaml deleted file mode 100644 index 7150e83..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/case-status-enquiry.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our front desk. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/completion-request.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/completion-request.yaml deleted file mode 100644 index 93e37f8..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/completion-request.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: See all completions - description: '' - action: /status/completions - consequence: - - Open -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/exemption-request.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/exemption-request.yaml deleted file mode 100644 index 04c3fe3..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/exemption-request.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: See all exemptions - description: '' - action: /status/exemptions - consequence: - - Open -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/firm-approval.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/firm-approval.yaml deleted file mode 100644 index 71486fa..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/firm-approval.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/illegal-building-report.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/illegal-building-report.yaml deleted file mode 100644 index 1dad0c2..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/illegal-building-report.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our inspectors. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/objection.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/objection.yaml deleted file mode 100644 index c75f760..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/objection.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: See all objections - description: '' - action: /status/objections - consequence: - - Open -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/pre-application-meeting.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/pre-application-meeting.yaml deleted file mode 100644 index 71486fa..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/pre-application-meeting.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/small-works-application.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/small-works-application.yaml deleted file mode 100644 index 6e621eb..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/received/small-works-application.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: See all applications - description: '' - action: /status/applications - consequence: - - Open -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/section_head/_section.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/section_head/_section.yaml deleted file mode 100644 index 569137f..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/section_head/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: section_head diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/section_head/index.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/section_head/index.yaml deleted file mode 100644 index deed9ce..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/section_head/index.yaml +++ /dev/null @@ -1,350 +0,0 @@ -name: What needs doing? -description: Everything head of section looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Appeals - description: Sent in by anyone with an interest who will not accept a decision of ours. - action: /section_head - consequence: - - Confirm - features: - - name: Appeals - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: appeals - requires_group: section_head - transitions: - - from: reconsidered - to: before_the_board - label: With the appeals board - - from: reconsidered - to: changed_by_us - label: We changed our own decision -- name: Applications - description: Sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner. - action: /section_head - consequence: - - Confirm - features: - - name: Applications - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: applications - requires_group: section_head - transitions: - - from: complete - to: refused - label: Refused - - from: on_hearing - to: refused - label: Refused - - from: recommended - to: approved - label: Approved - - from: recommended - to: approved_with_conditions - label: Approved on conditions - - from: recommended - to: refused - label: Refused -- name: Completions - description: Sent in by an owner or firm whose building work is finished. - action: /section_head - consequence: - - Confirm - features: - - name: Completions - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: completions - requires_group: section_head - transitions: - - from: checked - to: temporary_permission - label: Temporary permission to use - - from: checked - to: certificate_issued - label: Certificate issued - - from: checked - to: refused - label: Refused - - from: open - to: refused - label: Refused - - from: temporary_permission - to: certificate_issued - label: Certificate issued -- name: Exemptions - description: Sent in by someone whose plans break a rule in the zoning map. - action: /section_head - consequence: - - Confirm - features: - - name: Exemptions - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: exemptions - requires_group: section_head - transitions: - - from: county_answered - to: denied - label: Denied - - from: county_asked - to: denied - label: Denied - - from: open - to: denied - label: Denied - - from: recommended - to: granted - label: Granted - - from: recommended - to: denied - label: Denied -- name: Firms - description: Sent in by an architect or engineering firm that files for its clients. - action: /section_head - consequence: - - Confirm - features: - - name: Firms - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: firms - requires_group: section_head - transitions: - - from: checked - to: approved - label: Approved - - from: checked - to: declined - label: Declined - - from: open - to: declined - label: Declined - - from: papers_missing - to: declined - label: Declined -- name: Hearing answers - description: Sent in by a road, fire, heritage or county officer who has been asked about a case. - action: /section_head - consequence: - - Confirm - features: - - name: Hearing answers - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: hearing_answers - requires_group: section_head - transitions: [] -- name: Hearings - description: Sent in by a case officer sending a case out to the authority that must see it. - action: /section_head - consequence: - - Confirm - features: - - name: Hearings - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: hearings - requires_group: section_head - transitions: [] -- name: Illegal building - description: Sent in by someone who can see building going up that nobody was told about. - action: /section_head - consequence: - - Confirm - features: - - name: Illegal building - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: illegal_building - requires_group: section_head - transitions: - - from: inspected - to: fined - label: Fined - - from: open - to: fined - label: Fined -- name: Inspections - description: Sent in by an inspector on a scaffold with gloves on and the wind blowing. - action: /section_head - consequence: - - Confirm - features: - - name: Inspections - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: inspections - requires_group: section_head - transitions: - - from: deviation - to: escalated - label: Handed to a case officer - - from: open - to: escalated - label: Handed to a case officer -- name: Objections - description: Sent in by a neighbour who got a notice about what is planned next door. - action: /section_head - consequence: - - Confirm - features: - - name: Objections - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: objections - requires_group: section_head - transitions: [] -- name: Invite someone into Hearing bodies - description: They get an account, a place in Hearing bodies, and a one-time link to set their own password or passkey. - action: /section_head - consequence: - - Invite - invite: - group: agencies - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Appeals board - description: They get an account, a place in Appeals board, and a one-time link to set their own password or passkey. - action: /section_head - consequence: - - Invite - invite: - group: appeals_board - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Approved firms - description: They get an account, a place in Approved firms, and a one-time link to set their own password or passkey. - action: /section_head - consequence: - - Invite - invite: - group: approved_firms - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Case officers - description: They get an account, a place in Case officers, and a one-time link to set their own password or passkey. - action: /section_head - consequence: - - Invite - invite: - group: case_officers - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Front desk - description: They get an account, a place in Front desk, and a one-time link to set their own password or passkey. - action: /section_head - consequence: - - Invite - invite: - group: front_desk - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Inspectors - description: They get an account, a place in Inspectors, and a one-time link to set their own password or passkey. - action: /section_head - consequence: - - Invite - invite: - group: inspectors - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Head of section - description: They get an account, a place in Head of section, and a one-time link to set their own password or passkey. - action: /section_head - consequence: - - Invite - invite: - group: section_head - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite with the link it made. Mark it done when the person is in. - action: /section_head - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: section_head - transitions: - - from: open - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/status/appeals/index.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/status/appeals/index.yaml deleted file mode 100644 index 662ae18..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/status/appeals/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -name: What has been sent in about appeals? -description: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Appeals - description: '' - features: - - name: Appeals - description: Each row is one case and the stage it has reached. Names and contact details are not shown here. - resource: - source: - kind: kv - bucket: appeals - public: true - jq: '.[] | .responses |= {case_number: .case_number, property: .property, what_you_disagree_with: .what_you_disagree_with, your_interest: .your_interest}' -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/status/applications/index.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/status/applications/index.yaml deleted file mode 100644 index 3146555..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/status/applications/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -name: What has been sent in about applications? -description: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Applications - description: '' - features: - - name: Applications - description: Each row is one case and the stage it has reached. Names and contact details are not shown here. - resource: - source: - kind: kv - bucket: applications - public: true - jq: '.[] | .responses |= {drawings_url: .drawings_url, neighbours_notified: .neighbours_notified, property_address: .property_address, property_number: .property_number, site: .site, what_is_planned: .what_is_planned}' -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/status/completions/index.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/status/completions/index.yaml deleted file mode 100644 index c635e35..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/status/completions/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -name: What has been sent in about completions? -description: Everything sent in by an owner or firm whose building work is finished, and where each one stands. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Completions - description: '' - features: - - name: Completions - description: Each row is one case and the stage it has reached. Names and contact details are not shown here. - resource: - source: - kind: kv - bucket: completions - public: true - jq: '.[] | .responses |= {asking_for: .asking_for, case_number: .case_number, property_address: .property_address, what_is_outstanding: .what_is_outstanding, work_finished: .work_finished}' -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/status/exemptions/index.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/status/exemptions/index.yaml deleted file mode 100644 index 7bc890c..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/status/exemptions/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -name: What has been sent in about exemptions? -description: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Exemptions - description: '' - features: - - name: Exemptions - description: Each row is one case and the stage it has reached. Names and contact details are not shown here. - resource: - source: - kind: kv - bucket: exemptions - public: true - jq: '.[] | .responses |= {case_number: .case_number, site: .site, which_rule: .which_rule, why_it_should_be_allowed: .why_it_should_be_allowed}' -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/status/objections/index.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/status/objections/index.yaml deleted file mode 100644 index 416efb6..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/status/objections/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -name: What has been sent in about objections? -description: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Objections - description: '' - features: - - name: Objections - description: Each row is one case and the stage it has reached. Names and contact details are not shown here. - resource: - source: - kind: kv - bucket: objections - public: true - jq: '.[] | .responses |= {case_number: .case_number, your_objection: .your_objection, your_property: .your_property}' -- name: Back - description: '' - action: / - consequence: - - Back diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/want-to-build/index.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/want-to-build/index.yaml deleted file mode 100644 index 4b3e350..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/want-to-build/index.yaml +++ /dev/null @@ -1,156 +0,0 @@ -name: What do you need? -description: For an owner or a firm with something to build, divide or change. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: to hear what we will allow before paying an architect - description: For someone with an idea for a building and no drawings yet. - action: /received/pre-application-meeting - consequence: - - Send - record_as: meetings - features: - - name: What happens next - description: It is open, then scheduled, then we have met, and ends written advice sent or cancelled. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: name - label: Name - type: text - - name: email - label: Email - type: email - - name: property_address - label: Property address - type: text - - name: what_you_want - label: What you want - type: textarea - - name: phone - label: Phone - type: tel - optional: true - - name: site - label: Site - type: location - optional: true -- name: permission to build it, and to know where the case stands - description: For an owner applying for something small enough to file themselves. - action: /received/small-works-application - consequence: - - Send - record_as: applications - features: - - name: What happens next - description: It is open, then papers missing, then papers complete, then out to the neighbours and the agencies, then recommendation written, and ends approved, approved on conditions, refused or withdrawn. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: property_address - label: Property address - type: text - - name: property_number - label: Property number - type: text - - name: what_is_planned - label: What is planned - type: textarea - - name: neighbours_notified - label: Neighbours notified - type: select - options: - - Yes - - Not yet - - name: site - label: Site - type: location - optional: true - - name: drawings_url - label: Drawings url - type: text - optional: true -- name: to be allowed it anyway, with reasons on the record - description: For someone whose plans break a rule in the zoning map. - action: /received/exemption-request - consequence: - - Send - record_as: exemptions - features: - - name: What you need - description: An application already with us, and the case number from its receipt. - icon: lucide:key - - name: What happens next - description: It is open, then with the county, then the county has answered, then recommended, and ends granted, denied or withdrawn. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: case_number - label: Case number - type: text - - name: which_rule - label: Which rule - type: text - - name: why_it_should_be_allowed - label: Why it should be allowed - type: textarea - - name: site - label: Site - type: location - optional: true -- name: the certificate that lets the building be used - description: For an owner or firm whose building work is finished. - action: /received/completion-request - consequence: - - Send - record_as: completions - features: - - name: What you need - description: A case number, and the work finished or close enough to move in. - icon: lucide:key - - name: What happens next - description: It is open, then checked against the inspections, then temporary permission to use, and ends certificate issued or refused. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: email - label: Email - type: email - - name: case_number - label: Case number - type: text - - name: property_address - label: Property address - type: text - - name: work_finished - label: Work finished - type: date - - name: asking_for - label: Asking for - type: select - options: - - Completion certificate - - Temporary permission to move in - - name: what_is_outstanding - label: What is outstanding - type: textarea - optional: true diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/questions/work-as-a-firm/index.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/questions/work-as-a-firm/index.yaml deleted file mode 100644 index b960c8c..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/questions/work-as-a-firm/index.yaml +++ /dev/null @@ -1,46 +0,0 @@ -name: What do you need? -description: For an architect or engineering firm that files for its clients. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: to be on the list, and then to file without asking again - description: For an architect or engineering firm that files for its clients. - action: /received/firm-approval - consequence: - - Send - record_as: firms - features: - - name: What happens next - description: It is open, then waiting on papers, then papers checked, and ends approved or declined. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: firm_name - label: Firm name - type: text - - name: org_number - label: Org number - type: text - - name: email - label: Email - type: email - - name: qualified_for - label: Qualified for - type: select - options: - - Design - - Execution - - Independent control - - Site management - multiple: true - - name: insurance_expires - label: Insurance expires - type: date - - name: insurance_document - label: Insurance document - type: text - optional: true diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/site.yaml b/vendor/trainer/runs/permits-doors-2026-09-25/site.yaml deleted file mode 100644 index 9d30842..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/site.yaml +++ /dev/null @@ -1,5 +0,0 @@ -title: Vestmark kommune - Building and Planning -lang: en -mail: - from: Vestmark Building and Planning - reply_to: byggesak@vestmark.example diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/tasks-full.jsonl b/vendor/trainer/runs/permits-doors-2026-09-25/tasks-full.jsonl deleted file mode 100644 index 44dbb45..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/tasks-full.jsonl +++ /dev/null @@ -1,25 +0,0 @@ -{"id":"garage-owner@/","persona":"garage-owner","need":"pre-application-meeting","page":"/","state":{"body":"We want to put a double garage where the old shed is. Before I pay an architect I'd like to know whether you'll even allow it, because the neighbour says it's too close to the road.","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"After a decision":"For someone who has had a decision from us and does not accept it.","Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","Work as a firm":"For an architect or engineering firm that files for its clients."}}},"expect":["Want to build"]} -{"id":"garage-owner@/want-to-build","persona":"garage-owner","need":"pre-application-meeting","page":"/want-to-build","state":{"body":"We want to put a double garage where the old shed is. Before I pay an architect I'd like to know whether you'll even allow it, because the neighbour says it's too close to the road."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need?\". Which alternative do they choose?","criteria":{"permission to build it, and to know where the case stands":"For an owner applying for something small enough to file themselves.","the certificate that lets the building be used":"For an owner or firm whose building work is finished.","to be allowed it anyway, with reasons on the record":"For someone whose plans break a rule in the zoning map.","to hear what we will allow before paying an architect":"For someone with an idea for a building and no drawings yet."}}},"expect":["to hear what we will allow before paying an architect"]} -{"id":"shop-to-flats@/","persona":"shop-to-flats","need":"pre-application-meeting","page":"/","state":{"body":"I own the old grocery on Torget and want to make four flats out of it. There are a lot of questions - parking, fire, the facade is listed. Can we sit down with someone?","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"After a decision":"For someone who has had a decision from us and does not accept it.","Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","Work as a firm":"For an architect or engineering firm that files for its clients."}}},"expect":["Want to build"]} -{"id":"shop-to-flats@/want-to-build","persona":"shop-to-flats","need":"pre-application-meeting","page":"/want-to-build","state":{"body":"I own the old grocery on Torget and want to make four flats out of it. There are a lot of questions - parking, fire, the facade is listed. Can we sit down with someone?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need?\". Which alternative do they choose?","criteria":{"permission to build it, and to know where the case stands":"For an owner applying for something small enough to file themselves.","the certificate that lets the building be used":"For an owner or firm whose building work is finished.","to be allowed it anyway, with reasons on the record":"For someone whose plans break a rule in the zoning map.","to hear what we will allow before paying an architect":"For someone with an idea for a building and no drawings yet."}}},"expect":["to hear what we will allow before paying an architect"]} -{"id":"too-close-to-boundary@/","persona":"too-close-to-boundary","need":"exemption-request","page":"/","state":{"body":"The garage ends up one and a half metres from the boundary and the plan says four. We are asking you to allow it anyway - the ground falls away steeply everywhere else on the plot.","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"After a decision":"For someone who has had a decision from us and does not accept it.","Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","Work as a firm":"For an architect or engineering firm that files for its clients."}}},"expect":["Want to build"]} -{"id":"too-close-to-boundary@/want-to-build","persona":"too-close-to-boundary","need":"exemption-request","page":"/want-to-build","state":{"body":"The garage ends up one and a half metres from the boundary and the plan says four. We are asking you to allow it anyway - the ground falls away steeply everywhere else on the plot."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need?\". Which alternative do they choose?","criteria":{"permission to build it, and to know where the case stands":"For an owner applying for something small enough to file themselves.","the certificate that lets the building be used":"For an owner or firm whose building work is finished.","to be allowed it anyway, with reasons on the record":"For someone whose plans break a rule in the zoning map.","to hear what we will allow before paying an architect":"For someone with an idea for a building and no drawings yet."}}},"expect":["to be allowed it anyway, with reasons on the record"]} -{"id":"neighbour-view@/","persona":"neighbour-view","need":"objection","page":"/","state":{"body":"I got a notice about the extension at number 14. It takes the afternoon sun off my entire terrace and I want that on the record before you decide anything.","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"After a decision":"For someone who has had a decision from us and does not accept it.","Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","Work as a firm":"For an architect or engineering firm that files for its clients."}}},"expect":["Building near me"]} -{"id":"neighbour-view@/building-near-me","persona":"neighbour-view","need":"objection","page":"/building-near-me","state":{"body":"I got a notice about the extension at number 14. It takes the afternoon sun off my entire terrace and I want that on the record before you decide anything."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need?\". Which alternative do they choose?","criteria":{"to be told where it actually stands":"For someone waiting on a case and getting nothing back.","us to go and look, and to hear that we did":"For someone who can see building going up that nobody was told about.","what they think on the record, and answered in the decision":"For a neighbour who got a notice about what is planned next door."}}},"expect":["what they think on the record, and answered in the decision"]} -{"id":"neighbour-parking@/","persona":"neighbour-parking","need":"objection","page":"/","state":{"body":"The flats they want to build in the old grocery have four parking places for four flats and everyone here already parks on the street. I object.","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"After a decision":"For someone who has had a decision from us and does not accept it.","Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","Work as a firm":"For an architect or engineering firm that files for its clients."}}},"expect":["Building near me"]} -{"id":"neighbour-parking@/building-near-me","persona":"neighbour-parking","need":"objection","page":"/building-near-me","state":{"body":"The flats they want to build in the old grocery have four parking places for four flats and everyone here already parks on the street. I object."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need?\". Which alternative do they choose?","criteria":{"to be told where it actually stands":"For someone waiting on a case and getting nothing back.","us to go and look, and to hear that we did":"For someone who can see building going up that nobody was told about.","what they think on the record, and answered in the decision":"For a neighbour who got a notice about what is planned next door."}}},"expect":["what they think on the record, and answered in the decision"]} -{"id":"refused-applicant@/","persona":"refused-applicant","need":"appeal","page":"/","state":{"body":"You refused our exemption on the ninth. We don't accept the reasoning - you've allowed the same thing twice in the same street. We're appealing.","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"After a decision":"For someone who has had a decision from us and does not accept it.","Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","Work as a firm":"For an architect or engineering firm that files for its clients."}}},"expect":["After a decision"]} -{"id":"neighbour-appeals@/","persona":"neighbour-appeals","need":"appeal","page":"/","state":{"body":"You approved the extension next door even though I objected. I'm appealing the decision. What do I need to send?","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"After a decision":"For someone who has had a decision from us and does not accept it.","Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","Work as a firm":"For an architect or engineering firm that files for its clients."}}},"expect":["After a decision"]} -{"id":"board-member@/","persona":"board-member","need":"appeal","page":"/","state":{"body":"I sit on the appeals board. I need the case, our own decision, and what the neighbours wrote, before Tuesday.","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"After a decision":"For someone who has had a decision from us and does not accept it.","Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","Work as a firm":"For an architect or engineering firm that files for its clients."}}},"expect":["After a decision"]} -{"id":"firm-wants-certificate@/","persona":"firm-wants-certificate","need":"completion-request","page":"/","state":{"body":"The work at Bjorkeveien 14 is finished and inspected. We're asking for the completion certificate so the owners can get their mortgage released.","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"After a decision":"For someone who has had a decision from us and does not accept it.","Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","Work as a firm":"For an architect or engineering firm that files for its clients."}}},"expect":["Want to build"]} -{"id":"firm-wants-certificate@/want-to-build","persona":"firm-wants-certificate","need":"completion-request","page":"/want-to-build","state":{"body":"The work at Bjorkeveien 14 is finished and inspected. We're asking for the completion certificate so the owners can get their mortgage released."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need?\". Which alternative do they choose?","criteria":{"permission to build it, and to know where the case stands":"For an owner applying for something small enough to file themselves.","the certificate that lets the building be used":"For an owner or firm whose building work is finished.","to be allowed it anyway, with reasons on the record":"For someone whose plans break a rule in the zoning map.","to hear what we will allow before paying an architect":"For someone with an idea for a building and no drawings yet."}}},"expect":["the certificate that lets the building be used"]} -{"id":"wants-to-move-in@/","persona":"wants-to-move-in","need":"completion-request","page":"/","state":{"body":"The house is done apart from the outside steps, which we can't pour until spring. The family has sold their flat. Can we get a temporary permission to move in?","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"After a decision":"For someone who has had a decision from us and does not accept it.","Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","Work as a firm":"For an architect or engineering firm that files for its clients."}}},"expect":["Want to build"]} -{"id":"wants-to-move-in@/want-to-build","persona":"wants-to-move-in","need":"completion-request","page":"/want-to-build","state":{"body":"The house is done apart from the outside steps, which we can't pour until spring. The family has sold their flat. Can we get a temporary permission to move in?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need?\". Which alternative do they choose?","criteria":{"permission to build it, and to know where the case stands":"For an owner applying for something small enough to file themselves.","the certificate that lets the building be used":"For an owner or firm whose building work is finished.","to be allowed it anyway, with reasons on the record":"For someone whose plans break a rule in the zoning map.","to hear what we will allow before paying an architect":"For someone with an idea for a building and no drawings yet."}}},"expect":["the certificate that lets the building be used"]} -{"id":"something-behind-fence@/","persona":"something-behind-fence","need":"illegal-building-report","page":"/","state":{"body":"There's a large structure going up behind the fence at Solbakken 7. Nobody has had a notice about it and it's been going on for two weeks.","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"After a decision":"For someone who has had a decision from us and does not accept it.","Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","Work as a firm":"For an architect or engineering firm that files for its clients."}}},"expect":["Building near me"]} -{"id":"something-behind-fence@/building-near-me","persona":"something-behind-fence","need":"illegal-building-report","page":"/building-near-me","state":{"body":"There's a large structure going up behind the fence at Solbakken 7. Nobody has had a notice about it and it's been going on for two weeks."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need?\". Which alternative do they choose?","criteria":{"to be told where it actually stands":"For someone waiting on a case and getting nothing back.","us to go and look, and to hear that we did":"For someone who can see building going up that nobody was told about.","what they think on the record, and answered in the decision":"For a neighbour who got a notice about what is planned next door."}}},"expect":["us to go and look, and to hear that we did"]} -{"id":"owner-explains@/","persona":"owner-explains","need":"illegal-building-report","page":"/","state":{"body":"I got your letter about the terrace. I genuinely did not know it needed an application, it's been there since we moved in. What happens now?","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"After a decision":"For someone who has had a decision from us and does not accept it.","Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","Work as a firm":"For an architect or engineering firm that files for its clients."}}},"expect":["Building near me"]} -{"id":"owner-explains@/building-near-me","persona":"owner-explains","need":"illegal-building-report","page":"/building-near-me","state":{"body":"I got your letter about the terrace. I genuinely did not know it needed an application, it's been there since we moved in. What happens now?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need?\". Which alternative do they choose?","criteria":{"to be told where it actually stands":"For someone waiting on a case and getting nothing back.","us to go and look, and to hear that we did":"For someone who can see building going up that nobody was told about.","what they think on the record, and answered in the decision":"For a neighbour who got a notice about what is planned next door."}}},"expect":["us to go and look, and to hear that we did"]} -{"id":"new-firm@/","persona":"new-firm","need":"firm-approval","page":"/","state":{"body":"We are a three-person architecture firm that has just started. We want to be approved so we can file applications for our clients in your municipality.","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"After a decision":"For someone who has had a decision from us and does not accept it.","Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","Work as a firm":"For an architect or engineering firm that files for its clients."}}},"expect":["Work as a firm"]} -{"id":"firm-insurance-lapsed@/","persona":"firm-insurance-lapsed","need":"firm-approval","page":"/","state":{"body":"You wrote that our liability insurance certificate has expired. We have renewed it, here it is.","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"After a decision":"For someone who has had a decision from us and does not accept it.","Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","Work as a firm":"For an architect or engineering firm that files for its clients."}}},"expect":["Work as a firm"]} -{"id":"where-is-my-case@/","persona":"where-is-my-case","need":"case-status-enquiry","page":"/","state":{"body":"I sent in my application five weeks ago and I've heard nothing. Is anyone looking at it? Is it in the six weeks with the neighbours or is it waiting on me?","page":"What we do Permission to build it, and to know where the case stands: Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to. What they think on the record, and answered in the decision: If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\nHave a look around See all appeals: Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands. [See all appeals](/status/appeals) See all applications: Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands. [See all applications](/status/applications) See all completions: Everything sent in by an owner or firm whose building work is finished, and where each one stands. [See all completions](/status/completions) See all exemptions: Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands. [See all exemptions](/status/exemptions) See all objections: Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands. [See all objections](/status/objections)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"After a decision":"For someone who has had a decision from us and does not accept it.","Building near me":"For someone who lives next to what is being built.","Want to build":"For an owner or a firm with something to build, divide or change.","Work as a firm":"For an architect or engineering firm that files for its clients."}}},"expect":["Building near me"]} -{"id":"where-is-my-case@/building-near-me","persona":"where-is-my-case","need":"case-status-enquiry","page":"/building-near-me","state":{"body":"I sent in my application five weeks ago and I've heard nothing. Is anyone looking at it? Is it in the six weeks with the neighbours or is it waiting on me?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What do you need?\". Which alternative do they choose?","criteria":{"to be told where it actually stands":"For someone waiting on a case and getting nothing back.","us to go and look, and to hear that we did":"For someone who can see building going up that nobody was told about.","what they think on the record, and answered in the decision":"For a neighbour who got a notice about what is planned next door."}}},"expect":["to be told where it actually stands"]} diff --git a/vendor/trainer/runs/permits-doors-2026-09-25/words.json b/vendor/trainer/runs/permits-doors-2026-09-25/words.json deleted file mode 100644 index 28a670b..0000000 --- a/vendor/trainer/runs/permits-doors-2026-09-25/words.json +++ /dev/null @@ -1,1708 +0,0 @@ -{ - "aggregates.yaml": { - "appeals": { - "before_the_board": { - "subject": "Vestmark kommune - Building and Planning: Before the board", - "body": "Hello,\n\nWhat you sent about the decision looked at again, by us and then by the board is now with the appeals board.\n\nWhat you can do next: {site}/decide/appeal?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "changed_by_us": { - "subject": "Vestmark kommune - Building and Planning: Changed by us", - "body": "Hello,\n\nWhat you sent about the decision looked at again, by us and then by the board is now we changed our own decision.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello,\n\nWe have received what you sent about the decision looked at again, by us and then by the board.\n\nWhat you can do next: {site}/decide/appeal?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "overturned": { - "subject": "Vestmark kommune - Building and Planning: Overturned", - "body": "Hello,\n\nWhat you sent about the decision looked at again, by us and then by the board is now the board overturned us.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "reconsidered": { - "subject": "Vestmark kommune - Building and Planning: Reconsidered", - "body": "Hello,\n\nWhat you sent about the decision looked at again, by us and then by the board is now we are looking at it again.\n\nWhat you can do next: {site}/decide/appeal?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "upheld": { - "subject": "Vestmark kommune - Building and Planning: Upheld", - "body": "Hello,\n\nWhat you sent about the decision looked at again, by us and then by the board is now the board kept our decision.\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "applications": { - "approved": { - "subject": "Vestmark kommune - Building and Planning: Approved", - "body": "Hello,\n\nWhat you sent about permission to build it, and to know where the case stands is now approved.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "approved_with_conditions": { - "subject": "Vestmark kommune - Building and Planning: Approved with conditions", - "body": "Hello,\n\nWhat you sent about permission to build it, and to know where the case stands is now approved on conditions.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "incomplete": { - "subject": "Vestmark kommune - Building and Planning: Incomplete", - "body": "Hello,\n\nWhat you sent about permission to build it, and to know where the case stands is now papers missing.\n\nWhat you can do next: {site}/decide/small-works-application?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "on_hearing": { - "subject": "Vestmark kommune - Building and Planning: On hearing", - "body": "Hello,\n\nWhat you sent about permission to build it, and to know where the case stands is now out to the neighbours and the agencies.\n\nWhat you can do next: {site}/decide/small-works-application?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello,\n\nWe have received what you sent about permission to build it, and to know where the case stands.\n\nWhat you can do next: {site}/decide/small-works-application?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "refused": { - "subject": "Vestmark kommune - Building and Planning: Refused", - "body": "Hello,\n\nWhat you sent about permission to build it, and to know where the case stands is now refused.\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "completions": { - "certificate_issued": { - "subject": "Vestmark kommune - Building and Planning: Certificate issued", - "body": "Hello,\n\nWhat you sent about the certificate that lets the building be used is now certificate issued.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello,\n\nWe have received what you sent about the certificate that lets the building be used.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "refused": { - "subject": "Vestmark kommune - Building and Planning: Refused", - "body": "Hello,\n\nWhat you sent about the certificate that lets the building be used is now refused.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "temporary_permission": { - "subject": "Vestmark kommune - Building and Planning: Temporary permission", - "body": "Hello,\n\nWhat you sent about the certificate that lets the building be used is now temporary permission to use.\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "enquiries": { - "answered": { - "subject": "Vestmark kommune - Building and Planning: Answered", - "body": "Hello,\n\nWhat you sent about to be told where it actually stands is now answered.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello,\n\nWe have received what you sent about to be told where it actually stands.\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "exemptions": { - "county_asked": { - "subject": "Vestmark kommune - Building and Planning: County asked", - "body": "Hello,\n\nWhat you sent about to be allowed it anyway, with reasons on the record is now with the county.\n\nWhat you can do next: {site}/decide/exemption-request?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "denied": { - "subject": "Vestmark kommune - Building and Planning: Denied", - "body": "Hello,\n\nWhat you sent about to be allowed it anyway, with reasons on the record is now denied.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "granted": { - "subject": "Vestmark kommune - Building and Planning: Granted", - "body": "Hello,\n\nWhat you sent about to be allowed it anyway, with reasons on the record is now granted.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello,\n\nWe have received what you sent about to be allowed it anyway, with reasons on the record.\n\nWhat you can do next: {site}/decide/exemption-request?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "firms": { - "approved": { - "subject": "Vestmark kommune - Building and Planning: Approved", - "body": "Hello,\n\nWhat you sent about to be on the list, and then to file without asking again is now approved.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "declined": { - "subject": "Vestmark kommune - Building and Planning: Declined", - "body": "Hello,\n\nWhat you sent about to be on the list, and then to file without asking again is now declined.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello,\n\nWe have received what you sent about to be on the list, and then to file without asking again.\n\nWhat you can do next: {site}/decide/firm-approval?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "papers_missing": { - "subject": "Vestmark kommune - Building and Planning: Papers missing", - "body": "Hello,\n\nWhat you sent about to be on the list, and then to file without asking again is now waiting on papers.\n\nWhat you can do next: {site}/decide/firm-approval?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "illegal_building": { - "dropped": { - "subject": "Vestmark kommune - Building and Planning: Dropped", - "body": "Hello,\n\nWhat you sent about us to go and look, and to hear that we did is now nothing to pursue.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "inspected": { - "subject": "Vestmark kommune - Building and Planning: Inspected", - "body": "Hello,\n\nWhat you sent about us to go and look, and to hear that we did is now inspected.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello,\n\nWe have received what you sent about us to go and look, and to hear that we did.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "resolved": { - "subject": "Vestmark kommune - Building and Planning: Resolved", - "body": "Hello,\n\nWhat you sent about us to go and look, and to hear that we did is now resolved.\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "meetings": { - "advised": { - "subject": "Vestmark kommune - Building and Planning: Advised", - "body": "Hello {name},\n\nWhat you sent about to hear what we will allow before paying an architect is now written advice sent.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello {name},\n\nWe have received what you sent about to hear what we will allow before paying an architect.\n\nWhat you can do next: {site}/decide/pre-application-meeting?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "scheduled": { - "subject": "Vestmark kommune - Building and Planning: Scheduled", - "body": "Hello {name},\n\nWhat you sent about to hear what we will allow before paying an architect is now scheduled.\n\nWhat you can do next: {site}/decide/pre-application-meeting?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "objections": { - "addressed": { - "subject": "Vestmark kommune - Building and Planning: Addressed", - "body": "Hello,\n\nWhat you sent about what they think on the record, and answered in the decision is now answered in the decision.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "answered_by_applicant": { - "subject": "Vestmark kommune - Building and Planning: Answered by applicant", - "body": "Hello,\n\nWhat you sent about what they think on the record, and answered in the decision is now the applicant has answered.\n\nWhat you can do next: {site}/decide/objection?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello,\n\nWe have received what you sent about what they think on the record, and answered in the decision.\n\nWhat you can do next: {site}/decide/objection?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - } - } - }, - "questions/after-a-decision/index.yaml": { - "question": "What do you need?", - "description": "For someone who has had a decision from us and does not accept it.", - "needs": { - "appeal": { - "heading": "the decision looked at again, by us and then by the board", - "description": "For anyone with an interest who will not accept a decision of ours.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "What you need", - "requires_description": "A decision from us less than three weeks old, and its case number.", - "requires_icon": "key", - "road_title": "What happens next", - "road_description": "It is open, then we are looking at it again, then with the appeals board, and ends we changed our own decision, the board kept our decision, the board overturned us or withdrawn.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "email": "Email", - "case_number": "Case number", - "property": "Property", - "what_you_disagree_with": "What you disagree with", - "your_interest": "Your interest" - }, - "hints": { - "email": "", - "case_number": "", - "property": "", - "what_you_disagree_with": "", - "your_interest": "" - } - } - } - }, - "questions/agencies/hearing-answer-sent.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back" - }, - "questions/agencies/hearing-answer.yaml": { - "heading": "their answer on the file, in their own words", - "description": "For a road, fire, heritage or county officer who has been asked about a case.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "What you need", - "requires_description": "The hearing letter we sent you, which has the case number on it.", - "requires_icon": "key", - "road_title": "What happens next", - "road_description": "It is open, then read by the case officer, and ends followed in the decision or set aside with reasons.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "case_number": "Case number", - "which_authority": "Which authority", - "our_answer": "Our answer", - "what_we_say": "What we say" - }, - "hints": { - "case_number": "", - "which_authority": "", - "our_answer": "", - "what_we_say": "" - }, - "question": "Hearing answer?", - "page_description": "" - }, - "questions/agencies/index.yaml": { - "question": "What needs doing?", - "description": "Everything hearing bodies looks after.", - "confirm": "Confirm", - "buckets": { - "exemptions": { - "heading": "Exemptions", - "description": "Sent in by someone whose plans break a rule in the zoning map.", - "moves": { - "county_asked->county_answered": "The county has answered" - }, - "list_title": "Exemptions", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "hearings": { - "heading": "Hearings", - "description": "Sent in by a case officer sending a case out to the authority that must see it.", - "moves": { - "open->answered": "Answered" - }, - "list_title": "Hearings", - "list_note": "Each row is one case. The buttons record what you have just done with it." - } - }, - "links": { - "hearing-answer": { - "heading": "their answer on the file, in their own words", - "description": "For a road, fire, heritage or county officer who has been asked about a case.", - "button": "Open" - } - }, - "invites": { - "agencies": { - "heading": "Invite someone into Hearing bodies", - "description": "They get an account, a place in Hearing bodies, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - } - }, - "invited": { - "heading": "Invitations sent", - "description": "Each invite with the link it made. Mark it done when the person is in.", - "done": "Is in", - "list_title": "Who has been invited", - "list_note": "Each row is one invitation, with the one-time link while it is unused." - } - }, - "questions/appeals_board/index.yaml": { - "question": "What needs doing?", - "description": "Everything appeals board looks after.", - "confirm": "Confirm", - "buckets": { - "appeals": { - "heading": "Appeals", - "description": "Sent in by anyone with an interest who will not accept a decision of ours.", - "moves": { - "before_the_board->overturned": "The board overturned us", - "before_the_board->upheld": "The board kept our decision" - }, - "list_title": "Appeals", - "list_note": "Each row is one case. The buttons record what you have just done with it." - } - }, - "links": {}, - "invites": { - "appeals_board": { - "heading": "Invite someone into Appeals board", - "description": "They get an account, a place in Appeals board, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - } - }, - "invited": { - "heading": "Invitations sent", - "description": "Each invite with the link it made. Mark it done when the person is in.", - "done": "Is in", - "list_title": "Who has been invited", - "list_note": "Each row is one invitation, with the one-time link while it is unused." - } - }, - "questions/approved_firms/index.yaml": { - "question": "What needs doing?", - "description": "Everything approved firms looks after.", - "confirm": "Confirm", - "buckets": { - "objections": { - "heading": "Objections", - "description": "Sent in by a neighbour who got a notice about what is planned next door.", - "moves": { - "registered->answered_by_applicant": "The applicant has answered" - }, - "list_title": "Objections", - "list_note": "Each row is one case. The buttons record what you have just done with it." - } - }, - "links": { - "permit-application": { - "heading": "a decision inside twelve weeks, and to know when the clock stops", - "description": "For an approved firm filing on behalf of an owner.", - "button": "Open" - } - }, - "invites": { - "approved_firms": { - "heading": "Invite someone into Approved firms", - "description": "They get an account, a place in Approved firms, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - } - }, - "invited": { - "heading": "Invitations sent", - "description": "Each invite with the link it made. Mark it done when the person is in.", - "done": "Is in", - "list_title": "Who has been invited", - "list_note": "Each row is one invitation, with the one-time link while it is unused." - } - }, - "questions/approved_firms/permit-application-sent.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back", - "see_all": { - "heading": "See all applications", - "description": "", - "button": "Open" - } - }, - "questions/approved_firms/permit-application.yaml": { - "heading": "a decision inside twelve weeks, and to know when the clock stops", - "description": "For an approved firm filing on behalf of an owner.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is open, then papers missing, then papers complete, then out to the neighbours and the agencies, then recommendation written, and ends approved, approved on conditions, refused or withdrawn.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "email": "Email", - "property_address": "Property address", - "property_number": "Property number", - "what_is_planned": "What is planned", - "neighbours_notified": "Neighbours notified", - "site": "Site", - "drawings_url": "Drawings url" - }, - "hints": { - "email": "", - "property_address": "", - "property_number": "", - "what_is_planned": "", - "neighbours_notified": "", - "site": "", - "drawings_url": "" - }, - "question": "Permit application?", - "page_description": "" - }, - "questions/building-near-me/index.yaml": { - "question": "What do you need?", - "description": "For someone who lives next to what is being built.", - "needs": { - "objection": { - "heading": "what they think on the record, and answered in the decision", - "description": "For a neighbour who got a notice about what is planned next door.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "What you need", - "requires_description": "The notice that came in the post, which has the case number on it.", - "requires_icon": "key", - "road_title": "What happens next", - "road_description": "It is open, then on the case file, then the applicant has answered, and ends answered in the decision or withdrawn.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "email": "Email", - "case_number": "Case number", - "your_property": "Your property", - "your_objection": "Your objection" - }, - "hints": { - "email": "", - "case_number": "", - "your_property": "", - "your_objection": "" - } - }, - "case-status-enquiry": { - "heading": "to be told where it actually stands", - "description": "For someone waiting on a case and getting nothing back.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is open, then in hand, and ends answered.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Front desk. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "email": "Email", - "case_number_or_address": "Case number or address", - "what_you_want_to_know": "What you want to know" - }, - "hints": { - "email": "", - "case_number_or_address": "", - "what_you_want_to_know": "" - } - }, - "illegal-building-report": { - "heading": "us to go and look, and to hear that we did", - "description": "For someone who can see building going up that nobody was told about.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is open, then inspected, then the owner has been written to, then the owner has answered, and ends resolved, fined or nothing to pursue.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Inspectors. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "email": "Email", - "address": "Address", - "what_you_saw": "What you saw", - "where": "Where" - }, - "hints": { - "email": "", - "address": "", - "what_you_saw": "", - "where": "" - } - } - } - }, - "questions/case_officers/index.yaml": { - "question": "What needs doing?", - "description": "Everything case officers looks after.", - "confirm": "Confirm", - "buckets": { - "appeals": { - "heading": "Appeals", - "description": "Sent in by anyone with an interest who will not accept a decision of ours.", - "moves": { - "open->reconsidered": "We are looking at it again" - }, - "list_title": "Appeals", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "applications": { - "heading": "Applications", - "description": "Sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner.", - "moves": { - "complete->on_hearing": "Out to the neighbours and the agencies", - "complete->incomplete": "Papers missing", - "incomplete->complete": "Papers complete", - "on_hearing->recommended": "Recommendation written", - "on_hearing->incomplete": "Papers missing", - "open->complete": "Papers complete", - "open->incomplete": "Papers missing" - }, - "list_title": "Applications", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "completions": { - "heading": "Completions", - "description": "Sent in by an owner or firm whose building work is finished.", - "moves": { - "open->checked": "Checked against the inspections" - }, - "list_title": "Completions", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "enquiries": { - "heading": "Enquiries", - "description": "Sent in by someone waiting on a case and getting nothing back or whoever is on the counter with a queue and a caller on the line.", - "moves": { - "open->in_hand": "In hand" - }, - "list_title": "Enquiries", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "exemptions": { - "heading": "Exemptions", - "description": "Sent in by someone whose plans break a rule in the zoning map.", - "moves": { - "county_answered->recommended": "Recommended", - "open->county_asked": "With the county" - }, - "list_title": "Exemptions", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "firms": { - "heading": "Firms", - "description": "Sent in by an architect or engineering firm that files for its clients.", - "moves": { - "open->papers_missing": "Waiting on papers", - "open->checked": "Papers checked", - "papers_missing->checked": "Papers checked" - }, - "list_title": "Firms", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "hearing_answers": { - "heading": "Hearing answers", - "description": "Sent in by a road, fire, heritage or county officer who has been asked about a case.", - "moves": { - "open->read": "Read by the case officer", - "open->set_aside": "Set aside with reasons", - "read->followed": "Followed in the decision", - "read->set_aside": "Set aside with reasons" - }, - "list_title": "Hearing answers", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "hearings": { - "heading": "Hearings", - "description": "Sent in by a case officer sending a case out to the authority that must see it.", - "moves": { - "open->no_answer": "The deadline passed with no answer", - "open->cancelled": "Cancelled" - }, - "list_title": "Hearings", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "illegal_building": { - "heading": "Illegal building", - "description": "Sent in by someone who can see building going up that nobody was told about.", - "moves": { - "inspected->owner_asked": "The owner has been written to", - "owner_asked->explained": "The owner has answered" - }, - "list_title": "Illegal building", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "inspections": { - "heading": "Inspections", - "description": "Sent in by an inspector on a scaffold with gloves on and the wind blowing.", - "moves": { - "deviation->escalated": "Handed to a case officer", - "open->escalated": "Handed to a case officer" - }, - "list_title": "Inspections", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "meetings": { - "heading": "Meetings", - "description": "Sent in by someone with an idea for a building and no drawings yet.", - "moves": { - "met->advised": "Written advice sent", - "open->scheduled": "Scheduled", - "scheduled->met": "We have met" - }, - "list_title": "Meetings", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "objections": { - "heading": "Objections", - "description": "Sent in by a neighbour who got a notice about what is planned next door.", - "moves": { - "answered_by_applicant->addressed": "Answered in the decision", - "open->registered": "On the case file", - "registered->answered_by_applicant": "The applicant has answered" - }, - "list_title": "Objections", - "list_note": "Each row is one case. The buttons record what you have just done with it." - } - }, - "links": { - "request-hearing": { - "heading": "an answer by the deadline, or a record that none came", - "description": "For a case officer sending a case out to the authority that must see it.", - "button": "Open" - } - }, - "invites": { - "agencies": { - "heading": "Invite someone into Hearing bodies", - "description": "They get an account, a place in Hearing bodies, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "appeals_board": { - "heading": "Invite someone into Appeals board", - "description": "They get an account, a place in Appeals board, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "approved_firms": { - "heading": "Invite someone into Approved firms", - "description": "They get an account, a place in Approved firms, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "case_officers": { - "heading": "Invite someone into Case officers", - "description": "They get an account, a place in Case officers, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "front_desk": { - "heading": "Invite someone into Front desk", - "description": "They get an account, a place in Front desk, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "inspectors": { - "heading": "Invite someone into Inspectors", - "description": "They get an account, a place in Inspectors, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "section_head": { - "heading": "Invite someone into Head of section", - "description": "They get an account, a place in Head of section, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - } - }, - "invited": { - "heading": "Invitations sent", - "description": "Each invite with the link it made. Mark it done when the person is in.", - "done": "Is in", - "list_title": "Who has been invited", - "list_note": "Each row is one invitation, with the one-time link while it is unused." - } - }, - "questions/case_officers/request-hearing-sent.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back" - }, - "questions/case_officers/request-hearing.yaml": { - "heading": "an answer by the deadline, or a record that none came", - "description": "For a case officer sending a case out to the authority that must see it.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is open, and ends answered, the deadline passed with no answer or cancelled.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "case_number": "Case number", - "which_authority": "Which authority", - "what_we_ask": "What we ask", - "answer_by": "Answer by", - "site": "Site" - }, - "hints": { - "case_number": "", - "which_authority": "", - "what_we_ask": "", - "answer_by": "", - "site": "" - }, - "question": "Request hearing?", - "page_description": "" - }, - "questions/decide/appeal.yaml": { - "question": "What would you like to do?", - "description": "", - "moves": { - "withdrawn": { - "heading": "Withdrawn", - "description": "", - "button": "Withdrawn" - } - } - }, - "questions/decide/exemption-request.yaml": { - "question": "What would you like to do?", - "description": "", - "moves": { - "withdrawn": { - "heading": "Withdrawn", - "description": "", - "button": "Withdrawn" - } - } - }, - "questions/decide/firm-approval.yaml": { - "question": "What would you like to do?", - "description": "", - "moves": { - "checked": { - "heading": "Checked", - "description": "", - "button": "Checked" - } - } - }, - "questions/decide/objection.yaml": { - "question": "What would you like to do?", - "description": "", - "moves": { - "withdrawn": { - "heading": "Withdrawn", - "description": "", - "button": "Withdrawn" - } - } - }, - "questions/decide/permit-application.yaml": { - "question": "What would you like to do?", - "description": "", - "moves": { - "complete": { - "heading": "Complete", - "description": "", - "button": "Complete" - }, - "withdrawn": { - "heading": "Withdrawn", - "description": "", - "button": "Withdrawn" - } - } - }, - "questions/decide/pre-application-meeting.yaml": { - "question": "What would you like to do?", - "description": "", - "moves": { - "cancelled": { - "heading": "Cancelled", - "description": "", - "button": "Cancelled" - } - } - }, - "questions/decide/small-works-application.yaml": { - "question": "What would you like to do?", - "description": "", - "moves": { - "complete": { - "heading": "Complete", - "description": "", - "button": "Complete" - }, - "withdrawn": { - "heading": "Withdrawn", - "description": "", - "button": "Withdrawn" - } - } - }, - "questions/front_desk/index.yaml": { - "question": "What needs doing?", - "description": "Everything front desk looks after.", - "confirm": "Confirm", - "buckets": { - "appeals": { - "heading": "Appeals", - "description": "Sent in by anyone with an interest who will not accept a decision of ours.", - "moves": {}, - "list_title": "Appeals", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "applications": { - "heading": "Applications", - "description": "Sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner.", - "moves": {}, - "list_title": "Applications", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "enquiries": { - "heading": "Enquiries", - "description": "Sent in by someone waiting on a case and getting nothing back or whoever is on the counter with a queue and a caller on the line.", - "moves": { - "in_hand->answered": "Answered", - "open->in_hand": "In hand" - }, - "list_title": "Enquiries", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "firms": { - "heading": "Firms", - "description": "Sent in by an architect or engineering firm that files for its clients.", - "moves": {}, - "list_title": "Firms", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "hearing_answers": { - "heading": "Hearing answers", - "description": "Sent in by a road, fire, heritage or county officer who has been asked about a case.", - "moves": {}, - "list_title": "Hearing answers", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "hearings": { - "heading": "Hearings", - "description": "Sent in by a case officer sending a case out to the authority that must see it.", - "moves": {}, - "list_title": "Hearings", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "meetings": { - "heading": "Meetings", - "description": "Sent in by someone with an idea for a building and no drawings yet.", - "moves": { - "met->cancelled": "Cancelled", - "open->cancelled": "Cancelled", - "scheduled->cancelled": "Cancelled" - }, - "list_title": "Meetings", - "list_note": "Each row is one case. The buttons record what you have just done with it." - } - }, - "links": { - "log-counter-enquiry": { - "heading": "the question written down and sent to whoever has the case", - "description": "For whoever is on the counter with a queue and a caller on the line.", - "button": "Open" - } - }, - "invites": { - "front_desk": { - "heading": "Invite someone into Front desk", - "description": "They get an account, a place in Front desk, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - } - }, - "invited": { - "heading": "Invitations sent", - "description": "Each invite with the link it made. Mark it done when the person is in.", - "done": "Is in", - "list_title": "Who has been invited", - "list_note": "Each row is one invitation, with the one-time link while it is unused." - } - }, - "questions/front_desk/log-counter-enquiry-sent.yaml": { - "question": "What happens now?", - "description": "It has reached our front desk.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back" - }, - "questions/front_desk/log-counter-enquiry.yaml": { - "heading": "the question written down and sent to whoever has the case", - "description": "For whoever is on the counter with a queue and a caller on the line.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is open, then in hand, and ends answered.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Front desk. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "email": "Email", - "case_number_or_address": "Case number or address", - "what_you_want_to_know": "What you want to know" - }, - "hints": { - "email": "", - "case_number_or_address": "", - "what_you_want_to_know": "" - }, - "question": "Log counter enquiry?", - "page_description": "" - }, - "questions/index.yaml": { - "question": "What brings you here?", - "description": "The building authority for twenty-one thousand people. Anything built, demolished, divided or changed in use is decided here: the drawings are checked against the zoning map, the neighbours and the other authorities have their say, and then the head of section signs. The same office inspects what is actually built, signs off finished work, and deals with building nobody applied for.\n", - "opener": { - "heading": "What we do", - "description": "", - "features": { - "we-decide-what-may-be-built": { - "heading": "Permission to build it, and to know where the case stands", - "description": "Everything built in Vestmark is decided here. You send the drawings, the neighbours and the road, fire and heritage authorities are heard, and you get a written decision you can hold us to.\n", - "icon": "" - }, - "your-neighbours-case-is-readable": { - "heading": "What they think on the record, and answered in the decision", - "description": "If a notice landed in your postbox, the case behind it is open to read here, and what you write to us has to be answered by name in the decision.\n", - "icon": "" - } - } - }, - "shopping": { - "heading": "Have a look around", - "description": "", - "items": { - "status-appeals": { - "heading": "See all appeals", - "description": "Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands.", - "icon": "list" - }, - "status-applications": { - "heading": "See all applications", - "description": "Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands.", - "icon": "list" - }, - "status-completions": { - "heading": "See all completions", - "description": "Everything sent in by an owner or firm whose building work is finished, and where each one stands.", - "icon": "list" - }, - "status-exemptions": { - "heading": "See all exemptions", - "description": "Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands.", - "icon": "list" - }, - "status-objections": { - "heading": "See all objections", - "description": "Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands.", - "icon": "list" - } - } - }, - "doors": { - "want-to-build": { - "heading": "Want to build", - "description": "For an owner or a firm with something to build, divide or change.", - "button": "Continue", - "icon": "", - "for_whom": "", - "behind": "To hear what we will allow before paying an architect, permission to build it, and to know where the case stands, to be allowed it anyway, with reasons on the record, the certificate that lets the building be used." - }, - "after-a-decision": { - "heading": "After a decision", - "description": "For someone who has had a decision from us and does not accept it.", - "button": "Continue", - "icon": "", - "for_whom": "", - "behind": "The decision looked at again, by us and then by the board." - }, - "work-as-a-firm": { - "heading": "Work as a firm", - "description": "For an architect or engineering firm that files for its clients.", - "button": "Continue", - "icon": "", - "for_whom": "", - "behind": "To be on the list, and then to file without asking again." - }, - "building-near-me": { - "heading": "Building near me", - "description": "For someone who lives next to what is being built.", - "button": "Continue", - "icon": "", - "for_whom": "", - "behind": "What they think on the record, and answered in the decision, to be told where it actually stands, us to go and look, and to hear that we did." - } - }, - "needs": {} - }, - "questions/inspectors/index.yaml": { - "question": "What needs doing?", - "description": "Everything inspectors looks after.", - "confirm": "Confirm", - "buckets": { - "applications": { - "heading": "Applications", - "description": "Sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner.", - "moves": {}, - "list_title": "Applications", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "completions": { - "heading": "Completions", - "description": "Sent in by an owner or firm whose building work is finished.", - "moves": {}, - "list_title": "Completions", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "illegal_building": { - "heading": "Illegal building", - "description": "Sent in by someone who can see building going up that nobody was told about.", - "moves": { - "explained->resolved": "Resolved", - "explained->dropped": "Nothing to pursue", - "open->inspected": "Inspected" - }, - "list_title": "Illegal building", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "inspections": { - "heading": "Inspections", - "description": "Sent in by an inspector on a scaffold with gloves on and the wind blowing.", - "moves": { - "deviation->as_approved": "Built as approved", - "deviation->put_right": "Put right", - "open->deviation": "Built differently" - }, - "list_title": "Inspections", - "list_note": "Each row is one case. The buttons record what you have just done with it." - } - }, - "links": { - "inspection-finding": { - "heading": "what they found logged before they climb down", - "description": "For an inspector on a scaffold with gloves on and the wind blowing.", - "button": "Open" - } - }, - "invites": { - "inspectors": { - "heading": "Invite someone into Inspectors", - "description": "They get an account, a place in Inspectors, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - } - }, - "invited": { - "heading": "Invitations sent", - "description": "Each invite with the link it made. Mark it done when the person is in.", - "done": "Is in", - "list_title": "Who has been invited", - "list_note": "Each row is one invitation, with the one-time link while it is unused." - } - }, - "questions/inspectors/inspection-finding-sent.yaml": { - "question": "What happens now?", - "description": "It has reached our inspectors.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back" - }, - "questions/inspectors/inspection-finding.yaml": { - "heading": "what they found logged before they climb down", - "description": "For an inspector on a scaffold with gloves on and the wind blowing.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is open, then built differently, and ends built as approved, put right or handed to a case officer.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Inspectors. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "case_number": "Case number", - "site_address": "Site address", - "what_i_found": "What i found", - "where": "Where" - }, - "hints": { - "case_number": "", - "site_address": "", - "what_i_found": "", - "where": "" - }, - "question": "Inspection finding?", - "page_description": "" - }, - "questions/received/appeal.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back", - "see_all": { - "heading": "See all appeals", - "description": "", - "button": "Open" - } - }, - "questions/received/case-status-enquiry.yaml": { - "question": "What happens now?", - "description": "It has reached our front desk.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back" - }, - "questions/received/completion-request.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back", - "see_all": { - "heading": "See all completions", - "description": "", - "button": "Open" - } - }, - "questions/received/exemption-request.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back", - "see_all": { - "heading": "See all exemptions", - "description": "", - "button": "Open" - } - }, - "questions/received/firm-approval.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back" - }, - "questions/received/illegal-building-report.yaml": { - "question": "What happens now?", - "description": "It has reached our inspectors.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back" - }, - "questions/received/objection.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back", - "see_all": { - "heading": "See all objections", - "description": "", - "button": "Open" - } - }, - "questions/received/pre-application-meeting.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back" - }, - "questions/received/small-works-application.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "back": "Back", - "see_all": { - "heading": "See all applications", - "description": "", - "button": "Open" - } - }, - "questions/section_head/index.yaml": { - "question": "What needs doing?", - "description": "Everything head of section looks after.", - "confirm": "Confirm", - "buckets": { - "appeals": { - "heading": "Appeals", - "description": "Sent in by anyone with an interest who will not accept a decision of ours.", - "moves": { - "reconsidered->before_the_board": "With the appeals board", - "reconsidered->changed_by_us": "We changed our own decision" - }, - "list_title": "Appeals", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "applications": { - "heading": "Applications", - "description": "Sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner.", - "moves": { - "complete->refused": "Refused", - "on_hearing->refused": "Refused", - "recommended->approved": "Approved", - "recommended->approved_with_conditions": "Approved on conditions", - "recommended->refused": "Refused" - }, - "list_title": "Applications", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "completions": { - "heading": "Completions", - "description": "Sent in by an owner or firm whose building work is finished.", - "moves": { - "checked->temporary_permission": "Temporary permission to use", - "checked->certificate_issued": "Certificate issued", - "checked->refused": "Refused", - "open->refused": "Refused", - "temporary_permission->certificate_issued": "Certificate issued" - }, - "list_title": "Completions", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "exemptions": { - "heading": "Exemptions", - "description": "Sent in by someone whose plans break a rule in the zoning map.", - "moves": { - "county_answered->denied": "Denied", - "county_asked->denied": "Denied", - "open->denied": "Denied", - "recommended->granted": "Granted", - "recommended->denied": "Denied" - }, - "list_title": "Exemptions", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "firms": { - "heading": "Firms", - "description": "Sent in by an architect or engineering firm that files for its clients.", - "moves": { - "checked->approved": "Approved", - "checked->declined": "Declined", - "open->declined": "Declined", - "papers_missing->declined": "Declined" - }, - "list_title": "Firms", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "hearing_answers": { - "heading": "Hearing answers", - "description": "Sent in by a road, fire, heritage or county officer who has been asked about a case.", - "moves": {}, - "list_title": "Hearing answers", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "hearings": { - "heading": "Hearings", - "description": "Sent in by a case officer sending a case out to the authority that must see it.", - "moves": {}, - "list_title": "Hearings", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "illegal_building": { - "heading": "Illegal building", - "description": "Sent in by someone who can see building going up that nobody was told about.", - "moves": { - "inspected->fined": "Fined", - "open->fined": "Fined" - }, - "list_title": "Illegal building", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "inspections": { - "heading": "Inspections", - "description": "Sent in by an inspector on a scaffold with gloves on and the wind blowing.", - "moves": { - "deviation->escalated": "Handed to a case officer", - "open->escalated": "Handed to a case officer" - }, - "list_title": "Inspections", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "objections": { - "heading": "Objections", - "description": "Sent in by a neighbour who got a notice about what is planned next door.", - "moves": {}, - "list_title": "Objections", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - } - }, - "links": {}, - "invites": { - "agencies": { - "heading": "Invite someone into Hearing bodies", - "description": "They get an account, a place in Hearing bodies, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "appeals_board": { - "heading": "Invite someone into Appeals board", - "description": "They get an account, a place in Appeals board, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "approved_firms": { - "heading": "Invite someone into Approved firms", - "description": "They get an account, a place in Approved firms, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "case_officers": { - "heading": "Invite someone into Case officers", - "description": "They get an account, a place in Case officers, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "front_desk": { - "heading": "Invite someone into Front desk", - "description": "They get an account, a place in Front desk, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "inspectors": { - "heading": "Invite someone into Inspectors", - "description": "They get an account, a place in Inspectors, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "section_head": { - "heading": "Invite someone into Head of section", - "description": "They get an account, a place in Head of section, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - } - }, - "invited": { - "heading": "Invitations sent", - "description": "Each invite with the link it made. Mark it done when the person is in.", - "done": "Is in", - "list_title": "Who has been invited", - "list_note": "Each row is one invitation, with the one-time link while it is unused." - } - }, - "questions/status/appeals/index.yaml": { - "question": "What has been sent in about appeals?", - "description": "Everything sent in by anyone with an interest who will not accept a decision of ours, and where each one stands.", - "heading": "Appeals", - "list_description": "", - "list_title": "Appeals", - "list_note": "Each row is one case and the stage it has reached. Names and contact details are not shown here.", - "back": "Back" - }, - "questions/status/applications/index.yaml": { - "question": "What has been sent in about applications?", - "description": "Everything sent in by an owner applying for something small enough to file themselves or an approved firm filing on behalf of an owner, and where each one stands.", - "heading": "Applications", - "list_description": "", - "list_title": "Applications", - "list_note": "Each row is one case and the stage it has reached. Names and contact details are not shown here.", - "back": "Back" - }, - "questions/status/completions/index.yaml": { - "question": "What has been sent in about completions?", - "description": "Everything sent in by an owner or firm whose building work is finished, and where each one stands.", - "heading": "Completions", - "list_description": "", - "list_title": "Completions", - "list_note": "Each row is one case and the stage it has reached. Names and contact details are not shown here.", - "back": "Back" - }, - "questions/status/exemptions/index.yaml": { - "question": "What has been sent in about exemptions?", - "description": "Everything sent in by someone whose plans break a rule in the zoning map, and where each one stands.", - "heading": "Exemptions", - "list_description": "", - "list_title": "Exemptions", - "list_note": "Each row is one case and the stage it has reached. Names and contact details are not shown here.", - "back": "Back" - }, - "questions/status/objections/index.yaml": { - "question": "What has been sent in about objections?", - "description": "Everything sent in by a neighbour who got a notice about what is planned next door, and where each one stands.", - "heading": "Objections", - "list_description": "", - "list_title": "Objections", - "list_note": "Each row is one case and the stage it has reached. Names and contact details are not shown here.", - "back": "Back" - }, - "questions/want-to-build/index.yaml": { - "question": "What do you need?", - "description": "For an owner or a firm with something to build, divide or change.", - "needs": { - "pre-application-meeting": { - "heading": "to hear what we will allow before paying an architect", - "description": "For someone with an idea for a building and no drawings yet.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is open, then scheduled, then we have met, and ends written advice sent or cancelled.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "name": "Name", - "email": "Email", - "property_address": "Property address", - "what_you_want": "What you want", - "phone": "Phone", - "site": "Site" - }, - "hints": { - "name": "", - "email": "", - "property_address": "", - "what_you_want": "", - "phone": "", - "site": "" - } - }, - "small-works-application": { - "heading": "permission to build it, and to know where the case stands", - "description": "For an owner applying for something small enough to file themselves.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is open, then papers missing, then papers complete, then out to the neighbours and the agencies, then recommendation written, and ends approved, approved on conditions, refused or withdrawn.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "email": "Email", - "property_address": "Property address", - "property_number": "Property number", - "what_is_planned": "What is planned", - "neighbours_notified": "Neighbours notified", - "site": "Site", - "drawings_url": "Drawings url" - }, - "hints": { - "email": "", - "property_address": "", - "property_number": "", - "what_is_planned": "", - "neighbours_notified": "", - "site": "", - "drawings_url": "" - } - }, - "exemption-request": { - "heading": "to be allowed it anyway, with reasons on the record", - "description": "For someone whose plans break a rule in the zoning map.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "What you need", - "requires_description": "An application already with us, and the case number from its receipt.", - "requires_icon": "key", - "road_title": "What happens next", - "road_description": "It is open, then with the county, then the county has answered, then recommended, and ends granted, denied or withdrawn.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "email": "Email", - "case_number": "Case number", - "which_rule": "Which rule", - "why_it_should_be_allowed": "Why it should be allowed", - "site": "Site" - }, - "hints": { - "email": "", - "case_number": "", - "which_rule": "", - "why_it_should_be_allowed": "", - "site": "" - } - }, - "completion-request": { - "heading": "the certificate that lets the building be used", - "description": "For an owner or firm whose building work is finished.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "What you need", - "requires_description": "A case number, and the work finished or close enough to move in.", - "requires_icon": "key", - "road_title": "What happens next", - "road_description": "It is open, then checked against the inspections, then temporary permission to use, and ends certificate issued or refused.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "email": "Email", - "case_number": "Case number", - "property_address": "Property address", - "work_finished": "Work finished", - "asking_for": "Asking for", - "what_is_outstanding": "What is outstanding" - }, - "hints": { - "email": "", - "case_number": "", - "property_address": "", - "work_finished": "", - "asking_for": "", - "what_is_outstanding": "" - } - } - } - }, - "questions/work-as-a-firm/index.yaml": { - "question": "What do you need?", - "description": "For an architect or engineering firm that files for its clients.", - "needs": { - "firm-approval": { - "heading": "to be on the list, and then to file without asking again", - "description": "For an architect or engineering firm that files for its clients.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is open, then waiting on papers, then papers checked, and ends approved or declined.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "firm_name": "Firm name", - "org_number": "Org number", - "email": "Email", - "qualified_for": "Qualified for", - "insurance_expires": "Insurance expires", - "insurance_document": "Insurance document" - }, - "hints": { - "firm_name": "", - "org_number": "", - "email": "", - "qualified_for": "", - "insurance_expires": "", - "insurance_document": "" - } - } - } - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/README.md b/vendor/trainer/runs/permits-plan-2026-09-30/README.md deleted file mode 100644 index e3b6b4e..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/README.md +++ /dev/null @@ -1,43 +0,0 @@ -# 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. diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/llm/01-prompt.md b/vendor/trainer/runs/permits-plan-2026-09-30/llm/01-prompt.md deleted file mode 100644 index eecb10a..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/llm/01-prompt.md +++ /dev/null @@ -1,289 +0,0 @@ -# plan.yaml - -A plan is a needs spec that also says what each form collects. A -builder turns it into a working site with no further decisions, so -every structural fact about the business has to be in it. - -```yaml -business: -language: en # the intake's language code -contact: { name: , email: } -about: > - What the business does, in its own words. -mail: { from: " ", reply_to: } - # who every mail the site sends comes from; required as soon - # as any need has `mails` - -does: # the front door's first card: what the business does, one - - id: kebab-case # or two features, one role each, no button. Say it for the - for: # role the business exists for and the next one it serves. - text: what it does for them, in the intake's own words - -shows: # what the site shows as it is: a live figure, the latest - - id: kebab-case # releases, what has been built; `resource` is portal's block - text: one line on what it is - resource: { public: true, source: { kind: url, url: https://... } } - -doors: # a first question before the forms, only when the offers - - id: kebab-case # are more than one page holds (measured: four doors beat - who: who comes through it # ten offers on one page; six offers on one page beat doors) - -groups: # groups with a label the public may see: the committees - - { id: traffic, label: Traffic, invited_by: [board] } # a person can ask to join (optional; label defaults to the id) -invites_by: [board] # groups whose desk may invite people into every desk - -needs: - - id: kebab-case # ASCII only - who: the kind of person, in plain words, in the intake's language - wants: what they want from the business - door: # the door this public need sits behind; omit to put it on the front door - enters_as: # ONLY for a role inside the business; omit for the public - lands_in: # snake_case, ASCII - handled_by: # the role that must see and move the record - stages: [open, , ..., , ] - # EVERY stage the business said a case goes through, first to - # last, read off their own sentences one verb at a time: "they - # come in, we go and look, we send a quote, we win or lose it" - # is [open, surveyed, quoted, won, lost]. A pipeline is not an - # inbox: "answered" is rarely the real outcome. - done_when: [, ] # every stage that counts as finished, good or bad - success: [] # the finished stages that are a good outcome for the business - skippable: [] # stages a case may pass over (papers already complete) - requires: # what the person must ALREADY have or be for this to work: - # a membership, a reference number, the link from a mail, an - # account. Stated on the card above the form. Omit when there - # is none; never invent one - turned_down_from: [open, ] - # the unfinished stages a case can still be turned down from; - # omit for every one. An applicant is declined before they - # start, not after - after, they depart - reached_from: { : [, ...] } - # where a stage is entered from, when the line does not say it. - # Two things need it and nothing else does: a case SENT BACK to - # a stage it was already past ("papers missing" again, after the - # hearing turned something up), and a GOOD ENDING partway along, - # where a case finishes well without walking to the end ("we - # changed our own decision", instead of passing it upwards). - # A stage named here is entered from exactly those stages and - # nowhere else, so it also says where a refusal may NOT come - # from. Omit unless the business described one of those two - moves_by: { : [, ...] } - # only where someone other than handled_by moves a case INTO a - # stage: another group, or `submitter` (the person who sent the - # form; the form must then collect a required `email`) - watched_by: [] # groups that see these cases and move nothing; `public` opens a - # read-only page of the bucket to everyone (contact details hidden) - mails: { open: submitter, : submitter, :
} - # who hears when a case enters a stage: `submitter` (the form - # must then collect a required `email`) or one address. Tell the - # person on arrival and on every decision that is about them. - grants: { : } - # a stage that makes the person a member of a group when their - # case arrives (an approval that IS membership); the form must - # then collect a required `name` and a required `email` - deadlines: { : { days: 30, to: } } - # a stage a clock moves on from when a case sits in it that long - # (a notice that expires, a hearing with no answer); only along - # a move the stages already allow - public_states: [] # with `public` in watched_by: the stages the public list shows - # (a noticeboard shows what is up, not what was taken down) - stages_text: { open: , : } - # each stage in the intake's language, where the ASCII id - # would read wrong to a person: "ikke_lost" is "ikke løst" - events: { open: applied } # ONLY when rebuilding a live site: the event names its - # aggregates.yaml already has, so its records keep replaying - attended_by: > # ONLY for a stage no desk button moves: the automation that does - what moves it, in a sentence - max_fields: 4 # decide this BEFORE writing collects, from what the intake - # says about the person; a budget that equals the form's size - # is counted, not decided, and is reported as such - # how many required fields THIS person will tolerate, from what - # the intake says about them: someone on a phone with gloves - # on gets 3, a first enquiry 4 to 6, a firm's paperwork 5 to 6 - collects: # the form; name is snake_case ASCII, type one of - # text (default), email, tel, textarea, date, select, location - # (a pin on a map, stored as lat/lon/zoom; optional: true, - # since a map needs a browser that can draw one) - - { name: name } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - { name: urgency, type: select, options: [This week, This month, No rush] } - - { name: can_do, type: select, multiple: true, options: [Drive, Cook, Carry] } # any number - - { name: committee, type: select, options_from: groups } # the labelled groups above - - { name: address, optional: true, private: true } # never on a public page -``` - -What a portal site can do - use what serves this business, leave the -rest. Each is one line in the plan, and the builder does the wiring: - -- **Show, not only ask.** A bucket with `watched_by: [public]` becomes - a public list: its newest few records sit inline on the front door, - linked to the whole list, contact details pruned. What neighbours - reported and where it stands, which changes were approved, what is - on the noticeboard: a visitor who sees the place working trusts it, - and a person who reported something sees it being dealt with. - `public_states` shows only the stages worth showing. -- **Stay in dialogue.** `mails` tells the person at the stages that - are about them, and a reply to that mail comes back to the case as - a note. `moves_by: { : [submitter] }` gives them a move of - their own through their link: confirm, withdraw, say it is solved. -- **Let a decision do the work.** `grants` makes an approval into - membership: the person gets an account and a place in the group the - moment the case gets there; `deadlines` lets a stage end on its own - (a notice that expires, a request nobody took up); `invites_by` lets - a desk bring a person in without anyone touching an admin tool. -- **Let one record answer another.** A need `about` another need is - one answer per record of it, from that record's own row on the - public list: a neighbour saying "I can lend you that" to a notice, a - bid to a request. `mails: { open: owner }` sends the answer straight - to whoever posted the record, and the site keeps no queue - the - poster's inbox is the queue. The site never becomes a go-between. -- **Keep some things for members.** A need with `door` and `enters_as` - is offered to everyone on the door and taken on the group's page - behind sign-in, with name and address filled from the account: a - seat on a committee for members, a discount for customers. The - group is one a decision `grants`, so nobody has to be waved in. -- **Answer for the pages as a group.** `contact: { name, email, group }` - makes the contact a group's inbox rather than a person: no account - is made for it, and every member of the group may suggest changes - to the pages from the page itself. -- **Make the choices real.** `groups` with labels, and a select with - `options_from: groups`, so a form offers exactly the committees or - teams that exist; `multiple: true` where a person can pick several. -- **Place things.** A `location` field puts a pin on a map (where the - hazard is, where the job is), when the site has maps. -- **Open with the business itself.** `does` says what it does for the - roles it exists for; `shows` puts its live content beside that. - -Rules: -- One need per (kind of person, thing they want). Work inside the - business counts: a role recording or posting something is a need - with `enters_as`. The intake's "what slows us down" usually names one. -- Groups are the roles the intake names, as snake_case identifiers. -- The front door opens with `does` (at most two features, one role - each) and `shows`, then holds at most seven offers: doors plus needs - with no door. A door with no need behind it is refused; a door on a - need with `enters_as` is the way to the members' page. A role `does` - speaks for must have a move - of its own after sending (`moves_by` with `submitter`) or a public - view, or it is a spectator. -- Every need whose form collects an email should tell the person on - arrival and on the decisions about them (`mails`); the plan then - needs `mail: { from }`. -- Every feature on a card explains itself: a list says what one row is - and what its buttons do, a form says what to have ready. If an - alternative only works for someone who already has something, say so - in `requires` - a condition the reader meets only after filling the - form in has already cost them the filling in. -- Needs that land in the same bucket must have the same stages, - done_when, skippable, moves_by, watched_by and handled_by. -- Every required field is one the business will use to act on the - record. If the intake gives no reason to need it, make it optional or - leave it out. The required fields must not exceed max_fields. -- Only `select` lists `options`, and it must list them. -- Everything a person reads (who, wants, about, select options) is in - the intake's language. Everything a machine reads (ids, buckets, - groups, stages, field names) is plain ASCII: no æ, ø, å. -- Write no personas. - - -# Task - -A business filled in this intake. Write its plan.yaml: every need the intake implies, for the public and for each role inside the business, with the stages read off how the business says things progress, the form each need collects, and how much each person will tolerate. - -## Intake - -# A building authority's intake: the hardest sector the trainer has -# been given. Cases that pause and resume, cases that belong to other -# cases, a decision two roles sign, a deadline nobody in the building -# controls, and an appeal that reopens something already finished. -# Written the way the department head would write it, in plain words. -business: Vestmark kommune - Building and Planning -contact: { name: Solveig Hauge, email: byggesak@vestmark.example } -language: en - -what_we_do: > - We are the building authority for a municipality of twenty-one - thousand people. Anyone who wants to build, demolish, divide a - property or change what a building is used for has to come to us - first. We check the drawings against the zoning map and the building - regulations, we let the neighbours and the other authorities have - their say, and then we approve or refuse. We also decide exemptions - from the zoning rules, we inspect what is actually built, we sign off - finished work, and we deal with building that was never applied for. - -who_comes_to_us: > - Homeowners who want a garage, an extension or a new window, and who - have never read a regulation in their life. Architects and - engineering firms who file on behalf of owners; they have to be - approved by us before they may file anything. Neighbours who got a - notice in the post and do not agree with what is planned next door. - The other authorities we are obliged to ask: the road authority, the - fire service, the heritage office, the county. People who ring to say - something is going up behind their fence without permission. And - anyone who wants to sit down with us before they spend eighty - thousand on drawings. - -what_we_keep_track_of: > - Pre-application meetings: someone asks for one, we find a time, we - meet, and we write down what we told them so they can hold us to it. - Applications: they arrive, someone checks whether the papers are all - there, and if something is missing we write and ask for it, and the - twelve-week clock stops until they answer. Often we have to ask - twice. When it is complete we send it out to the neighbours and to - the agencies and wait six weeks. Then a case officer writes a - recommendation, and the head of section signs the decision: approved, - approved with conditions, or refused. People can withdraw at any - point, and quite a few do once they hear from the neighbours. - Exemptions: if what someone wants breaks the zoning rules they can - ask for an exemption. It rides along with the application but it is a - decision of its own, and we are not allowed to grant one before the - county has been asked. - Objections: a neighbour who got a notice writes to us within the - hearing period. Each objection belongs to an application. We register - it, the applicant gets to answer it, and the case officer has to - address every single one in the decision, by name. - Hearing answers: we ask an agency, they answer, or they do not, and - when the deadline has passed we go on without them. - Appeals: for three weeks after a decision anyone with an interest can - appeal it. We go through it ourselves first, and if we change our own - mind that is the end of it. If we do not, it goes to the appeals - board, who meet once a month and either uphold us or overturn us. - Inspections: we pick cases and go and look, on site. Either it is as - approved, or we write up what is wrong and set a date for it to be - put right, and then we go back. - Finishing: when the work is done the firm asks for a completion - certificate. If they want to move in before everything is done they - can ask for a temporary permission instead. We check what was - inspected and what is still outstanding before we sign anything. - Illegal building: someone reports it, we go and look, we write to the - owner and they have to explain themselves, and then they either apply - for it properly, take it down, or we fine them weekly until they do. - Approved firms: a firm sends us their registration, their insurance - and what they are qualified for, we check it, and then they are on - the list and may file applications. - -who_is_involved: > - The front desk logs what comes in over the counter and on the phone, - and keeps the archive. Four case officers carry the cases. The head - of section signs every decision and every exemption; a case officer - may not sign their own. Two inspectors are out on site most of the - week and write up what they find on a phone in a cold wind. The - appeals board is seven elected politicians who meet on the third - Tuesday of the month and read what we send them. The agencies are - outside the building altogether and only ever answer hearings. The - approved firms file applications and answer objections on behalf of - their clients. - -what_slows_us_down: > - The twelve-week clock, and the fact that stopping it and starting it - again is done by hand in a spreadsheet. Applications that arrive - missing half the drawings. Objections that come in on paper and get - stapled to the wrong case. Neighbours ringing to ask what is - happening with the case behind their house, which we are obliged to - tell them and which takes ten minutes every time. Agencies that never - answer at all. And nobody outside this building can see a case - without asking us for it. - - -Reply with the YAML only, no prose, no code fences. \ No newline at end of file diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/llm/01-reply.md b/vendor/trainer/runs/permits-plan-2026-09-30/llm/01-reply.md deleted file mode 100644 index 14df6b6..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/llm/01-reply.md +++ /dev/null @@ -1,423 +0,0 @@ -business: Vestmark kommune - Building and Planning -language: en -contact: { name: Solveig Hauge, email: byggesak@vestmark.example } -about: > - We are the building authority for a municipality of twenty-one - thousand people. Anyone who wants to build, demolish, divide a - property or change what a building is used for has to come to us - first. We check the drawings against the zoning map and the building - regulations, we let the neighbours and the other authorities have - their say, and then we approve or refuse. We also decide exemptions - from the zoning rules, we inspect what is actually built, we sign off - finished work, and we deal with building that was never applied for. -mail: { from: "Vestmark kommune Building and Planning ", reply_to: byggesak@vestmark.example } - -does: - - id: check-and-decide - for: application - text: > - We check your drawings against the zoning map and the building - regulations, let the neighbours and the other authorities have - their say, and then approve or refuse. You can follow your case - here the whole way. - - id: firms-file-here - for: firm-application - text: > - Approved firms file applications for their clients here, see what - is missing and ask for the completion certificate when the work is done. - -doors: - - id: build - who: You want to build, demolish, divide a property or change what a building is used for - - id: neighbour - who: Something is planned or going up next door to you - - id: firm - who: You are an architect or an engineering firm filing on behalf of owners - -invites_by: [head_of_section] - -needs: - - id: pre-application-meeting - who: Anyone who wants to sit down with us before they spend money on drawings - wants: A meeting with a case officer, and a written note of what we told them - door: build - lands_in: pre_application_meetings - handled_by: case_officers - stages: [open, scheduled, met, written_up, cancelled] - done_when: [written_up, cancelled] - success: [written_up] - turned_down_from: [open, scheduled] - moves_by: { cancelled: [submitter, case_officers] } - watched_by: [front_desk] - mails: { open: submitter, scheduled: submitter, written_up: submitter, cancelled: submitter } - stages_text: { open: asked for, scheduled: time found, met: meeting held, written_up: written down and sent, cancelled: cancelled } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: property_address } - - { name: what_you_plan, type: textarea } - - { name: phone, type: tel, optional: true } - - { name: place, type: location, optional: true } - - - id: application - who: A homeowner who wants a garage, an extension, a new window or another change to their property - wants: Permission to build, demolish, divide a property or change what a building is used for - door: build - lands_in: applications - handled_by: case_officers - stages: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused, withdrawn] - done_when: [approved, approved_with_conditions, refused, withdrawn] - success: [approved, approved_with_conditions] - skippable: [papers_missing, papers_received] - reached_from: - papers_missing: [open, papers_received, complete, in_hearing] - refused: [recommended] - moves_by: - papers_received: [submitter] - approved: [head_of_section] - approved_with_conditions: [head_of_section] - refused: [head_of_section] - withdrawn: [submitter, case_officers] - watched_by: [public, front_desk, inspectors] - public_states: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused] - mails: - open: submitter - papers_missing: submitter - complete: submitter - in_hearing: submitter - approved: submitter - approved_with_conditions: submitter - refused: submitter - withdrawn: submitter - deadlines: { in_hearing: { days: 42, to: hearing_over } } - stages_text: - open: received - papers_missing: papers missing, clock stopped - papers_received: missing papers sent in - complete: complete, clock running - in_hearing: out to neighbours and agencies - hearing_over: hearing over - recommended: recommendation written - approved: approved - approved_with_conditions: approved with conditions - refused: refused - withdrawn: withdrawn - max_fields: 5 - collects: - - { name: name, private: true } - - { name: email, type: email, private: true } - - { name: property_address } - - { name: kind_of_work, type: select, options: [New building, Extension, Garage or outbuilding, Window or facade change, Demolition, Dividing a property, Change of use] } - - { name: what_you_want_to_do, type: textarea } - - { name: enclosed, type: select, multiple: true, optional: true, options: [Site plan, Floor plans, Elevations, Section drawing, Neighbour notices sent, Statement from the owner] } - - { name: phone, type: tel, optional: true, private: true } - - { name: place, type: location, optional: true } - - - id: firm-application - who: An approved architect or engineering firm filing on behalf of an owner - wants: To file a building application for a client and see what is missing - door: firm - enters_as: approved_firms - requires: Your firm must be on our list of approved firms before it may file anything. - lands_in: applications - handled_by: case_officers - stages: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused, withdrawn] - done_when: [approved, approved_with_conditions, refused, withdrawn] - success: [approved, approved_with_conditions] - skippable: [papers_missing, papers_received] - reached_from: - papers_missing: [open, papers_received, complete, in_hearing] - refused: [recommended] - moves_by: - papers_received: [submitter] - approved: [head_of_section] - approved_with_conditions: [head_of_section] - refused: [head_of_section] - withdrawn: [submitter, case_officers] - watched_by: [public, front_desk, inspectors] - public_states: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused] - mails: - open: submitter - papers_missing: submitter - complete: submitter - in_hearing: submitter - approved: submitter - approved_with_conditions: submitter - refused: submitter - withdrawn: submitter - deadlines: { in_hearing: { days: 42, to: hearing_over } } - stages_text: - open: received - papers_missing: papers missing, clock stopped - papers_received: missing papers sent in - complete: complete, clock running - in_hearing: out to neighbours and agencies - hearing_over: hearing over - recommended: recommendation written - approved: approved - approved_with_conditions: approved with conditions - refused: refused - withdrawn: withdrawn - max_fields: 6 - collects: - - { name: name, private: true } - - { name: email, type: email, private: true } - - { name: property_address } - - { name: kind_of_work, type: select, options: [New building, Extension, Garage or outbuilding, Window or facade change, Demolition, Dividing a property, Change of use] } - - { name: what_you_want_to_do, type: textarea } - - { name: enclosed, type: select, multiple: true, options: [Site plan, Floor plans, Elevations, Section drawing, Neighbour notices sent, Statement from the owner] } - - { name: owner_name, optional: true, private: true } - - { name: phone, type: tel, optional: true, private: true } - - { name: place, type: location, optional: true } - - - id: exemption - who: An applicant whose plans break the zoning rules - wants: An exemption from the zoning rules, decided alongside their application - door: build - about: application - requires: An application with us; the exemption rides along with it and is asked for from its row on the list of cases. - lands_in: exemptions - handled_by: case_officers - stages: [open, county_asked, county_heard, granted, refused] - done_when: [granted, refused] - success: [granted] - moves_by: { granted: [head_of_section], refused: [head_of_section] } - watched_by: [front_desk] - mails: { open: submitter, county_asked: submitter, granted: submitter, refused: submitter } - deadlines: { county_asked: { days: 42, to: county_heard } } - stages_text: { open: received, county_asked: county asked, county_heard: county has answered or its deadline has passed, granted: granted, refused: refused } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: rule_it_breaks } - - { name: why_it_should_be_allowed, type: textarea } - - - id: objection - who: A neighbour who got a notice in the post and does not agree with what is planned next door - wants: To object to an application and have the objection answered in the decision - door: neighbour - about: application - requires: The application must still be out for hearing; objections are taken until the six weeks are up. - lands_in: objections - handled_by: case_officers - stages: [open, registered, answered, addressed] - done_when: [addressed] - success: [addressed] - skippable: [answered] - moves_by: { registered: [front_desk, case_officers], answered: [approved_firms, case_officers] } - watched_by: [front_desk, head_of_section] - mails: { open: submitter, registered: owner, addressed: submitter } - stages_text: { open: received, registered: registered on the case, answered: answered by the applicant, addressed: addressed in the decision } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: your_property } - - { name: objection, type: textarea } - - { name: phone, type: tel, optional: true } - - - id: logged-objection - who: The front desk, when an objection comes in on paper or over the counter - wants: To put the objection on the right case straight away - enters_as: front_desk - about: application - lands_in: objections - handled_by: case_officers - stages: [open, registered, answered, addressed] - done_when: [addressed] - success: [addressed] - skippable: [answered] - moves_by: { registered: [front_desk, case_officers], answered: [approved_firms, case_officers] } - watched_by: [front_desk, head_of_section] - mails: { registered: owner } - stages_text: { open: received, registered: registered on the case, answered: answered by the applicant, addressed: addressed in the decision } - max_fields: 4 - collects: - - { name: name } - - { name: your_property } - - { name: objection, type: textarea } - - { name: received_on, type: date } - - { name: phone, type: tel, optional: true } - - - id: hearing-request - who: A case officer who is obliged to ask another authority about an application - wants: To ask the road authority, the fire service, the heritage office or the county, and go on when the deadline has passed - enters_as: case_officers - about: application - lands_in: hearing_answers - handled_by: case_officers - stages: [open, answered, no_answer] - done_when: [answered, no_answer] - success: [answered] - moves_by: { answered: [agencies, case_officers] } - watched_by: [agencies, front_desk] - deadlines: { open: { days: 42, to: no_answer } } - stages_text: { open: asked, answered: answered, no_answer: deadline passed without an answer } - max_fields: 3 - collects: - - { name: agency, type: select, options: [Road authority, Fire service, Heritage office, County] } - - { name: what_we_ask, type: textarea } - - { name: answer_by, type: date } - - - id: appeal - who: Anyone with an interest in a decision, the applicant or a neighbour - wants: To appeal a decision we have made - about: application - requires: A decision on the application, made no more than three weeks ago. - lands_in: appeals - handled_by: case_officers - stages: [open, under_review, decision_changed, sent_to_board, upheld, overturned, dismissed] - done_when: [decision_changed, upheld, overturned, dismissed] - success: [decision_changed, upheld, overturned] - turned_down_from: [open, under_review] - reached_from: { decision_changed: [under_review] } - moves_by: { decision_changed: [head_of_section], upheld: [appeals_board], overturned: [appeals_board] } - watched_by: [appeals_board, head_of_section, front_desk] - mails: { open: submitter, decision_changed: submitter, sent_to_board: submitter, upheld: submitter, overturned: submitter, dismissed: submitter } - stages_text: { open: received, under_review: we are going through it ourselves, decision_changed: we changed our own decision, sent_to_board: sent to the appeals board, upheld: decision upheld by the board, overturned: decision overturned by the board, dismissed: dismissed } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: your_interest, type: select, options: [I am the applicant, I am a neighbour, Other] } - - { name: grounds, type: textarea } - - { name: phone, type: tel, optional: true } - - - id: illegal-building-report - who: Someone who sees something going up behind their fence without permission - wants: To tell us, so that we go and look - door: neighbour - lands_in: illegal_building - handled_by: case_officers - stages: [open, inspected, owner_written_to, explained, fined, applied_for, taken_down, nothing_illegal] - done_when: [applied_for, taken_down, nothing_illegal] - success: [applied_for, taken_down] - skippable: [fined] - turned_down_from: [open, inspected, explained] - moves_by: { inspected: [inspectors], fined: [head_of_section] } - watched_by: [front_desk, inspectors] - stages_text: { open: reported, inspected: we have been and looked, owner_written_to: owner written to, explained: owner has explained, fined: weekly fine running, applied_for: applied for properly, taken_down: taken down, nothing_illegal: nothing illegal found } - max_fields: 3 - collects: - - { name: where } - - { name: what_is_being_built, type: textarea } - - { name: place, type: location, optional: true } - - { name: name, optional: true, private: true } - - { name: phone, type: tel, optional: true, private: true } - - - id: logged-report - who: The front desk, when someone rings or comes in about building without permission - wants: To log the report so an inspector goes and looks - enters_as: front_desk - lands_in: illegal_building - handled_by: case_officers - stages: [open, inspected, owner_written_to, explained, fined, applied_for, taken_down, nothing_illegal] - done_when: [applied_for, taken_down, nothing_illegal] - success: [applied_for, taken_down] - skippable: [fined] - turned_down_from: [open, inspected, explained] - moves_by: { inspected: [inspectors], fined: [head_of_section] } - watched_by: [front_desk, inspectors] - stages_text: { open: reported, inspected: we have been and looked, owner_written_to: owner written to, explained: owner has explained, fined: weekly fine running, applied_for: applied for properly, taken_down: taken down, nothing_illegal: nothing illegal found } - max_fields: 3 - collects: - - { name: where } - - { name: what_is_being_built, type: textarea } - - { name: place, type: location, optional: true } - - { name: name, optional: true, private: true } - - { name: phone, type: tel, optional: true, private: true } - - - id: inspection - who: An inspector on site, writing on a phone in a cold wind - wants: To write up what was found on a case and set a date for what must be put right - enters_as: inspectors - about: application - lands_in: inspections - handled_by: inspectors - stages: [open, to_put_right, as_approved] - done_when: [as_approved] - success: [as_approved] - skippable: [to_put_right] - watched_by: [case_officers, head_of_section] - stages_text: { open: inspected, to_put_right: to be put right, then we go back, as_approved: as approved } - max_fields: 2 - collects: - - { name: finding, type: select, options: [As approved, Something is wrong] } - - { name: what_is_wrong, type: textarea, optional: true } - - { name: put_right_by, type: date, optional: true } - - { name: place, type: location, optional: true } - - - id: completion-certificate - who: An approved firm whose work on a case is done - wants: A completion certificate for the finished work - door: firm - enters_as: approved_firms - about: application - requires: Your firm must be on our list of approved firms, and the application must be approved. - lands_in: completion_certificates - handled_by: case_officers - stages: [open, checked, issued, refused] - done_when: [issued, refused] - success: [issued] - moves_by: { issued: [head_of_section], refused: [head_of_section] } - watched_by: [inspectors, front_desk] - mails: { open: submitter, issued: submitter, refused: submitter } - stages_text: { open: asked for, checked: inspections and outstanding work checked, issued: certificate signed, refused: refused } - max_fields: 5 - collects: - - { name: name } - - { name: email, type: email } - - { name: finished_on, type: date } - - { name: what_was_built, type: textarea } - - { name: still_outstanding, type: textarea, optional: true } - - - id: temporary-permission - who: An approved firm whose client wants to move in before everything is done - wants: A temporary permission to use the building - door: firm - enters_as: approved_firms - about: application - requires: Your firm must be on our list of approved firms, and the application must be approved. - lands_in: temporary_permissions - handled_by: case_officers - stages: [open, checked, issued, refused] - done_when: [issued, refused] - success: [issued] - moves_by: { issued: [head_of_section], refused: [head_of_section] } - watched_by: [inspectors, front_desk] - mails: { open: submitter, issued: submitter, refused: submitter } - stages_text: { open: asked for, checked: inspections and outstanding work checked, issued: temporary permission signed, refused: refused } - max_fields: 6 - collects: - - { name: name } - - { name: email, type: email } - - { name: move_in_on, type: date } - - { name: still_outstanding, type: textarea } - - { name: finished_by, type: date } - - - id: firm-approval - who: An architect or engineering firm that wants to file applications for owners - wants: To be approved by us and put on the list of firms that may file - door: firm - lands_in: approved_firm_requests - handled_by: case_officers - stages: [open, checked, listed, refused] - done_when: [listed, refused] - success: [listed] - moves_by: { listed: [head_of_section], refused: [head_of_section] } - watched_by: [public, front_desk] - public_states: [listed] - mails: { open: submitter, listed: submitter, refused: submitter } - grants: { listed: approved_firms } - stages_text: { open: received, checked: registration, insurance and qualifications checked, listed: on the list, refused: refused } - max_fields: 6 - collects: - - { name: firm } - - { name: name, private: true } - - { name: email, type: email, private: true } - - { name: registration_number } - - { name: insurance, private: true } - - { name: qualified_for, type: select, multiple: true, options: [Applying on behalf of owners, Architectural design, Structural engineering, Fire safety design, Geotechnical engineering, Carrying out the work, Independent control] } - - { name: phone, type: tel, optional: true, private: true } diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/llm/02-prompt.md b/vendor/trainer/runs/permits-plan-2026-09-30/llm/02-prompt.md deleted file mode 100644 index 7368264..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/llm/02-prompt.md +++ /dev/null @@ -1,721 +0,0 @@ -# plan.yaml - -A plan is a needs spec that also says what each form collects. A -builder turns it into a working site with no further decisions, so -every structural fact about the business has to be in it. - -```yaml -business: -language: en # the intake's language code -contact: { name: , email: } -about: > - What the business does, in its own words. -mail: { from: " ", reply_to: } - # who every mail the site sends comes from; required as soon - # as any need has `mails` - -does: # the front door's first card: what the business does, one - - id: kebab-case # or two features, one role each, no button. Say it for the - for: # role the business exists for and the next one it serves. - text: what it does for them, in the intake's own words - -shows: # what the site shows as it is: a live figure, the latest - - id: kebab-case # releases, what has been built; `resource` is portal's block - text: one line on what it is - resource: { public: true, source: { kind: url, url: https://... } } - -doors: # a first question before the forms, only when the offers - - id: kebab-case # are more than one page holds (measured: four doors beat - who: who comes through it # ten offers on one page; six offers on one page beat doors) - -groups: # groups with a label the public may see: the committees - - { id: traffic, label: Traffic, invited_by: [board] } # a person can ask to join (optional; label defaults to the id) -invites_by: [board] # groups whose desk may invite people into every desk - -needs: - - id: kebab-case # ASCII only - who: the kind of person, in plain words, in the intake's language - wants: what they want from the business - door: # the door this public need sits behind; omit to put it on the front door - enters_as: # ONLY for a role inside the business; omit for the public - lands_in: # snake_case, ASCII - handled_by: # the role that must see and move the record - stages: [open, , ..., , ] - # EVERY stage the business said a case goes through, first to - # last, read off their own sentences one verb at a time: "they - # come in, we go and look, we send a quote, we win or lose it" - # is [open, surveyed, quoted, won, lost]. A pipeline is not an - # inbox: "answered" is rarely the real outcome. - done_when: [, ] # every stage that counts as finished, good or bad - success: [] # the finished stages that are a good outcome for the business - skippable: [] # stages a case may pass over (papers already complete) - requires: # what the person must ALREADY have or be for this to work: - # a membership, a reference number, the link from a mail, an - # account. Stated on the card above the form. Omit when there - # is none; never invent one - turned_down_from: [open, ] - # the unfinished stages a case can still be turned down from; - # omit for every one. An applicant is declined before they - # start, not after - after, they depart - reached_from: { : [, ...] } - # where a stage is entered from, when the line does not say it. - # Two things need it and nothing else does: a case SENT BACK to - # a stage it was already past ("papers missing" again, after the - # hearing turned something up), and a GOOD ENDING partway along, - # where a case finishes well without walking to the end ("we - # changed our own decision", instead of passing it upwards). - # A stage named here is entered from exactly those stages and - # nowhere else, so it also says where a refusal may NOT come - # from. Omit unless the business described one of those two - moves_by: { : [, ...] } - # only where someone other than handled_by moves a case INTO a - # stage: another group, or `submitter` (the person who sent the - # form; the form must then collect a required `email`) - watched_by: [] # groups that see these cases and move nothing; `public` opens a - # read-only page of the bucket to everyone (contact details hidden) - mails: { open: submitter, : submitter, :
} - # who hears when a case enters a stage: `submitter` (the form - # must then collect a required `email`) or one address. Tell the - # person on arrival and on every decision that is about them. - grants: { : } - # a stage that makes the person a member of a group when their - # case arrives (an approval that IS membership); the form must - # then collect a required `name` and a required `email` - deadlines: { : { days: 30, to: } } - # a stage a clock moves on from when a case sits in it that long - # (a notice that expires, a hearing with no answer); only along - # a move the stages already allow - public_states: [] # with `public` in watched_by: the stages the public list shows - # (a noticeboard shows what is up, not what was taken down) - stages_text: { open: , : } - # each stage in the intake's language, where the ASCII id - # would read wrong to a person: "ikke_lost" is "ikke løst" - events: { open: applied } # ONLY when rebuilding a live site: the event names its - # aggregates.yaml already has, so its records keep replaying - attended_by: > # ONLY for a stage no desk button moves: the automation that does - what moves it, in a sentence - max_fields: 4 # decide this BEFORE writing collects, from what the intake - # says about the person; a budget that equals the form's size - # is counted, not decided, and is reported as such - # how many required fields THIS person will tolerate, from what - # the intake says about them: someone on a phone with gloves - # on gets 3, a first enquiry 4 to 6, a firm's paperwork 5 to 6 - collects: # the form; name is snake_case ASCII, type one of - # text (default), email, tel, textarea, date, select, location - # (a pin on a map, stored as lat/lon/zoom; optional: true, - # since a map needs a browser that can draw one) - - { name: name } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - { name: urgency, type: select, options: [This week, This month, No rush] } - - { name: can_do, type: select, multiple: true, options: [Drive, Cook, Carry] } # any number - - { name: committee, type: select, options_from: groups } # the labelled groups above - - { name: address, optional: true, private: true } # never on a public page -``` - -What a portal site can do - use what serves this business, leave the -rest. Each is one line in the plan, and the builder does the wiring: - -- **Show, not only ask.** A bucket with `watched_by: [public]` becomes - a public list: its newest few records sit inline on the front door, - linked to the whole list, contact details pruned. What neighbours - reported and where it stands, which changes were approved, what is - on the noticeboard: a visitor who sees the place working trusts it, - and a person who reported something sees it being dealt with. - `public_states` shows only the stages worth showing. -- **Stay in dialogue.** `mails` tells the person at the stages that - are about them, and a reply to that mail comes back to the case as - a note. `moves_by: { : [submitter] }` gives them a move of - their own through their link: confirm, withdraw, say it is solved. -- **Let a decision do the work.** `grants` makes an approval into - membership: the person gets an account and a place in the group the - moment the case gets there; `deadlines` lets a stage end on its own - (a notice that expires, a request nobody took up); `invites_by` lets - a desk bring a person in without anyone touching an admin tool. -- **Let one record answer another.** A need `about` another need is - one answer per record of it, from that record's own row on the - public list: a neighbour saying "I can lend you that" to a notice, a - bid to a request. `mails: { open: owner }` sends the answer straight - to whoever posted the record, and the site keeps no queue - the - poster's inbox is the queue. The site never becomes a go-between. -- **Keep some things for members.** A need with `door` and `enters_as` - is offered to everyone on the door and taken on the group's page - behind sign-in, with name and address filled from the account: a - seat on a committee for members, a discount for customers. The - group is one a decision `grants`, so nobody has to be waved in. -- **Answer for the pages as a group.** `contact: { name, email, group }` - makes the contact a group's inbox rather than a person: no account - is made for it, and every member of the group may suggest changes - to the pages from the page itself. -- **Make the choices real.** `groups` with labels, and a select with - `options_from: groups`, so a form offers exactly the committees or - teams that exist; `multiple: true` where a person can pick several. -- **Place things.** A `location` field puts a pin on a map (where the - hazard is, where the job is), when the site has maps. -- **Open with the business itself.** `does` says what it does for the - roles it exists for; `shows` puts its live content beside that. - -Rules: -- One need per (kind of person, thing they want). Work inside the - business counts: a role recording or posting something is a need - with `enters_as`. The intake's "what slows us down" usually names one. -- Groups are the roles the intake names, as snake_case identifiers. -- The front door opens with `does` (at most two features, one role - each) and `shows`, then holds at most seven offers: doors plus needs - with no door. A door with no need behind it is refused; a door on a - need with `enters_as` is the way to the members' page. A role `does` - speaks for must have a move - of its own after sending (`moves_by` with `submitter`) or a public - view, or it is a spectator. -- Every need whose form collects an email should tell the person on - arrival and on the decisions about them (`mails`); the plan then - needs `mail: { from }`. -- Every feature on a card explains itself: a list says what one row is - and what its buttons do, a form says what to have ready. If an - alternative only works for someone who already has something, say so - in `requires` - a condition the reader meets only after filling the - form in has already cost them the filling in. -- Needs that land in the same bucket must have the same stages, - done_when, skippable, moves_by, watched_by and handled_by. -- Every required field is one the business will use to act on the - record. If the intake gives no reason to need it, make it optional or - leave it out. The required fields must not exceed max_fields. -- Only `select` lists `options`, and it must list them. -- Everything a person reads (who, wants, about, select options) is in - the intake's language. Everything a machine reads (ids, buckets, - groups, stages, field names) is plain ASCII: no æ, ø, å. -- Write no personas. - - -# Task - -A business filled in this intake. Write its plan.yaml: every need the intake implies, for the public and for each role inside the business, with the stages read off how the business says things progress, the form each need collects, and how much each person will tolerate. - -## Intake - -# A building authority's intake: the hardest sector the trainer has -# been given. Cases that pause and resume, cases that belong to other -# cases, a decision two roles sign, a deadline nobody in the building -# controls, and an appeal that reopens something already finished. -# Written the way the department head would write it, in plain words. -business: Vestmark kommune - Building and Planning -contact: { name: Solveig Hauge, email: byggesak@vestmark.example } -language: en - -what_we_do: > - We are the building authority for a municipality of twenty-one - thousand people. Anyone who wants to build, demolish, divide a - property or change what a building is used for has to come to us - first. We check the drawings against the zoning map and the building - regulations, we let the neighbours and the other authorities have - their say, and then we approve or refuse. We also decide exemptions - from the zoning rules, we inspect what is actually built, we sign off - finished work, and we deal with building that was never applied for. - -who_comes_to_us: > - Homeowners who want a garage, an extension or a new window, and who - have never read a regulation in their life. Architects and - engineering firms who file on behalf of owners; they have to be - approved by us before they may file anything. Neighbours who got a - notice in the post and do not agree with what is planned next door. - The other authorities we are obliged to ask: the road authority, the - fire service, the heritage office, the county. People who ring to say - something is going up behind their fence without permission. And - anyone who wants to sit down with us before they spend eighty - thousand on drawings. - -what_we_keep_track_of: > - Pre-application meetings: someone asks for one, we find a time, we - meet, and we write down what we told them so they can hold us to it. - Applications: they arrive, someone checks whether the papers are all - there, and if something is missing we write and ask for it, and the - twelve-week clock stops until they answer. Often we have to ask - twice. When it is complete we send it out to the neighbours and to - the agencies and wait six weeks. Then a case officer writes a - recommendation, and the head of section signs the decision: approved, - approved with conditions, or refused. People can withdraw at any - point, and quite a few do once they hear from the neighbours. - Exemptions: if what someone wants breaks the zoning rules they can - ask for an exemption. It rides along with the application but it is a - decision of its own, and we are not allowed to grant one before the - county has been asked. - Objections: a neighbour who got a notice writes to us within the - hearing period. Each objection belongs to an application. We register - it, the applicant gets to answer it, and the case officer has to - address every single one in the decision, by name. - Hearing answers: we ask an agency, they answer, or they do not, and - when the deadline has passed we go on without them. - Appeals: for three weeks after a decision anyone with an interest can - appeal it. We go through it ourselves first, and if we change our own - mind that is the end of it. If we do not, it goes to the appeals - board, who meet once a month and either uphold us or overturn us. - Inspections: we pick cases and go and look, on site. Either it is as - approved, or we write up what is wrong and set a date for it to be - put right, and then we go back. - Finishing: when the work is done the firm asks for a completion - certificate. If they want to move in before everything is done they - can ask for a temporary permission instead. We check what was - inspected and what is still outstanding before we sign anything. - Illegal building: someone reports it, we go and look, we write to the - owner and they have to explain themselves, and then they either apply - for it properly, take it down, or we fine them weekly until they do. - Approved firms: a firm sends us their registration, their insurance - and what they are qualified for, we check it, and then they are on - the list and may file applications. - -who_is_involved: > - The front desk logs what comes in over the counter and on the phone, - and keeps the archive. Four case officers carry the cases. The head - of section signs every decision and every exemption; a case officer - may not sign their own. Two inspectors are out on site most of the - week and write up what they find on a phone in a cold wind. The - appeals board is seven elected politicians who meet on the third - Tuesday of the month and read what we send them. The agencies are - outside the building altogether and only ever answer hearings. The - approved firms file applications and answer objections on behalf of - their clients. - -what_slows_us_down: > - The twelve-week clock, and the fact that stopping it and starting it - again is done by hand in a spreadsheet. Applications that arrive - missing half the drawings. Objections that come in on paper and get - stapled to the wrong case. Neighbours ringing to ask what is - happening with the case behind their house, which we are obliged to - tell them and which takes ten minutes every time. Agencies that never - answer at all. And nobody outside this building can see a case - without asking us for it. - - -## Your last attempt was refused - -need "exemption": a need that answers another is reached from that one's list, not a door or a group's page - -Fix that and return the whole plan again. - -```yaml -business: Vestmark kommune - Building and Planning -language: en -contact: { name: Solveig Hauge, email: byggesak@vestmark.example } -about: > - We are the building authority for a municipality of twenty-one - thousand people. Anyone who wants to build, demolish, divide a - property or change what a building is used for has to come to us - first. We check the drawings against the zoning map and the building - regulations, we let the neighbours and the other authorities have - their say, and then we approve or refuse. We also decide exemptions - from the zoning rules, we inspect what is actually built, we sign off - finished work, and we deal with building that was never applied for. -mail: { from: "Vestmark kommune Building and Planning ", reply_to: byggesak@vestmark.example } - -does: - - id: check-and-decide - for: application - text: > - We check your drawings against the zoning map and the building - regulations, let the neighbours and the other authorities have - their say, and then approve or refuse. You can follow your case - here the whole way. - - id: firms-file-here - for: firm-application - text: > - Approved firms file applications for their clients here, see what - is missing and ask for the completion certificate when the work is done. - -doors: - - id: build - who: You want to build, demolish, divide a property or change what a building is used for - - id: neighbour - who: Something is planned or going up next door to you - - id: firm - who: You are an architect or an engineering firm filing on behalf of owners - -invites_by: [head_of_section] - -needs: - - id: pre-application-meeting - who: Anyone who wants to sit down with us before they spend money on drawings - wants: A meeting with a case officer, and a written note of what we told them - door: build - lands_in: pre_application_meetings - handled_by: case_officers - stages: [open, scheduled, met, written_up, cancelled] - done_when: [written_up, cancelled] - success: [written_up] - turned_down_from: [open, scheduled] - moves_by: { cancelled: [submitter, case_officers] } - watched_by: [front_desk] - mails: { open: submitter, scheduled: submitter, written_up: submitter, cancelled: submitter } - stages_text: { open: asked for, scheduled: time found, met: meeting held, written_up: written down and sent, cancelled: cancelled } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: property_address } - - { name: what_you_plan, type: textarea } - - { name: phone, type: tel, optional: true } - - { name: place, type: location, optional: true } - - - id: application - who: A homeowner who wants a garage, an extension, a new window or another change to their property - wants: Permission to build, demolish, divide a property or change what a building is used for - door: build - lands_in: applications - handled_by: case_officers - stages: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused, withdrawn] - done_when: [approved, approved_with_conditions, refused, withdrawn] - success: [approved, approved_with_conditions] - skippable: [papers_missing, papers_received] - reached_from: - papers_missing: [open, papers_received, complete, in_hearing] - refused: [recommended] - moves_by: - papers_received: [submitter] - approved: [head_of_section] - approved_with_conditions: [head_of_section] - refused: [head_of_section] - withdrawn: [submitter, case_officers] - watched_by: [public, front_desk, inspectors] - public_states: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused] - mails: - open: submitter - papers_missing: submitter - complete: submitter - in_hearing: submitter - approved: submitter - approved_with_conditions: submitter - refused: submitter - withdrawn: submitter - deadlines: { in_hearing: { days: 42, to: hearing_over } } - stages_text: - open: received - papers_missing: papers missing, clock stopped - papers_received: missing papers sent in - complete: complete, clock running - in_hearing: out to neighbours and agencies - hearing_over: hearing over - recommended: recommendation written - approved: approved - approved_with_conditions: approved with conditions - refused: refused - withdrawn: withdrawn - max_fields: 5 - collects: - - { name: name, private: true } - - { name: email, type: email, private: true } - - { name: property_address } - - { name: kind_of_work, type: select, options: [New building, Extension, Garage or outbuilding, Window or facade change, Demolition, Dividing a property, Change of use] } - - { name: what_you_want_to_do, type: textarea } - - { name: enclosed, type: select, multiple: true, optional: true, options: [Site plan, Floor plans, Elevations, Section drawing, Neighbour notices sent, Statement from the owner] } - - { name: phone, type: tel, optional: true, private: true } - - { name: place, type: location, optional: true } - - - id: firm-application - who: An approved architect or engineering firm filing on behalf of an owner - wants: To file a building application for a client and see what is missing - door: firm - enters_as: approved_firms - requires: Your firm must be on our list of approved firms before it may file anything. - lands_in: applications - handled_by: case_officers - stages: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused, withdrawn] - done_when: [approved, approved_with_conditions, refused, withdrawn] - success: [approved, approved_with_conditions] - skippable: [papers_missing, papers_received] - reached_from: - papers_missing: [open, papers_received, complete, in_hearing] - refused: [recommended] - moves_by: - papers_received: [submitter] - approved: [head_of_section] - approved_with_conditions: [head_of_section] - refused: [head_of_section] - withdrawn: [submitter, case_officers] - watched_by: [public, front_desk, inspectors] - public_states: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused] - mails: - open: submitter - papers_missing: submitter - complete: submitter - in_hearing: submitter - approved: submitter - approved_with_conditions: submitter - refused: submitter - withdrawn: submitter - deadlines: { in_hearing: { days: 42, to: hearing_over } } - stages_text: - open: received - papers_missing: papers missing, clock stopped - papers_received: missing papers sent in - complete: complete, clock running - in_hearing: out to neighbours and agencies - hearing_over: hearing over - recommended: recommendation written - approved: approved - approved_with_conditions: approved with conditions - refused: refused - withdrawn: withdrawn - max_fields: 6 - collects: - - { name: name, private: true } - - { name: email, type: email, private: true } - - { name: property_address } - - { name: kind_of_work, type: select, options: [New building, Extension, Garage or outbuilding, Window or facade change, Demolition, Dividing a property, Change of use] } - - { name: what_you_want_to_do, type: textarea } - - { name: enclosed, type: select, multiple: true, options: [Site plan, Floor plans, Elevations, Section drawing, Neighbour notices sent, Statement from the owner] } - - { name: owner_name, optional: true, private: true } - - { name: phone, type: tel, optional: true, private: true } - - { name: place, type: location, optional: true } - - - id: exemption - who: An applicant whose plans break the zoning rules - wants: An exemption from the zoning rules, decided alongside their application - door: build - about: application - requires: An application with us; the exemption rides along with it and is asked for from its row on the list of cases. - lands_in: exemptions - handled_by: case_officers - stages: [open, county_asked, county_heard, granted, refused] - done_when: [granted, refused] - success: [granted] - moves_by: { granted: [head_of_section], refused: [head_of_section] } - watched_by: [front_desk] - mails: { open: submitter, county_asked: submitter, granted: submitter, refused: submitter } - deadlines: { county_asked: { days: 42, to: county_heard } } - stages_text: { open: received, county_asked: county asked, county_heard: county has answered or its deadline has passed, granted: granted, refused: refused } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: rule_it_breaks } - - { name: why_it_should_be_allowed, type: textarea } - - - id: objection - who: A neighbour who got a notice in the post and does not agree with what is planned next door - wants: To object to an application and have the objection answered in the decision - door: neighbour - about: application - requires: The application must still be out for hearing; objections are taken until the six weeks are up. - lands_in: objections - handled_by: case_officers - stages: [open, registered, answered, addressed] - done_when: [addressed] - success: [addressed] - skippable: [answered] - moves_by: { registered: [front_desk, case_officers], answered: [approved_firms, case_officers] } - watched_by: [front_desk, head_of_section] - mails: { open: submitter, registered: owner, addressed: submitter } - stages_text: { open: received, registered: registered on the case, answered: answered by the applicant, addressed: addressed in the decision } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: your_property } - - { name: objection, type: textarea } - - { name: phone, type: tel, optional: true } - - - id: logged-objection - who: The front desk, when an objection comes in on paper or over the counter - wants: To put the objection on the right case straight away - enters_as: front_desk - about: application - lands_in: objections - handled_by: case_officers - stages: [open, registered, answered, addressed] - done_when: [addressed] - success: [addressed] - skippable: [answered] - moves_by: { registered: [front_desk, case_officers], answered: [approved_firms, case_officers] } - watched_by: [front_desk, head_of_section] - mails: { registered: owner } - stages_text: { open: received, registered: registered on the case, answered: answered by the applicant, addressed: addressed in the decision } - max_fields: 4 - collects: - - { name: name } - - { name: your_property } - - { name: objection, type: textarea } - - { name: received_on, type: date } - - { name: phone, type: tel, optional: true } - - - id: hearing-request - who: A case officer who is obliged to ask another authority about an application - wants: To ask the road authority, the fire service, the heritage office or the county, and go on when the deadline has passed - enters_as: case_officers - about: application - lands_in: hearing_answers - handled_by: case_officers - stages: [open, answered, no_answer] - done_when: [answered, no_answer] - success: [answered] - moves_by: { answered: [agencies, case_officers] } - watched_by: [agencies, front_desk] - deadlines: { open: { days: 42, to: no_answer } } - stages_text: { open: asked, answered: answered, no_answer: deadline passed without an answer } - max_fields: 3 - collects: - - { name: agency, type: select, options: [Road authority, Fire service, Heritage office, County] } - - { name: what_we_ask, type: textarea } - - { name: answer_by, type: date } - - - id: appeal - who: Anyone with an interest in a decision, the applicant or a neighbour - wants: To appeal a decision we have made - about: application - requires: A decision on the application, made no more than three weeks ago. - lands_in: appeals - handled_by: case_officers - stages: [open, under_review, decision_changed, sent_to_board, upheld, overturned, dismissed] - done_when: [decision_changed, upheld, overturned, dismissed] - success: [decision_changed, upheld, overturned] - turned_down_from: [open, under_review] - reached_from: { decision_changed: [under_review] } - moves_by: { decision_changed: [head_of_section], upheld: [appeals_board], overturned: [appeals_board] } - watched_by: [appeals_board, head_of_section, front_desk] - mails: { open: submitter, decision_changed: submitter, sent_to_board: submitter, upheld: submitter, overturned: submitter, dismissed: submitter } - stages_text: { open: received, under_review: we are going through it ourselves, decision_changed: we changed our own decision, sent_to_board: sent to the appeals board, upheld: decision upheld by the board, overturned: decision overturned by the board, dismissed: dismissed } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: your_interest, type: select, options: [I am the applicant, I am a neighbour, Other] } - - { name: grounds, type: textarea } - - { name: phone, type: tel, optional: true } - - - id: illegal-building-report - who: Someone who sees something going up behind their fence without permission - wants: To tell us, so that we go and look - door: neighbour - lands_in: illegal_building - handled_by: case_officers - stages: [open, inspected, owner_written_to, explained, fined, applied_for, taken_down, nothing_illegal] - done_when: [applied_for, taken_down, nothing_illegal] - success: [applied_for, taken_down] - skippable: [fined] - turned_down_from: [open, inspected, explained] - moves_by: { inspected: [inspectors], fined: [head_of_section] } - watched_by: [front_desk, inspectors] - stages_text: { open: reported, inspected: we have been and looked, owner_written_to: owner written to, explained: owner has explained, fined: weekly fine running, applied_for: applied for properly, taken_down: taken down, nothing_illegal: nothing illegal found } - max_fields: 3 - collects: - - { name: where } - - { name: what_is_being_built, type: textarea } - - { name: place, type: location, optional: true } - - { name: name, optional: true, private: true } - - { name: phone, type: tel, optional: true, private: true } - - - id: logged-report - who: The front desk, when someone rings or comes in about building without permission - wants: To log the report so an inspector goes and looks - enters_as: front_desk - lands_in: illegal_building - handled_by: case_officers - stages: [open, inspected, owner_written_to, explained, fined, applied_for, taken_down, nothing_illegal] - done_when: [applied_for, taken_down, nothing_illegal] - success: [applied_for, taken_down] - skippable: [fined] - turned_down_from: [open, inspected, explained] - moves_by: { inspected: [inspectors], fined: [head_of_section] } - watched_by: [front_desk, inspectors] - stages_text: { open: reported, inspected: we have been and looked, owner_written_to: owner written to, explained: owner has explained, fined: weekly fine running, applied_for: applied for properly, taken_down: taken down, nothing_illegal: nothing illegal found } - max_fields: 3 - collects: - - { name: where } - - { name: what_is_being_built, type: textarea } - - { name: place, type: location, optional: true } - - { name: name, optional: true, private: true } - - { name: phone, type: tel, optional: true, private: true } - - - id: inspection - who: An inspector on site, writing on a phone in a cold wind - wants: To write up what was found on a case and set a date for what must be put right - enters_as: inspectors - about: application - lands_in: inspections - handled_by: inspectors - stages: [open, to_put_right, as_approved] - done_when: [as_approved] - success: [as_approved] - skippable: [to_put_right] - watched_by: [case_officers, head_of_section] - stages_text: { open: inspected, to_put_right: to be put right, then we go back, as_approved: as approved } - max_fields: 2 - collects: - - { name: finding, type: select, options: [As approved, Something is wrong] } - - { name: what_is_wrong, type: textarea, optional: true } - - { name: put_right_by, type: date, optional: true } - - { name: place, type: location, optional: true } - - - id: completion-certificate - who: An approved firm whose work on a case is done - wants: A completion certificate for the finished work - door: firm - enters_as: approved_firms - about: application - requires: Your firm must be on our list of approved firms, and the application must be approved. - lands_in: completion_certificates - handled_by: case_officers - stages: [open, checked, issued, refused] - done_when: [issued, refused] - success: [issued] - moves_by: { issued: [head_of_section], refused: [head_of_section] } - watched_by: [inspectors, front_desk] - mails: { open: submitter, issued: submitter, refused: submitter } - stages_text: { open: asked for, checked: inspections and outstanding work checked, issued: certificate signed, refused: refused } - max_fields: 5 - collects: - - { name: name } - - { name: email, type: email } - - { name: finished_on, type: date } - - { name: what_was_built, type: textarea } - - { name: still_outstanding, type: textarea, optional: true } - - - id: temporary-permission - who: An approved firm whose client wants to move in before everything is done - wants: A temporary permission to use the building - door: firm - enters_as: approved_firms - about: application - requires: Your firm must be on our list of approved firms, and the application must be approved. - lands_in: temporary_permissions - handled_by: case_officers - stages: [open, checked, issued, refused] - done_when: [issued, refused] - success: [issued] - moves_by: { issued: [head_of_section], refused: [head_of_section] } - watched_by: [inspectors, front_desk] - mails: { open: submitter, issued: submitter, refused: submitter } - stages_text: { open: asked for, checked: inspections and outstanding work checked, issued: temporary permission signed, refused: refused } - max_fields: 6 - collects: - - { name: name } - - { name: email, type: email } - - { name: move_in_on, type: date } - - { name: still_outstanding, type: textarea } - - { name: finished_by, type: date } - - - id: firm-approval - who: An architect or engineering firm that wants to file applications for owners - wants: To be approved by us and put on the list of firms that may file - door: firm - lands_in: approved_firm_requests - handled_by: case_officers - stages: [open, checked, listed, refused] - done_when: [listed, refused] - success: [listed] - moves_by: { listed: [head_of_section], refused: [head_of_section] } - watched_by: [public, front_desk] - public_states: [listed] - mails: { open: submitter, listed: submitter, refused: submitter } - grants: { listed: approved_firms } - stages_text: { open: received, checked: registration, insurance and qualifications checked, listed: on the list, refused: refused } - max_fields: 6 - collects: - - { name: firm } - - { name: name, private: true } - - { name: email, type: email, private: true } - - { name: registration_number } - - { name: insurance, private: true } - - { name: qualified_for, type: select, multiple: true, options: [Applying on behalf of owners, Architectural design, Structural engineering, Fire safety design, Geotechnical engineering, Carrying out the work, Independent control] } - - { name: phone, type: tel, optional: true, private: true } -``` - -Reply with the YAML only, no prose, no code fences. \ No newline at end of file diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/llm/02-reply.md b/vendor/trainer/runs/permits-plan-2026-09-30/llm/02-reply.md deleted file mode 100644 index 3918b56..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/llm/02-reply.md +++ /dev/null @@ -1,418 +0,0 @@ -business: Vestmark kommune - Building and Planning -language: en -contact: { name: Solveig Hauge, email: byggesak@vestmark.example } -about: > - We are the building authority for a municipality of twenty-one - thousand people. Anyone who wants to build, demolish, divide a - property or change what a building is used for has to come to us - first. We check the drawings against the zoning map and the building - regulations, we let the neighbours and the other authorities have - their say, and then we approve or refuse. We also decide exemptions - from the zoning rules, we inspect what is actually built, we sign off - finished work, and we deal with building that was never applied for. -mail: { from: "Vestmark kommune Building and Planning ", reply_to: byggesak@vestmark.example } - -does: - - id: check-and-decide - for: application - text: > - We check your drawings against the zoning map and the building - regulations, let the neighbours and the other authorities have - their say, and then approve or refuse. Every case is on the list - here, so you and your neighbours can follow it the whole way, - and object to it or appeal it from its own row. - - id: firms-file-here - for: firm-application - text: > - Approved firms file applications for their clients here, see what - is missing and ask for the completion certificate when the work is done. - -doors: - - id: build - who: You want to build, demolish, divide a property or change what a building is used for - - id: firm - who: You are an architect or an engineering firm filing on behalf of owners - -invites_by: [head_of_section] - -needs: - - id: pre-application-meeting - who: Anyone who wants to sit down with us before they spend money on drawings - wants: A meeting with a case officer, and a written note of what we told them - door: build - lands_in: pre_application_meetings - handled_by: case_officers - stages: [open, scheduled, met, written_up, cancelled] - done_when: [written_up, cancelled] - success: [written_up] - turned_down_from: [open, scheduled] - moves_by: { cancelled: [submitter, case_officers] } - watched_by: [front_desk] - mails: { open: submitter, scheduled: submitter, written_up: submitter, cancelled: submitter } - stages_text: { open: asked for, scheduled: time found, met: meeting held, written_up: written down and sent, cancelled: cancelled } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: property_address } - - { name: what_you_plan, type: textarea } - - { name: phone, type: tel, optional: true } - - { name: place, type: location, optional: true } - - - id: application - who: A homeowner who wants a garage, an extension, a new window or another change to their property - wants: Permission to build, demolish, divide a property or change what a building is used for - door: build - lands_in: applications - handled_by: case_officers - stages: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused, withdrawn] - done_when: [approved, approved_with_conditions, refused, withdrawn] - success: [approved, approved_with_conditions] - skippable: [papers_missing, papers_received] - reached_from: - papers_missing: [open, papers_received, complete, in_hearing] - refused: [recommended] - moves_by: - papers_received: [submitter] - approved: [head_of_section] - approved_with_conditions: [head_of_section] - refused: [head_of_section] - withdrawn: [submitter, case_officers] - watched_by: [public, front_desk, inspectors] - public_states: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused] - mails: - open: submitter - papers_missing: submitter - complete: submitter - in_hearing: submitter - approved: submitter - approved_with_conditions: submitter - refused: submitter - withdrawn: submitter - deadlines: { in_hearing: { days: 42, to: hearing_over } } - stages_text: - open: received - papers_missing: papers missing, clock stopped - papers_received: missing papers sent in - complete: complete, clock running - in_hearing: out to neighbours and agencies - hearing_over: hearing over - recommended: recommendation written - approved: approved - approved_with_conditions: approved with conditions - refused: refused - withdrawn: withdrawn - max_fields: 5 - collects: - - { name: name, private: true } - - { name: email, type: email, private: true } - - { name: property_address } - - { name: kind_of_work, type: select, options: [New building, Extension, Garage or outbuilding, Window or facade change, Demolition, Dividing a property, Change of use] } - - { name: what_you_want_to_do, type: textarea } - - { name: enclosed, type: select, multiple: true, optional: true, options: [Site plan, Floor plans, Elevations, Section drawing, Neighbour notices sent, Statement from the owner] } - - { name: phone, type: tel, optional: true, private: true } - - { name: place, type: location, optional: true } - - - id: firm-application - who: An approved architect or engineering firm filing on behalf of an owner - wants: To file a building application for a client and see what is missing - door: firm - enters_as: approved_firms - requires: Your firm must be on our list of approved firms before it may file anything. - lands_in: applications - handled_by: case_officers - stages: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused, withdrawn] - done_when: [approved, approved_with_conditions, refused, withdrawn] - success: [approved, approved_with_conditions] - skippable: [papers_missing, papers_received] - reached_from: - papers_missing: [open, papers_received, complete, in_hearing] - refused: [recommended] - moves_by: - papers_received: [submitter] - approved: [head_of_section] - approved_with_conditions: [head_of_section] - refused: [head_of_section] - withdrawn: [submitter, case_officers] - watched_by: [public, front_desk, inspectors] - public_states: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused] - mails: - open: submitter - papers_missing: submitter - complete: submitter - in_hearing: submitter - approved: submitter - approved_with_conditions: submitter - refused: submitter - withdrawn: submitter - deadlines: { in_hearing: { days: 42, to: hearing_over } } - stages_text: - open: received - papers_missing: papers missing, clock stopped - papers_received: missing papers sent in - complete: complete, clock running - in_hearing: out to neighbours and agencies - hearing_over: hearing over - recommended: recommendation written - approved: approved - approved_with_conditions: approved with conditions - refused: refused - withdrawn: withdrawn - max_fields: 6 - collects: - - { name: name, private: true } - - { name: email, type: email, private: true } - - { name: property_address } - - { name: kind_of_work, type: select, options: [New building, Extension, Garage or outbuilding, Window or facade change, Demolition, Dividing a property, Change of use] } - - { name: what_you_want_to_do, type: textarea } - - { name: enclosed, type: select, multiple: true, options: [Site plan, Floor plans, Elevations, Section drawing, Neighbour notices sent, Statement from the owner] } - - { name: owner_name, optional: true, private: true } - - { name: phone, type: tel, optional: true, private: true } - - { name: place, type: location, optional: true } - - - id: exemption - who: An applicant whose plans break the zoning rules - wants: An exemption from the zoning rules, decided alongside their application - about: application - requires: An application with us; the exemption rides along with it and is asked for from its row on the list of cases. - lands_in: exemptions - handled_by: case_officers - stages: [open, county_asked, county_heard, granted, refused] - done_when: [granted, refused] - success: [granted] - moves_by: { granted: [head_of_section], refused: [head_of_section] } - watched_by: [front_desk] - mails: { open: submitter, county_asked: submitter, granted: submitter, refused: submitter } - deadlines: { county_asked: { days: 42, to: county_heard } } - stages_text: { open: received, county_asked: county asked, county_heard: county has answered or its deadline has passed, granted: granted, refused: refused } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: rule_it_breaks } - - { name: why_it_should_be_allowed, type: textarea } - - - id: objection - who: A neighbour who got a notice in the post and does not agree with what is planned next door - wants: To object to an application and have the objection answered in the decision - about: application - requires: The application must still be out for hearing; objections are taken until the six weeks are up. - lands_in: objections - handled_by: case_officers - stages: [open, registered, answered, addressed] - done_when: [addressed] - success: [addressed] - skippable: [answered] - moves_by: { registered: [front_desk, case_officers], answered: [approved_firms, case_officers] } - watched_by: [front_desk, head_of_section] - mails: { open: submitter, registered: owner, addressed: submitter } - stages_text: { open: received, registered: registered on the case, answered: answered by the applicant, addressed: addressed in the decision } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: your_property } - - { name: objection, type: textarea } - - { name: phone, type: tel, optional: true } - - - id: logged-objection - who: The front desk, when an objection comes in on paper or over the counter - wants: To put the objection on the right case straight away, instead of stapling it to a folder - enters_as: front_desk - lands_in: paper_objections - handled_by: case_officers - stages: [open, registered, answered, addressed] - done_when: [addressed] - success: [addressed] - skippable: [answered] - moves_by: { registered: [front_desk, case_officers], answered: [approved_firms, case_officers] } - watched_by: [front_desk, head_of_section] - stages_text: { open: received, registered: registered on the case, answered: answered by the applicant, addressed: addressed in the decision } - max_fields: 5 - collects: - - { name: application_reference } - - { name: name } - - { name: objection, type: textarea } - - { name: received_on, type: date } - - { name: your_property, optional: true } - - { name: phone, type: tel, optional: true } - - - id: hearing-request - who: A case officer who is obliged to ask another authority about an application - wants: To ask the road authority, the fire service, the heritage office or the county, and go on when the deadline has passed - enters_as: case_officers - lands_in: hearing_answers - handled_by: case_officers - stages: [open, answered, no_answer] - done_when: [answered, no_answer] - success: [answered] - moves_by: { answered: [agencies, case_officers] } - watched_by: [agencies, front_desk] - deadlines: { open: { days: 42, to: no_answer } } - stages_text: { open: asked, answered: answered, no_answer: deadline passed without an answer } - max_fields: 4 - collects: - - { name: application_reference } - - { name: agency, type: select, options: [Road authority, Fire service, Heritage office, County] } - - { name: what_we_ask, type: textarea } - - { name: answer_by, type: date, optional: true } - - - id: appeal - who: Anyone with an interest in a decision, the applicant or a neighbour - wants: To appeal a decision we have made - about: application - requires: A decision on the application, made no more than three weeks ago. - lands_in: appeals - handled_by: case_officers - stages: [open, under_review, decision_changed, sent_to_board, upheld, overturned, dismissed] - done_when: [decision_changed, upheld, overturned, dismissed] - success: [decision_changed, upheld, overturned] - turned_down_from: [open, under_review] - reached_from: { decision_changed: [under_review] } - moves_by: { decision_changed: [head_of_section], upheld: [appeals_board], overturned: [appeals_board] } - watched_by: [appeals_board, head_of_section, front_desk] - mails: { open: submitter, decision_changed: submitter, sent_to_board: submitter, upheld: submitter, overturned: submitter, dismissed: submitter } - stages_text: { open: received, under_review: we are going through it ourselves, decision_changed: we changed our own decision, sent_to_board: sent to the appeals board, upheld: decision upheld by the board, overturned: decision overturned by the board, dismissed: dismissed } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: your_interest, type: select, options: [I am the applicant, I am a neighbour, Other] } - - { name: grounds, type: textarea } - - { name: phone, type: tel, optional: true } - - - id: illegal-building-report - who: Someone who sees something going up behind their fence without permission - wants: To tell us, so that we go and look - lands_in: illegal_building - handled_by: case_officers - stages: [open, inspected, owner_written_to, explained, fined, applied_for, taken_down, nothing_illegal] - done_when: [applied_for, taken_down, nothing_illegal] - success: [applied_for, taken_down] - skippable: [fined] - turned_down_from: [open, inspected, explained] - moves_by: { inspected: [inspectors], fined: [head_of_section] } - watched_by: [front_desk, inspectors] - stages_text: { open: reported, inspected: we have been and looked, owner_written_to: owner written to, explained: owner has explained, fined: weekly fine running, applied_for: applied for properly, taken_down: taken down, nothing_illegal: nothing illegal found } - max_fields: 3 - collects: - - { name: where } - - { name: what_is_being_built, type: textarea } - - { name: place, type: location, optional: true } - - { name: name, optional: true, private: true } - - { name: phone, type: tel, optional: true, private: true } - - - id: logged-report - who: The front desk, when someone rings or comes in about building without permission - wants: To log the report so an inspector goes and looks - enters_as: front_desk - lands_in: illegal_building - handled_by: case_officers - stages: [open, inspected, owner_written_to, explained, fined, applied_for, taken_down, nothing_illegal] - done_when: [applied_for, taken_down, nothing_illegal] - success: [applied_for, taken_down] - skippable: [fined] - turned_down_from: [open, inspected, explained] - moves_by: { inspected: [inspectors], fined: [head_of_section] } - watched_by: [front_desk, inspectors] - stages_text: { open: reported, inspected: we have been and looked, owner_written_to: owner written to, explained: owner has explained, fined: weekly fine running, applied_for: applied for properly, taken_down: taken down, nothing_illegal: nothing illegal found } - max_fields: 3 - collects: - - { name: where } - - { name: what_is_being_built, type: textarea } - - { name: place, type: location, optional: true } - - { name: name, optional: true, private: true } - - { name: phone, type: tel, optional: true, private: true } - - - id: inspection - who: An inspector on site, writing on a phone in a cold wind - wants: To write up what was found on a case and set a date for what must be put right - enters_as: inspectors - lands_in: inspections - handled_by: inspectors - stages: [open, to_put_right, as_approved] - done_when: [as_approved] - success: [as_approved] - skippable: [to_put_right] - watched_by: [case_officers, head_of_section] - stages_text: { open: inspected, to_put_right: to be put right, then we go back, as_approved: as approved } - max_fields: 3 - collects: - - { name: application_reference } - - { name: finding, type: select, options: [As approved, Something is wrong] } - - { name: what_is_wrong, type: textarea, optional: true } - - { name: put_right_by, type: date, optional: true } - - { name: place, type: location, optional: true } - - - id: completion-certificate - who: An approved firm whose work on a case is done - wants: A completion certificate for the finished work - door: firm - enters_as: approved_firms - requires: Your firm must be on our list of approved firms, and the application must be approved; have its reference ready. - lands_in: completion_certificates - handled_by: case_officers - stages: [open, checked, issued, refused] - done_when: [issued, refused] - success: [issued] - moves_by: { issued: [head_of_section], refused: [head_of_section] } - watched_by: [inspectors, front_desk] - mails: { open: submitter, issued: submitter, refused: submitter } - stages_text: { open: asked for, checked: inspections and outstanding work checked, issued: certificate signed, refused: refused } - max_fields: 5 - collects: - - { name: name } - - { name: email, type: email } - - { name: application_reference } - - { name: finished_on, type: date } - - { name: what_was_built, type: textarea, optional: true } - - { name: still_outstanding, type: textarea, optional: true } - - - id: temporary-permission - who: An approved firm whose client wants to move in before everything is done - wants: A temporary permission to use the building - door: firm - enters_as: approved_firms - requires: Your firm must be on our list of approved firms, and the application must be approved; have its reference ready. - lands_in: temporary_permissions - handled_by: case_officers - stages: [open, checked, issued, refused] - done_when: [issued, refused] - success: [issued] - moves_by: { issued: [head_of_section], refused: [head_of_section] } - watched_by: [inspectors, front_desk] - mails: { open: submitter, issued: submitter, refused: submitter } - stages_text: { open: asked for, checked: inspections and outstanding work checked, issued: temporary permission signed, refused: refused } - max_fields: 6 - collects: - - { name: name } - - { name: email, type: email } - - { name: application_reference } - - { name: move_in_on, type: date } - - { name: still_outstanding, type: textarea } - - { name: finished_by, type: date, optional: true } - - - id: firm-approval - who: An architect or engineering firm that wants to file applications for owners - wants: To be approved by us and put on the list of firms that may file - door: firm - lands_in: approved_firm_requests - handled_by: case_officers - stages: [open, checked, listed, refused] - done_when: [listed, refused] - success: [listed] - moves_by: { listed: [head_of_section], refused: [head_of_section] } - watched_by: [public, front_desk] - public_states: [listed] - mails: { open: submitter, listed: submitter, refused: submitter } - grants: { listed: approved_firms } - stages_text: { open: received, checked: registration, insurance and qualifications checked, listed: on the list, refused: refused } - max_fields: 6 - collects: - - { name: firm } - - { name: name, private: true } - - { name: email, type: email, private: true } - - { name: registration_number } - - { name: insurance, private: true } - - { name: qualified_for, type: select, multiple: true, options: [Applying on behalf of owners, Architectural design, Structural engineering, Fire safety design, Geotechnical engineering, Carrying out the work, Independent control] } - - { name: phone, type: tel, optional: true, private: true } diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/llm/03-prompt.md b/vendor/trainer/runs/permits-plan-2026-09-30/llm/03-prompt.md deleted file mode 100644 index d1c8972..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/llm/03-prompt.md +++ /dev/null @@ -1,716 +0,0 @@ -# plan.yaml - -A plan is a needs spec that also says what each form collects. A -builder turns it into a working site with no further decisions, so -every structural fact about the business has to be in it. - -```yaml -business: -language: en # the intake's language code -contact: { name: , email: } -about: > - What the business does, in its own words. -mail: { from: " ", reply_to: } - # who every mail the site sends comes from; required as soon - # as any need has `mails` - -does: # the front door's first card: what the business does, one - - id: kebab-case # or two features, one role each, no button. Say it for the - for: # role the business exists for and the next one it serves. - text: what it does for them, in the intake's own words - -shows: # what the site shows as it is: a live figure, the latest - - id: kebab-case # releases, what has been built; `resource` is portal's block - text: one line on what it is - resource: { public: true, source: { kind: url, url: https://... } } - -doors: # a first question before the forms, only when the offers - - id: kebab-case # are more than one page holds (measured: four doors beat - who: who comes through it # ten offers on one page; six offers on one page beat doors) - -groups: # groups with a label the public may see: the committees - - { id: traffic, label: Traffic, invited_by: [board] } # a person can ask to join (optional; label defaults to the id) -invites_by: [board] # groups whose desk may invite people into every desk - -needs: - - id: kebab-case # ASCII only - who: the kind of person, in plain words, in the intake's language - wants: what they want from the business - door: # the door this public need sits behind; omit to put it on the front door - enters_as: # ONLY for a role inside the business; omit for the public - lands_in: # snake_case, ASCII - handled_by: # the role that must see and move the record - stages: [open, , ..., , ] - # EVERY stage the business said a case goes through, first to - # last, read off their own sentences one verb at a time: "they - # come in, we go and look, we send a quote, we win or lose it" - # is [open, surveyed, quoted, won, lost]. A pipeline is not an - # inbox: "answered" is rarely the real outcome. - done_when: [, ] # every stage that counts as finished, good or bad - success: [] # the finished stages that are a good outcome for the business - skippable: [] # stages a case may pass over (papers already complete) - requires: # what the person must ALREADY have or be for this to work: - # a membership, a reference number, the link from a mail, an - # account. Stated on the card above the form. Omit when there - # is none; never invent one - turned_down_from: [open, ] - # the unfinished stages a case can still be turned down from; - # omit for every one. An applicant is declined before they - # start, not after - after, they depart - reached_from: { : [, ...] } - # where a stage is entered from, when the line does not say it. - # Two things need it and nothing else does: a case SENT BACK to - # a stage it was already past ("papers missing" again, after the - # hearing turned something up), and a GOOD ENDING partway along, - # where a case finishes well without walking to the end ("we - # changed our own decision", instead of passing it upwards). - # A stage named here is entered from exactly those stages and - # nowhere else, so it also says where a refusal may NOT come - # from. Omit unless the business described one of those two - moves_by: { : [, ...] } - # only where someone other than handled_by moves a case INTO a - # stage: another group, or `submitter` (the person who sent the - # form; the form must then collect a required `email`) - watched_by: [] # groups that see these cases and move nothing; `public` opens a - # read-only page of the bucket to everyone (contact details hidden) - mails: { open: submitter, : submitter, :
} - # who hears when a case enters a stage: `submitter` (the form - # must then collect a required `email`) or one address. Tell the - # person on arrival and on every decision that is about them. - grants: { : } - # a stage that makes the person a member of a group when their - # case arrives (an approval that IS membership); the form must - # then collect a required `name` and a required `email` - deadlines: { : { days: 30, to: } } - # a stage a clock moves on from when a case sits in it that long - # (a notice that expires, a hearing with no answer); only along - # a move the stages already allow - public_states: [] # with `public` in watched_by: the stages the public list shows - # (a noticeboard shows what is up, not what was taken down) - stages_text: { open: , : } - # each stage in the intake's language, where the ASCII id - # would read wrong to a person: "ikke_lost" is "ikke løst" - events: { open: applied } # ONLY when rebuilding a live site: the event names its - # aggregates.yaml already has, so its records keep replaying - attended_by: > # ONLY for a stage no desk button moves: the automation that does - what moves it, in a sentence - max_fields: 4 # decide this BEFORE writing collects, from what the intake - # says about the person; a budget that equals the form's size - # is counted, not decided, and is reported as such - # how many required fields THIS person will tolerate, from what - # the intake says about them: someone on a phone with gloves - # on gets 3, a first enquiry 4 to 6, a firm's paperwork 5 to 6 - collects: # the form; name is snake_case ASCII, type one of - # text (default), email, tel, textarea, date, select, location - # (a pin on a map, stored as lat/lon/zoom; optional: true, - # since a map needs a browser that can draw one) - - { name: name } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - { name: urgency, type: select, options: [This week, This month, No rush] } - - { name: can_do, type: select, multiple: true, options: [Drive, Cook, Carry] } # any number - - { name: committee, type: select, options_from: groups } # the labelled groups above - - { name: address, optional: true, private: true } # never on a public page -``` - -What a portal site can do - use what serves this business, leave the -rest. Each is one line in the plan, and the builder does the wiring: - -- **Show, not only ask.** A bucket with `watched_by: [public]` becomes - a public list: its newest few records sit inline on the front door, - linked to the whole list, contact details pruned. What neighbours - reported and where it stands, which changes were approved, what is - on the noticeboard: a visitor who sees the place working trusts it, - and a person who reported something sees it being dealt with. - `public_states` shows only the stages worth showing. -- **Stay in dialogue.** `mails` tells the person at the stages that - are about them, and a reply to that mail comes back to the case as - a note. `moves_by: { : [submitter] }` gives them a move of - their own through their link: confirm, withdraw, say it is solved. -- **Let a decision do the work.** `grants` makes an approval into - membership: the person gets an account and a place in the group the - moment the case gets there; `deadlines` lets a stage end on its own - (a notice that expires, a request nobody took up); `invites_by` lets - a desk bring a person in without anyone touching an admin tool. -- **Let one record answer another.** A need `about` another need is - one answer per record of it, from that record's own row on the - public list: a neighbour saying "I can lend you that" to a notice, a - bid to a request. `mails: { open: owner }` sends the answer straight - to whoever posted the record, and the site keeps no queue - the - poster's inbox is the queue. The site never becomes a go-between. -- **Keep some things for members.** A need with `door` and `enters_as` - is offered to everyone on the door and taken on the group's page - behind sign-in, with name and address filled from the account: a - seat on a committee for members, a discount for customers. The - group is one a decision `grants`, so nobody has to be waved in. -- **Answer for the pages as a group.** `contact: { name, email, group }` - makes the contact a group's inbox rather than a person: no account - is made for it, and every member of the group may suggest changes - to the pages from the page itself. -- **Make the choices real.** `groups` with labels, and a select with - `options_from: groups`, so a form offers exactly the committees or - teams that exist; `multiple: true` where a person can pick several. -- **Place things.** A `location` field puts a pin on a map (where the - hazard is, where the job is), when the site has maps. -- **Open with the business itself.** `does` says what it does for the - roles it exists for; `shows` puts its live content beside that. - -Rules: -- One need per (kind of person, thing they want). Work inside the - business counts: a role recording or posting something is a need - with `enters_as`. The intake's "what slows us down" usually names one. -- Groups are the roles the intake names, as snake_case identifiers. -- The front door opens with `does` (at most two features, one role - each) and `shows`, then holds at most seven offers: doors plus needs - with no door. A door with no need behind it is refused; a door on a - need with `enters_as` is the way to the members' page. A role `does` - speaks for must have a move - of its own after sending (`moves_by` with `submitter`) or a public - view, or it is a spectator. -- Every need whose form collects an email should tell the person on - arrival and on the decisions about them (`mails`); the plan then - needs `mail: { from }`. -- Every feature on a card explains itself: a list says what one row is - and what its buttons do, a form says what to have ready. If an - alternative only works for someone who already has something, say so - in `requires` - a condition the reader meets only after filling the - form in has already cost them the filling in. -- Needs that land in the same bucket must have the same stages, - done_when, skippable, moves_by, watched_by and handled_by. -- Every required field is one the business will use to act on the - record. If the intake gives no reason to need it, make it optional or - leave it out. The required fields must not exceed max_fields. -- Only `select` lists `options`, and it must list them. -- Everything a person reads (who, wants, about, select options) is in - the intake's language. Everything a machine reads (ids, buckets, - groups, stages, field names) is plain ASCII: no æ, ø, å. -- Write no personas. - - -# Task - -A business filled in this intake. Write its plan.yaml: every need the intake implies, for the public and for each role inside the business, with the stages read off how the business says things progress, the form each need collects, and how much each person will tolerate. - -## Intake - -# A building authority's intake: the hardest sector the trainer has -# been given. Cases that pause and resume, cases that belong to other -# cases, a decision two roles sign, a deadline nobody in the building -# controls, and an appeal that reopens something already finished. -# Written the way the department head would write it, in plain words. -business: Vestmark kommune - Building and Planning -contact: { name: Solveig Hauge, email: byggesak@vestmark.example } -language: en - -what_we_do: > - We are the building authority for a municipality of twenty-one - thousand people. Anyone who wants to build, demolish, divide a - property or change what a building is used for has to come to us - first. We check the drawings against the zoning map and the building - regulations, we let the neighbours and the other authorities have - their say, and then we approve or refuse. We also decide exemptions - from the zoning rules, we inspect what is actually built, we sign off - finished work, and we deal with building that was never applied for. - -who_comes_to_us: > - Homeowners who want a garage, an extension or a new window, and who - have never read a regulation in their life. Architects and - engineering firms who file on behalf of owners; they have to be - approved by us before they may file anything. Neighbours who got a - notice in the post and do not agree with what is planned next door. - The other authorities we are obliged to ask: the road authority, the - fire service, the heritage office, the county. People who ring to say - something is going up behind their fence without permission. And - anyone who wants to sit down with us before they spend eighty - thousand on drawings. - -what_we_keep_track_of: > - Pre-application meetings: someone asks for one, we find a time, we - meet, and we write down what we told them so they can hold us to it. - Applications: they arrive, someone checks whether the papers are all - there, and if something is missing we write and ask for it, and the - twelve-week clock stops until they answer. Often we have to ask - twice. When it is complete we send it out to the neighbours and to - the agencies and wait six weeks. Then a case officer writes a - recommendation, and the head of section signs the decision: approved, - approved with conditions, or refused. People can withdraw at any - point, and quite a few do once they hear from the neighbours. - Exemptions: if what someone wants breaks the zoning rules they can - ask for an exemption. It rides along with the application but it is a - decision of its own, and we are not allowed to grant one before the - county has been asked. - Objections: a neighbour who got a notice writes to us within the - hearing period. Each objection belongs to an application. We register - it, the applicant gets to answer it, and the case officer has to - address every single one in the decision, by name. - Hearing answers: we ask an agency, they answer, or they do not, and - when the deadline has passed we go on without them. - Appeals: for three weeks after a decision anyone with an interest can - appeal it. We go through it ourselves first, and if we change our own - mind that is the end of it. If we do not, it goes to the appeals - board, who meet once a month and either uphold us or overturn us. - Inspections: we pick cases and go and look, on site. Either it is as - approved, or we write up what is wrong and set a date for it to be - put right, and then we go back. - Finishing: when the work is done the firm asks for a completion - certificate. If they want to move in before everything is done they - can ask for a temporary permission instead. We check what was - inspected and what is still outstanding before we sign anything. - Illegal building: someone reports it, we go and look, we write to the - owner and they have to explain themselves, and then they either apply - for it properly, take it down, or we fine them weekly until they do. - Approved firms: a firm sends us their registration, their insurance - and what they are qualified for, we check it, and then they are on - the list and may file applications. - -who_is_involved: > - The front desk logs what comes in over the counter and on the phone, - and keeps the archive. Four case officers carry the cases. The head - of section signs every decision and every exemption; a case officer - may not sign their own. Two inspectors are out on site most of the - week and write up what they find on a phone in a cold wind. The - appeals board is seven elected politicians who meet on the third - Tuesday of the month and read what we send them. The agencies are - outside the building altogether and only ever answer hearings. The - approved firms file applications and answer objections on behalf of - their clients. - -what_slows_us_down: > - The twelve-week clock, and the fact that stopping it and starting it - again is done by hand in a spreadsheet. Applications that arrive - missing half the drawings. Objections that come in on paper and get - stapled to the wrong case. Neighbours ringing to ask what is - happening with the case behind their house, which we are obliged to - tell them and which takes ten minutes every time. Agencies that never - answer at all. And nobody outside this building can see a case - without asking us for it. - - -## Your last attempt was refused - -need "inspection": stages_text names "then we go back", which is not one of its stages - -Fix that and return the whole plan again. - -```yaml -business: Vestmark kommune - Building and Planning -language: en -contact: { name: Solveig Hauge, email: byggesak@vestmark.example } -about: > - We are the building authority for a municipality of twenty-one - thousand people. Anyone who wants to build, demolish, divide a - property or change what a building is used for has to come to us - first. We check the drawings against the zoning map and the building - regulations, we let the neighbours and the other authorities have - their say, and then we approve or refuse. We also decide exemptions - from the zoning rules, we inspect what is actually built, we sign off - finished work, and we deal with building that was never applied for. -mail: { from: "Vestmark kommune Building and Planning ", reply_to: byggesak@vestmark.example } - -does: - - id: check-and-decide - for: application - text: > - We check your drawings against the zoning map and the building - regulations, let the neighbours and the other authorities have - their say, and then approve or refuse. Every case is on the list - here, so you and your neighbours can follow it the whole way, - and object to it or appeal it from its own row. - - id: firms-file-here - for: firm-application - text: > - Approved firms file applications for their clients here, see what - is missing and ask for the completion certificate when the work is done. - -doors: - - id: build - who: You want to build, demolish, divide a property or change what a building is used for - - id: firm - who: You are an architect or an engineering firm filing on behalf of owners - -invites_by: [head_of_section] - -needs: - - id: pre-application-meeting - who: Anyone who wants to sit down with us before they spend money on drawings - wants: A meeting with a case officer, and a written note of what we told them - door: build - lands_in: pre_application_meetings - handled_by: case_officers - stages: [open, scheduled, met, written_up, cancelled] - done_when: [written_up, cancelled] - success: [written_up] - turned_down_from: [open, scheduled] - moves_by: { cancelled: [submitter, case_officers] } - watched_by: [front_desk] - mails: { open: submitter, scheduled: submitter, written_up: submitter, cancelled: submitter } - stages_text: { open: asked for, scheduled: time found, met: meeting held, written_up: written down and sent, cancelled: cancelled } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: property_address } - - { name: what_you_plan, type: textarea } - - { name: phone, type: tel, optional: true } - - { name: place, type: location, optional: true } - - - id: application - who: A homeowner who wants a garage, an extension, a new window or another change to their property - wants: Permission to build, demolish, divide a property or change what a building is used for - door: build - lands_in: applications - handled_by: case_officers - stages: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused, withdrawn] - done_when: [approved, approved_with_conditions, refused, withdrawn] - success: [approved, approved_with_conditions] - skippable: [papers_missing, papers_received] - reached_from: - papers_missing: [open, papers_received, complete, in_hearing] - refused: [recommended] - moves_by: - papers_received: [submitter] - approved: [head_of_section] - approved_with_conditions: [head_of_section] - refused: [head_of_section] - withdrawn: [submitter, case_officers] - watched_by: [public, front_desk, inspectors] - public_states: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused] - mails: - open: submitter - papers_missing: submitter - complete: submitter - in_hearing: submitter - approved: submitter - approved_with_conditions: submitter - refused: submitter - withdrawn: submitter - deadlines: { in_hearing: { days: 42, to: hearing_over } } - stages_text: - open: received - papers_missing: papers missing, clock stopped - papers_received: missing papers sent in - complete: complete, clock running - in_hearing: out to neighbours and agencies - hearing_over: hearing over - recommended: recommendation written - approved: approved - approved_with_conditions: approved with conditions - refused: refused - withdrawn: withdrawn - max_fields: 5 - collects: - - { name: name, private: true } - - { name: email, type: email, private: true } - - { name: property_address } - - { name: kind_of_work, type: select, options: [New building, Extension, Garage or outbuilding, Window or facade change, Demolition, Dividing a property, Change of use] } - - { name: what_you_want_to_do, type: textarea } - - { name: enclosed, type: select, multiple: true, optional: true, options: [Site plan, Floor plans, Elevations, Section drawing, Neighbour notices sent, Statement from the owner] } - - { name: phone, type: tel, optional: true, private: true } - - { name: place, type: location, optional: true } - - - id: firm-application - who: An approved architect or engineering firm filing on behalf of an owner - wants: To file a building application for a client and see what is missing - door: firm - enters_as: approved_firms - requires: Your firm must be on our list of approved firms before it may file anything. - lands_in: applications - handled_by: case_officers - stages: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused, withdrawn] - done_when: [approved, approved_with_conditions, refused, withdrawn] - success: [approved, approved_with_conditions] - skippable: [papers_missing, papers_received] - reached_from: - papers_missing: [open, papers_received, complete, in_hearing] - refused: [recommended] - moves_by: - papers_received: [submitter] - approved: [head_of_section] - approved_with_conditions: [head_of_section] - refused: [head_of_section] - withdrawn: [submitter, case_officers] - watched_by: [public, front_desk, inspectors] - public_states: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused] - mails: - open: submitter - papers_missing: submitter - complete: submitter - in_hearing: submitter - approved: submitter - approved_with_conditions: submitter - refused: submitter - withdrawn: submitter - deadlines: { in_hearing: { days: 42, to: hearing_over } } - stages_text: - open: received - papers_missing: papers missing, clock stopped - papers_received: missing papers sent in - complete: complete, clock running - in_hearing: out to neighbours and agencies - hearing_over: hearing over - recommended: recommendation written - approved: approved - approved_with_conditions: approved with conditions - refused: refused - withdrawn: withdrawn - max_fields: 6 - collects: - - { name: name, private: true } - - { name: email, type: email, private: true } - - { name: property_address } - - { name: kind_of_work, type: select, options: [New building, Extension, Garage or outbuilding, Window or facade change, Demolition, Dividing a property, Change of use] } - - { name: what_you_want_to_do, type: textarea } - - { name: enclosed, type: select, multiple: true, options: [Site plan, Floor plans, Elevations, Section drawing, Neighbour notices sent, Statement from the owner] } - - { name: owner_name, optional: true, private: true } - - { name: phone, type: tel, optional: true, private: true } - - { name: place, type: location, optional: true } - - - id: exemption - who: An applicant whose plans break the zoning rules - wants: An exemption from the zoning rules, decided alongside their application - about: application - requires: An application with us; the exemption rides along with it and is asked for from its row on the list of cases. - lands_in: exemptions - handled_by: case_officers - stages: [open, county_asked, county_heard, granted, refused] - done_when: [granted, refused] - success: [granted] - moves_by: { granted: [head_of_section], refused: [head_of_section] } - watched_by: [front_desk] - mails: { open: submitter, county_asked: submitter, granted: submitter, refused: submitter } - deadlines: { county_asked: { days: 42, to: county_heard } } - stages_text: { open: received, county_asked: county asked, county_heard: county has answered or its deadline has passed, granted: granted, refused: refused } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: rule_it_breaks } - - { name: why_it_should_be_allowed, type: textarea } - - - id: objection - who: A neighbour who got a notice in the post and does not agree with what is planned next door - wants: To object to an application and have the objection answered in the decision - about: application - requires: The application must still be out for hearing; objections are taken until the six weeks are up. - lands_in: objections - handled_by: case_officers - stages: [open, registered, answered, addressed] - done_when: [addressed] - success: [addressed] - skippable: [answered] - moves_by: { registered: [front_desk, case_officers], answered: [approved_firms, case_officers] } - watched_by: [front_desk, head_of_section] - mails: { open: submitter, registered: owner, addressed: submitter } - stages_text: { open: received, registered: registered on the case, answered: answered by the applicant, addressed: addressed in the decision } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: your_property } - - { name: objection, type: textarea } - - { name: phone, type: tel, optional: true } - - - id: logged-objection - who: The front desk, when an objection comes in on paper or over the counter - wants: To put the objection on the right case straight away, instead of stapling it to a folder - enters_as: front_desk - lands_in: paper_objections - handled_by: case_officers - stages: [open, registered, answered, addressed] - done_when: [addressed] - success: [addressed] - skippable: [answered] - moves_by: { registered: [front_desk, case_officers], answered: [approved_firms, case_officers] } - watched_by: [front_desk, head_of_section] - stages_text: { open: received, registered: registered on the case, answered: answered by the applicant, addressed: addressed in the decision } - max_fields: 5 - collects: - - { name: application_reference } - - { name: name } - - { name: objection, type: textarea } - - { name: received_on, type: date } - - { name: your_property, optional: true } - - { name: phone, type: tel, optional: true } - - - id: hearing-request - who: A case officer who is obliged to ask another authority about an application - wants: To ask the road authority, the fire service, the heritage office or the county, and go on when the deadline has passed - enters_as: case_officers - lands_in: hearing_answers - handled_by: case_officers - stages: [open, answered, no_answer] - done_when: [answered, no_answer] - success: [answered] - moves_by: { answered: [agencies, case_officers] } - watched_by: [agencies, front_desk] - deadlines: { open: { days: 42, to: no_answer } } - stages_text: { open: asked, answered: answered, no_answer: deadline passed without an answer } - max_fields: 4 - collects: - - { name: application_reference } - - { name: agency, type: select, options: [Road authority, Fire service, Heritage office, County] } - - { name: what_we_ask, type: textarea } - - { name: answer_by, type: date, optional: true } - - - id: appeal - who: Anyone with an interest in a decision, the applicant or a neighbour - wants: To appeal a decision we have made - about: application - requires: A decision on the application, made no more than three weeks ago. - lands_in: appeals - handled_by: case_officers - stages: [open, under_review, decision_changed, sent_to_board, upheld, overturned, dismissed] - done_when: [decision_changed, upheld, overturned, dismissed] - success: [decision_changed, upheld, overturned] - turned_down_from: [open, under_review] - reached_from: { decision_changed: [under_review] } - moves_by: { decision_changed: [head_of_section], upheld: [appeals_board], overturned: [appeals_board] } - watched_by: [appeals_board, head_of_section, front_desk] - mails: { open: submitter, decision_changed: submitter, sent_to_board: submitter, upheld: submitter, overturned: submitter, dismissed: submitter } - stages_text: { open: received, under_review: we are going through it ourselves, decision_changed: we changed our own decision, sent_to_board: sent to the appeals board, upheld: decision upheld by the board, overturned: decision overturned by the board, dismissed: dismissed } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: your_interest, type: select, options: [I am the applicant, I am a neighbour, Other] } - - { name: grounds, type: textarea } - - { name: phone, type: tel, optional: true } - - - id: illegal-building-report - who: Someone who sees something going up behind their fence without permission - wants: To tell us, so that we go and look - lands_in: illegal_building - handled_by: case_officers - stages: [open, inspected, owner_written_to, explained, fined, applied_for, taken_down, nothing_illegal] - done_when: [applied_for, taken_down, nothing_illegal] - success: [applied_for, taken_down] - skippable: [fined] - turned_down_from: [open, inspected, explained] - moves_by: { inspected: [inspectors], fined: [head_of_section] } - watched_by: [front_desk, inspectors] - stages_text: { open: reported, inspected: we have been and looked, owner_written_to: owner written to, explained: owner has explained, fined: weekly fine running, applied_for: applied for properly, taken_down: taken down, nothing_illegal: nothing illegal found } - max_fields: 3 - collects: - - { name: where } - - { name: what_is_being_built, type: textarea } - - { name: place, type: location, optional: true } - - { name: name, optional: true, private: true } - - { name: phone, type: tel, optional: true, private: true } - - - id: logged-report - who: The front desk, when someone rings or comes in about building without permission - wants: To log the report so an inspector goes and looks - enters_as: front_desk - lands_in: illegal_building - handled_by: case_officers - stages: [open, inspected, owner_written_to, explained, fined, applied_for, taken_down, nothing_illegal] - done_when: [applied_for, taken_down, nothing_illegal] - success: [applied_for, taken_down] - skippable: [fined] - turned_down_from: [open, inspected, explained] - moves_by: { inspected: [inspectors], fined: [head_of_section] } - watched_by: [front_desk, inspectors] - stages_text: { open: reported, inspected: we have been and looked, owner_written_to: owner written to, explained: owner has explained, fined: weekly fine running, applied_for: applied for properly, taken_down: taken down, nothing_illegal: nothing illegal found } - max_fields: 3 - collects: - - { name: where } - - { name: what_is_being_built, type: textarea } - - { name: place, type: location, optional: true } - - { name: name, optional: true, private: true } - - { name: phone, type: tel, optional: true, private: true } - - - id: inspection - who: An inspector on site, writing on a phone in a cold wind - wants: To write up what was found on a case and set a date for what must be put right - enters_as: inspectors - lands_in: inspections - handled_by: inspectors - stages: [open, to_put_right, as_approved] - done_when: [as_approved] - success: [as_approved] - skippable: [to_put_right] - watched_by: [case_officers, head_of_section] - stages_text: { open: inspected, to_put_right: to be put right, then we go back, as_approved: as approved } - max_fields: 3 - collects: - - { name: application_reference } - - { name: finding, type: select, options: [As approved, Something is wrong] } - - { name: what_is_wrong, type: textarea, optional: true } - - { name: put_right_by, type: date, optional: true } - - { name: place, type: location, optional: true } - - - id: completion-certificate - who: An approved firm whose work on a case is done - wants: A completion certificate for the finished work - door: firm - enters_as: approved_firms - requires: Your firm must be on our list of approved firms, and the application must be approved; have its reference ready. - lands_in: completion_certificates - handled_by: case_officers - stages: [open, checked, issued, refused] - done_when: [issued, refused] - success: [issued] - moves_by: { issued: [head_of_section], refused: [head_of_section] } - watched_by: [inspectors, front_desk] - mails: { open: submitter, issued: submitter, refused: submitter } - stages_text: { open: asked for, checked: inspections and outstanding work checked, issued: certificate signed, refused: refused } - max_fields: 5 - collects: - - { name: name } - - { name: email, type: email } - - { name: application_reference } - - { name: finished_on, type: date } - - { name: what_was_built, type: textarea, optional: true } - - { name: still_outstanding, type: textarea, optional: true } - - - id: temporary-permission - who: An approved firm whose client wants to move in before everything is done - wants: A temporary permission to use the building - door: firm - enters_as: approved_firms - requires: Your firm must be on our list of approved firms, and the application must be approved; have its reference ready. - lands_in: temporary_permissions - handled_by: case_officers - stages: [open, checked, issued, refused] - done_when: [issued, refused] - success: [issued] - moves_by: { issued: [head_of_section], refused: [head_of_section] } - watched_by: [inspectors, front_desk] - mails: { open: submitter, issued: submitter, refused: submitter } - stages_text: { open: asked for, checked: inspections and outstanding work checked, issued: temporary permission signed, refused: refused } - max_fields: 6 - collects: - - { name: name } - - { name: email, type: email } - - { name: application_reference } - - { name: move_in_on, type: date } - - { name: still_outstanding, type: textarea } - - { name: finished_by, type: date, optional: true } - - - id: firm-approval - who: An architect or engineering firm that wants to file applications for owners - wants: To be approved by us and put on the list of firms that may file - door: firm - lands_in: approved_firm_requests - handled_by: case_officers - stages: [open, checked, listed, refused] - done_when: [listed, refused] - success: [listed] - moves_by: { listed: [head_of_section], refused: [head_of_section] } - watched_by: [public, front_desk] - public_states: [listed] - mails: { open: submitter, listed: submitter, refused: submitter } - grants: { listed: approved_firms } - stages_text: { open: received, checked: registration, insurance and qualifications checked, listed: on the list, refused: refused } - max_fields: 6 - collects: - - { name: firm } - - { name: name, private: true } - - { name: email, type: email, private: true } - - { name: registration_number } - - { name: insurance, private: true } - - { name: qualified_for, type: select, multiple: true, options: [Applying on behalf of owners, Architectural design, Structural engineering, Fire safety design, Geotechnical engineering, Carrying out the work, Independent control] } - - { name: phone, type: tel, optional: true, private: true } -``` - -Reply with the YAML only, no prose, no code fences. \ No newline at end of file diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/llm/03-reply.md b/vendor/trainer/runs/permits-plan-2026-09-30/llm/03-reply.md deleted file mode 100644 index e674c9f..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/llm/03-reply.md +++ /dev/null @@ -1,477 +0,0 @@ -business: Vestmark kommune - Building and Planning -language: en -contact: { name: Solveig Hauge, email: byggesak@vestmark.example } -about: > - We are the building authority for a municipality of twenty-one - thousand people. Anyone who wants to build, demolish, divide a - property or change what a building is used for has to come to us - first. We check the drawings against the zoning map and the building - regulations, we let the neighbours and the other authorities have - their say, and then we approve or refuse. We also decide exemptions - from the zoning rules, we inspect what is actually built, we sign off - finished work, and we deal with building that was never applied for. -mail: { from: "Vestmark kommune Building and Planning ", reply_to: byggesak@vestmark.example } - -does: - - id: check-and-decide - for: application - text: > - We check your drawings against the zoning map and the building - regulations, let the neighbours and the other authorities have - their say, and then approve or refuse. Every case is on the list - here, so you and your neighbours can follow it the whole way, - and object to it or appeal it from its own row. - - id: firms-file-here - for: firm-application - text: > - Approved firms file applications for their clients here, see what - is missing and ask for the completion certificate when the work is done. - -doors: - - id: build - who: You want to build, demolish, divide a property or change what a building is used for - - id: firm - who: You are an architect or an engineering firm filing on behalf of owners - -invites_by: [head_of_section] - -needs: - - id: pre-application-meeting - who: Anyone who wants to sit down with us before they spend money on drawings - wants: A meeting with a case officer, and a written note of what we told them - door: build - lands_in: pre_application_meetings - handled_by: case_officers - stages: [open, scheduled, met, written_up, cancelled] - done_when: [written_up, cancelled] - success: [written_up] - turned_down_from: [open, scheduled] - moves_by: { cancelled: [submitter, case_officers] } - watched_by: [front_desk] - mails: { open: submitter, scheduled: submitter, written_up: submitter, cancelled: submitter } - stages_text: - open: asked for - scheduled: time found - met: meeting held - written_up: written down and sent - cancelled: cancelled - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: property_address } - - { name: what_you_plan, type: textarea } - - { name: phone, type: tel, optional: true } - - { name: place, type: location, optional: true } - - - id: application - who: A homeowner who wants a garage, an extension, a new window or another change to their property - wants: Permission to build, demolish, divide a property or change what a building is used for - door: build - lands_in: applications - handled_by: case_officers - stages: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused, withdrawn] - done_when: [approved, approved_with_conditions, refused, withdrawn] - success: [approved, approved_with_conditions] - skippable: [papers_missing, papers_received] - reached_from: - papers_missing: [open, papers_received, complete, in_hearing] - refused: [recommended] - moves_by: - papers_received: [submitter] - approved: [head_of_section] - approved_with_conditions: [head_of_section] - refused: [head_of_section] - withdrawn: [submitter, case_officers] - watched_by: [public, front_desk, inspectors] - public_states: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused] - mails: - open: submitter - papers_missing: submitter - complete: submitter - in_hearing: submitter - approved: submitter - approved_with_conditions: submitter - refused: submitter - withdrawn: submitter - deadlines: { in_hearing: { days: 42, to: hearing_over } } - stages_text: - open: received - papers_missing: "papers missing, clock stopped" - papers_received: missing papers sent in - complete: "complete, clock running" - in_hearing: out to neighbours and agencies - hearing_over: hearing over - recommended: recommendation written - approved: approved - approved_with_conditions: approved with conditions - refused: refused - withdrawn: withdrawn - max_fields: 5 - collects: - - { name: name, private: true } - - { name: email, type: email, private: true } - - { name: property_address } - - { name: kind_of_work, type: select, options: [New building, Extension, Garage or outbuilding, Window or facade change, Demolition, Dividing a property, Change of use] } - - { name: what_you_want_to_do, type: textarea } - - { name: enclosed, type: select, multiple: true, optional: true, options: [Site plan, Floor plans, Elevations, Section drawing, Neighbour notices sent, Statement from the owner] } - - { name: phone, type: tel, optional: true, private: true } - - { name: place, type: location, optional: true } - - - id: firm-application - who: An approved architect or engineering firm filing on behalf of an owner - wants: To file a building application for a client and see what is missing - door: firm - enters_as: approved_firms - requires: Your firm must be on our list of approved firms before it may file anything. - lands_in: applications - handled_by: case_officers - stages: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused, withdrawn] - done_when: [approved, approved_with_conditions, refused, withdrawn] - success: [approved, approved_with_conditions] - skippable: [papers_missing, papers_received] - reached_from: - papers_missing: [open, papers_received, complete, in_hearing] - refused: [recommended] - moves_by: - papers_received: [submitter] - approved: [head_of_section] - approved_with_conditions: [head_of_section] - refused: [head_of_section] - withdrawn: [submitter, case_officers] - watched_by: [public, front_desk, inspectors] - public_states: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused] - mails: - open: submitter - papers_missing: submitter - complete: submitter - in_hearing: submitter - approved: submitter - approved_with_conditions: submitter - refused: submitter - withdrawn: submitter - deadlines: { in_hearing: { days: 42, to: hearing_over } } - stages_text: - open: received - papers_missing: "papers missing, clock stopped" - papers_received: missing papers sent in - complete: "complete, clock running" - in_hearing: out to neighbours and agencies - hearing_over: hearing over - recommended: recommendation written - approved: approved - approved_with_conditions: approved with conditions - refused: refused - withdrawn: withdrawn - max_fields: 6 - collects: - - { name: name, private: true } - - { name: email, type: email, private: true } - - { name: property_address } - - { name: kind_of_work, type: select, options: [New building, Extension, Garage or outbuilding, Window or facade change, Demolition, Dividing a property, Change of use] } - - { name: what_you_want_to_do, type: textarea } - - { name: enclosed, type: select, multiple: true, options: [Site plan, Floor plans, Elevations, Section drawing, Neighbour notices sent, Statement from the owner] } - - { name: owner_name, optional: true, private: true } - - { name: phone, type: tel, optional: true, private: true } - - { name: place, type: location, optional: true } - - - id: exemption - who: An applicant whose plans break the zoning rules - wants: An exemption from the zoning rules, decided alongside their application - about: application - requires: An application with us; the exemption rides along with it and is asked for from its row on the list of cases. - lands_in: exemptions - handled_by: case_officers - stages: [open, county_asked, county_heard, granted, refused] - done_when: [granted, refused] - success: [granted] - moves_by: { granted: [head_of_section], refused: [head_of_section] } - watched_by: [front_desk] - mails: { open: submitter, county_asked: submitter, granted: submitter, refused: submitter } - deadlines: { county_asked: { days: 42, to: county_heard } } - stages_text: - open: received - county_asked: county asked - county_heard: county has answered or its deadline has passed - granted: granted - refused: refused - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: rule_it_breaks } - - { name: why_it_should_be_allowed, type: textarea } - - - id: objection - who: A neighbour who got a notice in the post and does not agree with what is planned next door - wants: To object to an application and have the objection answered in the decision - about: application - requires: The application must still be out for hearing; objections are taken until the six weeks are up. - lands_in: objections - handled_by: case_officers - stages: [open, registered, answered, addressed] - done_when: [addressed] - success: [addressed] - skippable: [answered] - moves_by: { registered: [front_desk, case_officers], answered: [approved_firms, case_officers] } - watched_by: [front_desk, head_of_section] - mails: { open: submitter, registered: owner, addressed: submitter } - stages_text: - open: received - registered: registered on the case - answered: answered by the applicant - addressed: addressed in the decision - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: your_property } - - { name: objection, type: textarea } - - { name: phone, type: tel, optional: true } - - - id: logged-objection - who: The front desk, when an objection comes in on paper or over the counter - wants: To put the objection on the right case straight away, instead of stapling it to a folder - enters_as: front_desk - lands_in: paper_objections - handled_by: case_officers - stages: [open, registered, answered, addressed] - done_when: [addressed] - success: [addressed] - skippable: [answered] - moves_by: { registered: [front_desk, case_officers], answered: [approved_firms, case_officers] } - watched_by: [front_desk, head_of_section] - stages_text: - open: received - registered: registered on the case - answered: answered by the applicant - addressed: addressed in the decision - max_fields: 5 - collects: - - { name: application_reference } - - { name: name } - - { name: objection, type: textarea } - - { name: received_on, type: date } - - { name: your_property, optional: true } - - { name: phone, type: tel, optional: true } - - - id: hearing-request - who: A case officer who is obliged to ask another authority about an application - wants: To ask the road authority, the fire service, the heritage office or the county, and go on when the deadline has passed - enters_as: case_officers - lands_in: hearing_answers - handled_by: case_officers - stages: [open, answered, no_answer] - done_when: [answered, no_answer] - success: [answered] - moves_by: { answered: [agencies, case_officers] } - watched_by: [agencies, front_desk] - deadlines: { open: { days: 42, to: no_answer } } - stages_text: - open: asked - answered: answered - no_answer: deadline passed without an answer - max_fields: 4 - collects: - - { name: application_reference } - - { name: agency, type: select, options: [Road authority, Fire service, Heritage office, County] } - - { name: what_we_ask, type: textarea } - - { name: answer_by, type: date, optional: true } - - - id: appeal - who: Anyone with an interest in a decision, the applicant or a neighbour - wants: To appeal a decision we have made - about: application - requires: A decision on the application, made no more than three weeks ago. - lands_in: appeals - handled_by: case_officers - stages: [open, under_review, decision_changed, sent_to_board, upheld, overturned, dismissed] - done_when: [decision_changed, upheld, overturned, dismissed] - success: [decision_changed, upheld, overturned] - turned_down_from: [open, under_review] - reached_from: { decision_changed: [under_review] } - moves_by: { decision_changed: [head_of_section], upheld: [appeals_board], overturned: [appeals_board] } - watched_by: [appeals_board, head_of_section, front_desk] - mails: { open: submitter, decision_changed: submitter, sent_to_board: submitter, upheld: submitter, overturned: submitter, dismissed: submitter } - stages_text: - open: received - under_review: we are going through it ourselves - decision_changed: we changed our own decision - sent_to_board: sent to the appeals board - upheld: decision upheld by the board - overturned: decision overturned by the board - dismissed: dismissed - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: your_interest, type: select, options: [I am the applicant, I am a neighbour, Other] } - - { name: grounds, type: textarea } - - { name: phone, type: tel, optional: true } - - - id: illegal-building-report - who: Someone who sees something going up behind their fence without permission - wants: To tell us, so that we go and look - lands_in: illegal_building - handled_by: case_officers - stages: [open, inspected, owner_written_to, explained, fined, applied_for, taken_down, nothing_illegal] - done_when: [applied_for, taken_down, nothing_illegal] - success: [applied_for, taken_down] - skippable: [fined] - turned_down_from: [open, inspected, explained] - moves_by: { inspected: [inspectors], fined: [head_of_section] } - watched_by: [front_desk, inspectors] - stages_text: - open: reported - inspected: we have been and looked - owner_written_to: owner written to - explained: owner has explained - fined: weekly fine running - applied_for: applied for properly - taken_down: taken down - nothing_illegal: nothing illegal found - max_fields: 3 - collects: - - { name: where } - - { name: what_is_being_built, type: textarea } - - { name: place, type: location, optional: true } - - { name: name, optional: true, private: true } - - { name: phone, type: tel, optional: true, private: true } - - - id: logged-report - who: The front desk, when someone rings or comes in about building without permission - wants: To log the report so an inspector goes and looks - enters_as: front_desk - lands_in: illegal_building - handled_by: case_officers - stages: [open, inspected, owner_written_to, explained, fined, applied_for, taken_down, nothing_illegal] - done_when: [applied_for, taken_down, nothing_illegal] - success: [applied_for, taken_down] - skippable: [fined] - turned_down_from: [open, inspected, explained] - moves_by: { inspected: [inspectors], fined: [head_of_section] } - watched_by: [front_desk, inspectors] - stages_text: - open: reported - inspected: we have been and looked - owner_written_to: owner written to - explained: owner has explained - fined: weekly fine running - applied_for: applied for properly - taken_down: taken down - nothing_illegal: nothing illegal found - max_fields: 3 - collects: - - { name: where } - - { name: what_is_being_built, type: textarea } - - { name: place, type: location, optional: true } - - { name: name, optional: true, private: true } - - { name: phone, type: tel, optional: true, private: true } - - - id: inspection - who: An inspector on site, writing on a phone in a cold wind - wants: To write up what was found on a case and set a date for what must be put right - enters_as: inspectors - lands_in: inspections - handled_by: inspectors - stages: [open, to_put_right, as_approved] - done_when: [as_approved] - success: [as_approved] - skippable: [to_put_right] - watched_by: [case_officers, head_of_section] - stages_text: - open: inspected - to_put_right: "to be put right, then we go back" - as_approved: as approved - max_fields: 3 - collects: - - { name: application_reference } - - { name: finding, type: select, options: [As approved, Something is wrong] } - - { name: what_is_wrong, type: textarea, optional: true } - - { name: put_right_by, type: date, optional: true } - - { name: place, type: location, optional: true } - - - id: completion-certificate - who: An approved firm whose work on a case is done - wants: A completion certificate for the finished work - door: firm - enters_as: approved_firms - requires: Your firm must be on our list of approved firms, and the application must be approved; have its reference ready. - lands_in: completion_certificates - handled_by: case_officers - stages: [open, checked, issued, refused] - done_when: [issued, refused] - success: [issued] - moves_by: { issued: [head_of_section], refused: [head_of_section] } - watched_by: [inspectors, front_desk] - mails: { open: submitter, issued: submitter, refused: submitter } - stages_text: - open: asked for - checked: inspections and outstanding work checked - issued: certificate signed - refused: refused - max_fields: 5 - collects: - - { name: name } - - { name: email, type: email } - - { name: application_reference } - - { name: finished_on, type: date } - - { name: what_was_built, type: textarea, optional: true } - - { name: still_outstanding, type: textarea, optional: true } - - - id: temporary-permission - who: An approved firm whose client wants to move in before everything is done - wants: A temporary permission to use the building - door: firm - enters_as: approved_firms - requires: Your firm must be on our list of approved firms, and the application must be approved; have its reference ready. - lands_in: temporary_permissions - handled_by: case_officers - stages: [open, checked, issued, refused] - done_when: [issued, refused] - success: [issued] - moves_by: { issued: [head_of_section], refused: [head_of_section] } - watched_by: [inspectors, front_desk] - mails: { open: submitter, issued: submitter, refused: submitter } - stages_text: - open: asked for - checked: inspections and outstanding work checked - issued: temporary permission signed - refused: refused - max_fields: 6 - collects: - - { name: name } - - { name: email, type: email } - - { name: application_reference } - - { name: move_in_on, type: date } - - { name: still_outstanding, type: textarea } - - { name: finished_by, type: date, optional: true } - - - id: firm-approval - who: An architect or engineering firm that wants to file applications for owners - wants: To be approved by us and put on the list of firms that may file - door: firm - lands_in: approved_firm_requests - handled_by: case_officers - stages: [open, checked, listed, refused] - done_when: [listed, refused] - success: [listed] - moves_by: { listed: [head_of_section], refused: [head_of_section] } - watched_by: [public, front_desk] - public_states: [listed] - mails: { open: submitter, listed: submitter, refused: submitter } - grants: { listed: approved_firms } - stages_text: - open: received - checked: "registration, insurance and qualifications checked" - listed: on the list - refused: refused - max_fields: 6 - collects: - - { name: firm } - - { name: name, private: true } - - { name: email, type: email, private: true } - - { name: registration_number } - - { name: insurance, private: true } - - { name: qualified_for, type: select, multiple: true, options: [Applying on behalf of owners, Architectural design, Structural engineering, Fire safety design, Geotechnical engineering, Carrying out the work, Independent control] } - - { name: phone, type: tel, optional: true, private: true } diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/plan.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/plan.yaml deleted file mode 100644 index 479600f..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/plan.yaml +++ /dev/null @@ -1,549 +0,0 @@ -business: Vestmark kommune - Building and Planning -language: en -contact: { name: Solveig Hauge, email: byggesak@vestmark.example } -about: > - We are the building authority for a municipality of twenty-one - thousand people. Anyone who wants to build, demolish, divide a - property or change what a building is used for has to come to us - first. We check the drawings against the zoning map and the building - regulations, we let the neighbours and the other authorities have - their say, and then we approve or refuse. We also decide exemptions - from the zoning rules, we inspect what is actually built, we sign off - finished work, and we deal with building that was never applied for. -mail: { from: "Vestmark kommune Building and Planning ", reply_to: byggesak@vestmark.example } - -does: - - id: check-and-decide - for: application - text: > - We check your drawings against the zoning map and the building - regulations, let the neighbours and the other authorities have - their say, and then approve or refuse. Every case is on the list - here, so you and your neighbours can follow it the whole way, - and object to it or appeal it from its own row. - - id: firms-file-here - for: firm-application - text: > - Approved firms file applications for their clients here, see what - is missing and ask for the completion certificate when the work is done. - -doors: - - id: build - who: You want to build, demolish, divide a property or change what a building is used for - - id: firm - who: You are an architect or an engineering firm filing on behalf of owners - -invites_by: [head_of_section] - -needs: - - id: pre-application-meeting - who: Anyone who wants to sit down with us before they spend money on drawings - wants: A meeting with a case officer, and a written note of what we told them - door: build - lands_in: pre_application_meetings - handled_by: case_officers - stages: [open, scheduled, met, written_up, cancelled] - done_when: [written_up, cancelled] - success: [written_up] - turned_down_from: [open, scheduled] - moves_by: { cancelled: [submitter, case_officers] } - watched_by: [front_desk] - mails: { open: submitter, scheduled: submitter, written_up: submitter, cancelled: submitter } - stages_text: - open: asked for - scheduled: time found - met: meeting held - written_up: written down and sent - cancelled: cancelled - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: property_address } - - { name: what_you_plan, type: textarea } - - { name: phone, type: tel, optional: true } - - { name: place, type: location, optional: true } - - - id: application - who: A homeowner who wants a garage, an extension, a new window or another change to their property - wants: Permission to build, demolish, divide a property or change what a building is used for - door: build - lands_in: applications - handled_by: case_officers - stages: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused, withdrawn] - done_when: [approved, approved_with_conditions, refused, withdrawn] - success: [approved, approved_with_conditions] - skippable: [papers_missing, papers_received] - reached_from: - papers_missing: [open, papers_received, complete, in_hearing] - refused: [recommended] - moves_by: - papers_received: [submitter] - approved: [head_of_section] - approved_with_conditions: [head_of_section] - refused: [head_of_section] - withdrawn: [submitter, case_officers] - watched_by: [public, front_desk, inspectors] - public_states: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused] - mails: - open: submitter - papers_missing: submitter - complete: submitter - in_hearing: submitter - approved: submitter - approved_with_conditions: submitter - refused: submitter - withdrawn: submitter - deadlines: { in_hearing: { days: 42, to: hearing_over } } - stages_text: - open: received - papers_missing: "papers missing, clock stopped" - papers_received: missing papers sent in - complete: "complete, clock running" - in_hearing: out to neighbours and agencies - hearing_over: hearing over - recommended: recommendation written - approved: approved - approved_with_conditions: approved with conditions - refused: refused - withdrawn: withdrawn - max_fields: 5 - collects: - - { name: name, private: true } - - { name: email, type: email, private: true } - - { name: property_address } - - { name: kind_of_work, type: select, options: [New building, Extension, Garage or outbuilding, Window or facade change, Demolition, Dividing a property, Change of use] } - - { name: what_you_want_to_do, type: textarea } - - { name: enclosed, type: select, multiple: true, optional: true, options: [Site plan, Floor plans, Elevations, Section drawing, Neighbour notices sent, Statement from the owner] } - - { name: phone, type: tel, optional: true, private: true } - - { name: place, type: location, optional: true } - - - id: firm-application - who: An approved architect or engineering firm filing on behalf of an owner - wants: To file a building application for a client and see what is missing - door: firm - enters_as: approved_firms - requires: Your firm must be on our list of approved firms before it may file anything. - lands_in: applications - handled_by: case_officers - stages: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused, withdrawn] - done_when: [approved, approved_with_conditions, refused, withdrawn] - success: [approved, approved_with_conditions] - skippable: [papers_missing, papers_received] - reached_from: - papers_missing: [open, papers_received, complete, in_hearing] - refused: [recommended] - moves_by: - papers_received: [submitter] - approved: [head_of_section] - approved_with_conditions: [head_of_section] - refused: [head_of_section] - withdrawn: [submitter, case_officers] - watched_by: [public, front_desk, inspectors] - public_states: [open, papers_missing, papers_received, complete, in_hearing, hearing_over, recommended, approved, approved_with_conditions, refused] - mails: - open: submitter - papers_missing: submitter - complete: submitter - in_hearing: submitter - approved: submitter - approved_with_conditions: submitter - refused: submitter - withdrawn: submitter - deadlines: { in_hearing: { days: 42, to: hearing_over } } - stages_text: - open: received - papers_missing: "papers missing, clock stopped" - papers_received: missing papers sent in - complete: "complete, clock running" - in_hearing: out to neighbours and agencies - hearing_over: hearing over - recommended: recommendation written - approved: approved - approved_with_conditions: approved with conditions - refused: refused - withdrawn: withdrawn - max_fields: 6 - collects: - - { name: name, private: true } - - { name: email, type: email, private: true } - - { name: property_address } - - { name: kind_of_work, type: select, options: [New building, Extension, Garage or outbuilding, Window or facade change, Demolition, Dividing a property, Change of use] } - - { name: what_you_want_to_do, type: textarea } - - { name: enclosed, type: select, multiple: true, options: [Site plan, Floor plans, Elevations, Section drawing, Neighbour notices sent, Statement from the owner] } - - { name: owner_name, optional: true, private: true } - - { name: phone, type: tel, optional: true, private: true } - - { name: place, type: location, optional: true } - - - id: exemption - who: An applicant whose plans break the zoning rules - wants: An exemption from the zoning rules, decided alongside their application - about: application - requires: An application with us; the exemption rides along with it and is asked for from its row on the list of cases. - lands_in: exemptions - handled_by: case_officers - stages: [open, county_asked, county_heard, granted, refused] - done_when: [granted, refused] - success: [granted] - moves_by: { granted: [head_of_section], refused: [head_of_section] } - watched_by: [front_desk] - mails: { open: submitter, county_asked: submitter, granted: submitter, refused: submitter } - deadlines: { county_asked: { days: 42, to: county_heard } } - stages_text: - open: received - county_asked: county asked - county_heard: county has answered or its deadline has passed - granted: granted - refused: refused - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: rule_it_breaks } - - { name: why_it_should_be_allowed, type: textarea } - - - id: objection - who: A neighbour who got a notice in the post and does not agree with what is planned next door - wants: To object to an application and have the objection answered in the decision - about: application - requires: The application must still be out for hearing; objections are taken until the six weeks are up. - lands_in: objections - handled_by: case_officers - stages: [open, registered, answered, addressed] - done_when: [addressed] - success: [addressed] - skippable: [answered] - moves_by: { registered: [front_desk, case_officers], answered: [approved_firms, case_officers] } - watched_by: [front_desk, head_of_section] - mails: { open: submitter, registered: owner, addressed: submitter } - stages_text: - open: received - registered: registered on the case - answered: answered by the applicant - addressed: addressed in the decision - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: your_property } - - { name: objection, type: textarea } - - { name: phone, type: tel, optional: true } - - - id: logged-objection - who: The front desk, when an objection comes in on paper or over the counter - wants: To put the objection on the right case straight away, instead of stapling it to a folder - enters_as: front_desk - lands_in: paper_objections - handled_by: case_officers - stages: [open, registered, answered, addressed] - done_when: [addressed] - success: [addressed] - skippable: [answered] - moves_by: { registered: [front_desk, case_officers], answered: [approved_firms, case_officers] } - watched_by: [front_desk, head_of_section] - stages_text: - open: received - registered: registered on the case - answered: answered by the applicant - addressed: addressed in the decision - max_fields: 5 - collects: - - { name: application_reference } - - { name: name } - - { name: objection, type: textarea } - - { name: received_on, type: date } - - { name: your_property, optional: true } - - { name: phone, type: tel, optional: true } - - - id: hearing-request - who: A case officer who is obliged to ask another authority about an application - wants: To ask the road authority, the fire service, the heritage office or the county, and go on when the deadline has passed - enters_as: case_officers - lands_in: hearing_answers - handled_by: case_officers - stages: [open, answered, no_answer] - done_when: [answered, no_answer] - success: [answered] - moves_by: { answered: [agencies, case_officers] } - watched_by: [agencies, front_desk] - deadlines: { open: { days: 42, to: no_answer } } - stages_text: - open: asked - answered: answered - no_answer: deadline passed without an answer - max_fields: 4 - collects: - - { name: application_reference } - - { name: agency, type: select, options: [Road authority, Fire service, Heritage office, County] } - - { name: what_we_ask, type: textarea } - - { name: answer_by, type: date, optional: true } - - - id: appeal - who: Anyone with an interest in a decision, the applicant or a neighbour - wants: To appeal a decision we have made - about: application - requires: A decision on the application, made no more than three weeks ago. - lands_in: appeals - handled_by: case_officers - stages: [open, under_review, decision_changed, sent_to_board, upheld, overturned, dismissed] - done_when: [decision_changed, upheld, overturned, dismissed] - success: [decision_changed, upheld, overturned] - turned_down_from: [open, under_review] - reached_from: { decision_changed: [under_review] } - moves_by: { decision_changed: [head_of_section], upheld: [appeals_board], overturned: [appeals_board] } - watched_by: [appeals_board, head_of_section, front_desk] - mails: { open: submitter, decision_changed: submitter, sent_to_board: submitter, upheld: submitter, overturned: submitter, dismissed: submitter } - stages_text: - open: received - under_review: we are going through it ourselves - decision_changed: we changed our own decision - sent_to_board: sent to the appeals board - upheld: decision upheld by the board - overturned: decision overturned by the board - dismissed: dismissed - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: your_interest, type: select, options: [I am the applicant, I am a neighbour, Other] } - - { name: grounds, type: textarea } - - { name: phone, type: tel, optional: true } - - - id: illegal-building-report - who: Someone who sees something going up behind their fence without permission - wants: To tell us, so that we go and look - lands_in: illegal_building - handled_by: case_officers - stages: [open, inspected, owner_written_to, explained, fined, applied_for, taken_down, nothing_illegal] - done_when: [applied_for, taken_down, nothing_illegal] - success: [applied_for, taken_down] - skippable: [fined] - turned_down_from: [open, inspected, explained] - moves_by: { inspected: [inspectors], fined: [head_of_section] } - watched_by: [front_desk, inspectors] - stages_text: - open: reported - inspected: we have been and looked - owner_written_to: owner written to - explained: owner has explained - fined: weekly fine running - applied_for: applied for properly - taken_down: taken down - nothing_illegal: nothing illegal found - max_fields: 3 - collects: - - { name: where } - - { name: what_is_being_built, type: textarea } - - { name: place, type: location, optional: true } - - { name: name, optional: true, private: true } - - { name: phone, type: tel, optional: true, private: true } - - - id: logged-report - who: The front desk, when someone rings or comes in about building without permission - wants: To log the report so an inspector goes and looks - enters_as: front_desk - lands_in: illegal_building - handled_by: case_officers - stages: [open, inspected, owner_written_to, explained, fined, applied_for, taken_down, nothing_illegal] - done_when: [applied_for, taken_down, nothing_illegal] - success: [applied_for, taken_down] - skippable: [fined] - turned_down_from: [open, inspected, explained] - moves_by: { inspected: [inspectors], fined: [head_of_section] } - watched_by: [front_desk, inspectors] - stages_text: - open: reported - inspected: we have been and looked - owner_written_to: owner written to - explained: owner has explained - fined: weekly fine running - applied_for: applied for properly - taken_down: taken down - nothing_illegal: nothing illegal found - max_fields: 3 - collects: - - { name: where } - - { name: what_is_being_built, type: textarea } - - { name: place, type: location, optional: true } - - { name: name, optional: true, private: true } - - { name: phone, type: tel, optional: true, private: true } - - - id: inspection - who: An inspector on site, writing on a phone in a cold wind - wants: To write up what was found on a case and set a date for what must be put right - enters_as: inspectors - lands_in: inspections - handled_by: inspectors - stages: [open, to_put_right, as_approved] - done_when: [as_approved] - success: [as_approved] - skippable: [to_put_right] - watched_by: [case_officers, head_of_section] - stages_text: - open: inspected - to_put_right: "to be put right, then we go back" - as_approved: as approved - max_fields: 3 - collects: - - { name: application_reference } - - { name: finding, type: select, options: [As approved, Something is wrong] } - - { name: what_is_wrong, type: textarea, optional: true } - - { name: put_right_by, type: date, optional: true } - - { name: place, type: location, optional: true } - - - id: completion-certificate - who: An approved firm whose work on a case is done - wants: A completion certificate for the finished work - door: firm - enters_as: approved_firms - requires: Your firm must be on our list of approved firms, and the application must be approved; have its reference ready. - lands_in: completion_certificates - handled_by: case_officers - stages: [open, checked, issued, refused] - done_when: [issued, refused] - success: [issued] - moves_by: { issued: [head_of_section], refused: [head_of_section] } - watched_by: [inspectors, front_desk] - mails: { open: submitter, issued: submitter, refused: submitter } - stages_text: - open: asked for - checked: inspections and outstanding work checked - issued: certificate signed - refused: refused - max_fields: 5 - collects: - - { name: name } - - { name: email, type: email } - - { name: application_reference } - - { name: finished_on, type: date } - - { name: what_was_built, type: textarea, optional: true } - - { name: still_outstanding, type: textarea, optional: true } - - - id: temporary-permission - who: An approved firm whose client wants to move in before everything is done - wants: A temporary permission to use the building - door: firm - enters_as: approved_firms - requires: Your firm must be on our list of approved firms, and the application must be approved; have its reference ready. - lands_in: temporary_permissions - handled_by: case_officers - stages: [open, checked, issued, refused] - done_when: [issued, refused] - success: [issued] - moves_by: { issued: [head_of_section], refused: [head_of_section] } - watched_by: [inspectors, front_desk] - mails: { open: submitter, issued: submitter, refused: submitter } - stages_text: - open: asked for - checked: inspections and outstanding work checked - issued: temporary permission signed - refused: refused - max_fields: 6 - collects: - - { name: name } - - { name: email, type: email } - - { name: application_reference } - - { name: move_in_on, type: date } - - { name: still_outstanding, type: textarea } - - { name: finished_by, type: date, optional: true } - - - id: firm-approval - who: An architect or engineering firm that wants to file applications for owners - wants: To be approved by us and put on the list of firms that may file - door: firm - lands_in: approved_firm_requests - handled_by: case_officers - stages: [open, checked, listed, refused] - done_when: [listed, refused] - success: [listed] - moves_by: { listed: [head_of_section], refused: [head_of_section] } - watched_by: [public, front_desk] - public_states: [listed] - mails: { open: submitter, listed: submitter, refused: submitter } - grants: { listed: approved_firms } - stages_text: - open: received - checked: "registration, insurance and qualifications checked" - listed: on the list - refused: refused - max_fields: 6 - collects: - - { name: firm } - - { name: name, private: true } - - { name: email, type: email, private: true } - - { name: registration_number } - - { name: insurance, private: true } - - { name: qualified_for, type: select, multiple: true, options: [Applying on behalf of owners, Architectural design, Structural engineering, Fire safety design, Geotechnical engineering, Carrying out the work, Independent control] } - - { name: phone, type: tel, optional: true, private: true } - -# Held out from every model that writes words. -personas: -- id: garage-owner - need: pre-application-meeting - text: We want to put a double garage where the old shed is. Before I pay an architect I'd like to know whether you'll even allow it, because the neighbour says it's too close to the road. -- id: shop-to-flats - need: pre-application-meeting - text: I own the old grocery on Torget and want to make four flats out of it. There are a lot of questions - parking, fire, the facade is listed. Can we sit down with someone? -- id: firm-files-extension - need: firm-application - text: We are the responsible applicant for an extension at Bjorkeveien 14. Drawings, site plan and the neighbour notices are all ready. We file maybe forty of these a year. -- id: owner-small-window - need: application - text: I want to put a dormer window in my roof. The man at the counter said I have to apply even though it's small. -- id: missing-drawings - need: firm-application - text: You wrote that our section drawing is missing and the case is on hold. I've got it here now, where do I send it so the clock starts again? -- id: too-close-to-boundary - need: exemption - text: The garage ends up one and a half metres from the boundary and the plan says four. We are asking you to allow it anyway - the ground falls away steeply everywhere else on the plot. -- id: neighbour-view - need: objection - text: I got a notice about the extension at number 14. It takes the afternoon sun off my entire terrace and I want that on the record before you decide anything. -- id: neighbour-parking - need: objection - text: The flats they want to build in the old grocery have four parking places for four flats and everyone here already parks on the street. I object. -- id: road-authority - need: hearing-request - text: 'Regarding your case 2026/418: the access onto the county road is within the sight line and we cannot accept it as drawn. Our formal reply is attached.' -- id: fire-service - need: hearing-request - text: We have looked at the conversion on Torget. We have no objection provided the stairwell is upgraded. Reference your case 2026/501. -- id: refused-applicant - need: appeal - text: You refused our exemption on the ninth. We don't accept the reasoning - you've allowed the same thing twice in the same street. We're appealing. -- id: neighbour-appeals - need: appeal - text: You approved the extension next door even though I objected. I'm appealing the decision. What do I need to send? -- id: board-member - need: appeal - text: I sit on the appeals board. I need the case, our own decision, and what the neighbours wrote, before Tuesday. -- id: inspector-on-roof - need: inspection - text: I'm up on the scaffold at Bjorkeveien. The fire wall isn't built to the drawing at all. I've got gloves on and it's blowing. I want this logged before I climb down. -- id: inspector-all-good - need: inspection - text: Been out at Torget. Everything is as approved. Nothing to report but I have to record that I was there. -- id: firm-wants-certificate - need: completion-certificate - text: The work at Bjorkeveien 14 is finished and inspected. We're asking for the completion certificate so the owners can get their mortgage released. -- id: wants-to-move-in - need: temporary-permission - text: The house is done apart from the outside steps, which we can't pour until spring. The family has sold their flat. Can we get a temporary permission to move in? -- id: something-behind-fence - need: illegal-building-report - text: There's a large structure going up behind the fence at Solbakken 7. Nobody has had a notice about it and it's been going on for two weeks. -- id: owner-explains - need: illegal-building-report - text: I got your letter about the terrace. I genuinely did not know it needed an application, it's been there since we moved in. What happens now? -- id: new-firm - need: firm-approval - text: We are a three-person architecture firm that has just started. We want to be approved so we can file applications for our clients in your municipality. -- id: firm-insurance-lapsed - need: firm-approval - text: You wrote that our liability insurance certificate has expired. We have renewed it, here it is. -- id: counter-phone-call - need: log-counter-enquiry - text: A woman rang about the case behind her house. Wants to know where it stands. I'm at the counter and there's a queue - I need to write it down and send it to whoever has that case. -- id: where-is-my-case - need: case-status-enquiry - text: I sent in my application five weeks ago and I've heard nothing. Is anyone looking at it? Is it in the six weeks with the neighbours or is it waiting on me? diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/aggregates.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/aggregates.yaml deleted file mode 100644 index b3f6e49..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/aggregates.yaml +++ /dev/null @@ -1,611 +0,0 @@ -aggregates: -- bucket: appeals - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello {name}, - - We have received what you sent about To appeal a decision we have made. - - Solveig Hauge at byggesak@vestmark.example - under_review: - event: under_review - decision_changed: - event: decision_changed - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Decision changed' - body: |- - Hello {name}, - - What you sent about To appeal a decision we have made is now we changed our own decision. - - Solveig Hauge at byggesak@vestmark.example - sent_to_board: - event: sent_to_board - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Sent to board' - body: |- - Hello {name}, - - What you sent about To appeal a decision we have made is now sent to the appeals board. - - Solveig Hauge at byggesak@vestmark.example - upheld: - event: upheld - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Upheld' - body: |- - Hello {name}, - - What you sent about To appeal a decision we have made is now decision upheld by the board. - - Solveig Hauge at byggesak@vestmark.example - overturned: - event: overturned - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Overturned' - body: |- - Hello {name}, - - What you sent about To appeal a decision we have made is now decision overturned by the board. - - Solveig Hauge at byggesak@vestmark.example - dismissed: - event: dismissed - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Dismissed' - body: |- - Hello {name}, - - What you sent about To appeal a decision we have made is now dismissed. - - Solveig Hauge at byggesak@vestmark.example - transitions: - open: - - under_review - - dismissed - sent_to_board: - - upheld - - overturned - under_review: - - sent_to_board - - dismissed - - decision_changed -- bucket: applications - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello {name}, - - We have received what you sent about Permission to build, demolish, divide a property or change what a building is used for. - - What you can do next: {site}/decide/application?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - papers_missing: - event: papers_missing - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Papers missing' - body: |- - Hello {name}, - - What you sent about Permission to build, demolish, divide a property or change what a building is used for is now papers missing, clock stopped. - - What you can do next: {site}/decide/application?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - papers_received: - event: papers_received - complete: - event: complete - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Complete' - body: |- - Hello {name}, - - What you sent about Permission to build, demolish, divide a property or change what a building is used for is now complete, clock running. - - What you can do next: {site}/decide/application?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - in_hearing: - event: in_hearing - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: In hearing' - body: |- - Hello {name}, - - What you sent about Permission to build, demolish, divide a property or change what a building is used for is now out to neighbours and agencies. - - What you can do next: {site}/decide/application?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - after: - days: 42 - to: hearing_over - hearing_over: - event: hearing_over - recommended: - event: recommended - approved: - event: approved - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Approved' - body: |- - Hello {name}, - - What you sent about Permission to build, demolish, divide a property or change what a building is used for is now approved. - - Solveig Hauge at byggesak@vestmark.example - approved_with_conditions: - event: approved_with_conditions - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Approved with conditions' - body: |- - Hello {name}, - - What you sent about Permission to build, demolish, divide a property or change what a building is used for is now approved with conditions. - - Solveig Hauge at byggesak@vestmark.example - refused: - event: refused - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Refused' - body: |- - Hello {name}, - - What you sent about Permission to build, demolish, divide a property or change what a building is used for is now refused. - - Solveig Hauge at byggesak@vestmark.example - withdrawn: - event: withdrawn - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Withdrawn' - body: |- - Hello {name}, - - What you sent about Permission to build, demolish, divide a property or change what a building is used for is now withdrawn. - - Solveig Hauge at byggesak@vestmark.example - transitions: - complete: - - in_hearing - - withdrawn - - papers_missing - hearing_over: - - recommended - - withdrawn - in_hearing: - - hearing_over - - withdrawn - - papers_missing - open: - - papers_received - - complete - - withdrawn - - papers_missing - papers_missing: - - papers_received - - complete - - withdrawn - papers_received: - - complete - - withdrawn - - papers_missing - recommended: - - approved - - approved_with_conditions - - withdrawn - - refused -- bucket: approved_firm_requests - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello {name}, - - We have received what you sent about To be approved by us and put on the list of firms that may file. - - Solveig Hauge at byggesak@vestmark.example - checked: - event: checked - listed: - event: listed - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Listed' - body: |- - Hello {name}, - - What you sent about To be approved by us and put on the list of firms that may file is now on the list. - - Solveig Hauge at byggesak@vestmark.example - grants: approved_firms - refused: - event: refused - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Refused' - body: |- - Hello {name}, - - What you sent about To be approved by us and put on the list of firms that may file is now refused. - - Solveig Hauge at byggesak@vestmark.example - transitions: - checked: - - listed - - refused - open: - - checked - - refused -- bucket: completion_certificates - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello {name}, - - We have received what you sent about A completion certificate for the finished work. - - Solveig Hauge at byggesak@vestmark.example - checked: - event: checked - issued: - event: issued - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Issued' - body: |- - Hello {name}, - - What you sent about A completion certificate for the finished work is now certificate signed. - - Solveig Hauge at byggesak@vestmark.example - refused: - event: refused - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Refused' - body: |- - Hello {name}, - - What you sent about A completion certificate for the finished work is now refused. - - Solveig Hauge at byggesak@vestmark.example - transitions: - checked: - - issued - - refused - open: - - checked - - refused -- bucket: exemptions - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello {name}, - - We have received what you sent about An exemption from the zoning rules, decided alongside their application. - - Solveig Hauge at byggesak@vestmark.example - county_asked: - event: county_asked - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: County asked' - body: |- - Hello {name}, - - What you sent about An exemption from the zoning rules, decided alongside their application is now county asked. - - Solveig Hauge at byggesak@vestmark.example - after: - days: 42 - to: county_heard - county_heard: - event: county_heard - granted: - event: granted - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Granted' - body: |- - Hello {name}, - - What you sent about An exemption from the zoning rules, decided alongside their application is now granted. - - Solveig Hauge at byggesak@vestmark.example - refused: - event: refused - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Refused' - body: |- - Hello {name}, - - What you sent about An exemption from the zoning rules, decided alongside their application is now refused. - - Solveig Hauge at byggesak@vestmark.example - transitions: - county_asked: - - county_heard - - refused - county_heard: - - granted - - refused - open: - - county_asked - - refused -- bucket: hearing_answers - initial: open - states: - open: - event: received - after: - days: 42 - to: no_answer - answered: - event: answered - no_answer: - event: no_answer - transitions: - open: - - answered - - no_answer -- bucket: illegal_building - initial: open - states: - open: - event: received - inspected: - event: inspected - owner_written_to: - event: owner_written_to - explained: - event: explained - fined: - event: fined - applied_for: - event: applied_for - taken_down: - event: taken_down - nothing_illegal: - event: nothing_illegal - transitions: - explained: - - fined - - applied_for - - taken_down - - nothing_illegal - fined: - - applied_for - - taken_down - inspected: - - owner_written_to - - nothing_illegal - open: - - inspected - - nothing_illegal - owner_written_to: - - explained -- bucket: inspections - initial: open - states: - open: - event: received - to_put_right: - event: to_put_right - as_approved: - event: as_approved - transitions: - open: - - to_put_right - - as_approved - to_put_right: - - as_approved -- bucket: objections - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello {name}, - - We have received what you sent about To object to an application and have the objection answered in the decision. - - Solveig Hauge at byggesak@vestmark.example - registered: - event: registered - mail: - to: '{applications.email}' - subject: 'Vestmark kommune - Building and Planning: Registered' - body: |- - A case in objections is now registered on the case: . - - Solveig Hauge at byggesak@vestmark.example - answered: - event: answered - addressed: - event: addressed - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Addressed' - body: |- - Hello {name}, - - What you sent about To object to an application and have the objection answered in the decision is now addressed in the decision. - - Solveig Hauge at byggesak@vestmark.example - transitions: - answered: - - addressed - open: - - registered - registered: - - answered - - addressed -- bucket: paper_objections - initial: open - states: - open: - event: received - registered: - event: registered - answered: - event: answered - addressed: - event: addressed - transitions: - answered: - - addressed - open: - - registered - registered: - - answered - - addressed -- bucket: pre_application_meetings - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello {name}, - - We have received what you sent about A meeting with a case officer, and a written note of what we told them. - - What you can do next: {site}/decide/pre-application-meeting?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - scheduled: - event: scheduled - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Scheduled' - body: |- - Hello {name}, - - What you sent about A meeting with a case officer, and a written note of what we told them is now time found. - - What you can do next: {site}/decide/pre-application-meeting?chain={chain}&email={email} - - Solveig Hauge at byggesak@vestmark.example - met: - event: met - written_up: - event: written_up - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Written up' - body: |- - Hello {name}, - - What you sent about A meeting with a case officer, and a written note of what we told them is now written down and sent. - - Solveig Hauge at byggesak@vestmark.example - cancelled: - event: cancelled - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Cancelled' - body: |- - Hello {name}, - - What you sent about A meeting with a case officer, and a written note of what we told them is now cancelled. - - Solveig Hauge at byggesak@vestmark.example - transitions: - met: - - written_up - open: - - scheduled - - cancelled - scheduled: - - met - - cancelled -- bucket: temporary_permissions - initial: open - states: - open: - event: received - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Open' - body: |- - Hello {name}, - - We have received what you sent about A temporary permission to use the building. - - Solveig Hauge at byggesak@vestmark.example - checked: - event: checked - issued: - event: issued - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Issued' - body: |- - Hello {name}, - - What you sent about A temporary permission to use the building is now temporary permission signed. - - Solveig Hauge at byggesak@vestmark.example - refused: - event: refused - mail: - to: submitter - subject: 'Vestmark kommune - Building and Planning: Refused' - body: |- - Hello {name}, - - What you sent about A temporary permission to use the building is now refused. - - Solveig Hauge at byggesak@vestmark.example - transitions: - checked: - - issued - - refused - open: - - checked - - refused diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/needs.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/needs.yaml deleted file mode 100644 index 0eebf7d..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/needs.yaml +++ /dev/null @@ -1,504 +0,0 @@ -needs: -- id: pre-application-meeting - who: Anyone who wants to sit down with us before they spend money on drawings - wants: A meeting with a case officer, and a written note of what we told them - enters: / - via: Build - lands_in: pre_application_meetings - handled_by: case_officers - stages: - - open - - scheduled - - met - - written_up - - cancelled - done_when: - - written_up - - cancelled - success: - - written_up - max_steps: 2 - max_fields: 4 - stage_words: - open: asked for - scheduled: time found - met: meeting held - written_up: written down and sent - cancelled: cancelled -- id: application - who: A homeowner who wants a garage, an extension, a new window or another change to their property - wants: Permission to build, demolish, divide a property or change what a building is used for - enters: / - via: Build - lands_in: applications - handled_by: case_officers - stages: - - open - - papers_missing - - papers_received - - complete - - in_hearing - - hearing_over - - recommended - - approved - - approved_with_conditions - - refused - - withdrawn - done_when: - - approved - - approved_with_conditions - - refused - - withdrawn - success: - - approved - - approved_with_conditions - max_steps: 2 - max_fields: 5 - stage_words: - open: received - papers_missing: papers missing, clock stopped - papers_received: missing papers sent in - complete: complete, clock running - in_hearing: out to neighbours and agencies - hearing_over: hearing over - recommended: recommendation written - approved: approved - approved_with_conditions: approved with conditions - refused: refused - withdrawn: withdrawn - also_moved_by: - - head_of_section -- id: firm-application - who: An approved architect or engineering firm filing on behalf of an owner - wants: To file a building application for a client and see what is missing - enters: /approved_firms/firm-application - via: To file a building application for a client and see what is missing - lands_in: applications - handled_by: case_officers - stages: - - open - - papers_missing - - papers_received - - complete - - in_hearing - - hearing_over - - recommended - - approved - - approved_with_conditions - - refused - - withdrawn - done_when: - - approved - - approved_with_conditions - - refused - - withdrawn - success: - - approved - - approved_with_conditions - max_steps: 1 - max_fields: 6 - stage_words: - open: received - papers_missing: papers missing, clock stopped - papers_received: missing papers sent in - complete: complete, clock running - in_hearing: out to neighbours and agencies - hearing_over: hearing over - recommended: recommendation written - approved: approved - approved_with_conditions: approved with conditions - refused: refused - withdrawn: withdrawn - enters_as: approved_firms - also_moved_by: - - head_of_section -- id: exemption - who: An applicant whose plans break the zoning rules - wants: An exemption from the zoning rules, decided alongside their application - enters: /status/applications/[key] - via: An exemption from the zoning rules, decided alongside their application - lands_in: exemptions - handled_by: case_officers - stages: - - open - - county_asked - - county_heard - - granted - - refused - done_when: - - granted - - refused - success: - - granted - max_steps: 1 - max_fields: 4 - stage_words: - open: received - county_asked: county asked - county_heard: county has answered or its deadline has passed - granted: granted - refused: refused - also_moved_by: - - head_of_section -- id: objection - who: A neighbour who got a notice in the post and does not agree with what is planned next door - wants: To object to an application and have the objection answered in the decision - enters: /status/applications/[key] - via: To object to an application and have the objection answered in the decision - lands_in: objections - handled_by: case_officers - stages: - - open - - registered - - answered - - addressed - done_when: - - addressed - success: - - addressed - max_steps: 1 - max_fields: 4 - stage_words: - open: received - registered: registered on the case - answered: answered by the applicant - addressed: addressed in the decision - also_moved_by: - - approved_firms - - front_desk -- id: logged-objection - who: The front desk, when an objection comes in on paper or over the counter - wants: To put the objection on the right case straight away, instead of stapling it to a folder - enters: /front_desk/logged-objection - via: To put the objection on the right case straight away, instead of stapling it to a folder - lands_in: paper_objections - handled_by: case_officers - stages: - - open - - registered - - answered - - addressed - done_when: - - addressed - success: - - addressed - max_steps: 1 - max_fields: 5 - stage_words: - open: received - registered: registered on the case - answered: answered by the applicant - addressed: addressed in the decision - enters_as: front_desk - also_moved_by: - - approved_firms - - front_desk -- id: hearing-request - who: A case officer who is obliged to ask another authority about an application - wants: To ask the road authority, the fire service, the heritage office or the county, and go on when the deadline has passed - enters: /case_officers/hearing-request - via: To ask the road authority, the fire service, the heritage office or the county, and go on when the deadline has passed - lands_in: hearing_answers - handled_by: case_officers - stages: - - open - - answered - - no_answer - done_when: - - answered - - no_answer - success: - - answered - max_steps: 1 - max_fields: 4 - stage_words: - open: asked - answered: answered - no_answer: deadline passed without an answer - enters_as: case_officers - also_moved_by: - - agencies -- id: appeal - who: Anyone with an interest in a decision, the applicant or a neighbour - wants: To appeal a decision we have made - enters: /status/applications/[key] - via: To appeal a decision we have made - lands_in: appeals - handled_by: case_officers - stages: - - open - - under_review - - decision_changed - - sent_to_board - - upheld - - overturned - - dismissed - done_when: - - decision_changed - - upheld - - overturned - - dismissed - success: - - decision_changed - - upheld - - overturned - max_steps: 1 - max_fields: 4 - stage_words: - open: received - under_review: we are going through it ourselves - decision_changed: we changed our own decision - sent_to_board: sent to the appeals board - upheld: decision upheld by the board - overturned: decision overturned by the board - dismissed: dismissed - also_moved_by: - - appeals_board - - head_of_section -- id: illegal-building-report - who: Someone who sees something going up behind their fence without permission - wants: To tell us, so that we go and look - enters: / - via: To tell us, so that we go and look - lands_in: illegal_building - handled_by: case_officers - stages: - - open - - inspected - - owner_written_to - - explained - - fined - - applied_for - - taken_down - - nothing_illegal - done_when: - - applied_for - - taken_down - - nothing_illegal - success: - - applied_for - - taken_down - max_steps: 1 - max_fields: 3 - stage_words: - open: reported - inspected: we have been and looked - owner_written_to: owner written to - explained: owner has explained - fined: weekly fine running - applied_for: applied for properly - taken_down: taken down - nothing_illegal: nothing illegal found - also_moved_by: - - head_of_section - - inspectors -- id: logged-report - who: The front desk, when someone rings or comes in about building without permission - wants: To log the report so an inspector goes and looks - enters: /front_desk/logged-report - via: To log the report so an inspector goes and looks - lands_in: illegal_building - handled_by: case_officers - stages: - - open - - inspected - - owner_written_to - - explained - - fined - - applied_for - - taken_down - - nothing_illegal - done_when: - - applied_for - - taken_down - - nothing_illegal - success: - - applied_for - - taken_down - max_steps: 1 - max_fields: 3 - stage_words: - open: reported - inspected: we have been and looked - owner_written_to: owner written to - explained: owner has explained - fined: weekly fine running - applied_for: applied for properly - taken_down: taken down - nothing_illegal: nothing illegal found - enters_as: front_desk - also_moved_by: - - head_of_section - - inspectors -- id: inspection - who: An inspector on site, writing on a phone in a cold wind - wants: To write up what was found on a case and set a date for what must be put right - enters: /inspectors/inspection - via: To write up what was found on a case and set a date for what must be put right - lands_in: inspections - handled_by: inspectors - stages: - - open - - to_put_right - - as_approved - done_when: - - as_approved - success: - - as_approved - max_steps: 1 - max_fields: 3 - stage_words: - open: inspected - to_put_right: to be put right, then we go back - as_approved: as approved - enters_as: inspectors -- id: completion-certificate - who: An approved firm whose work on a case is done - wants: A completion certificate for the finished work - enters: /approved_firms/completion-certificate - via: A completion certificate for the finished work - lands_in: completion_certificates - handled_by: case_officers - stages: - - open - - checked - - issued - - refused - done_when: - - issued - - refused - success: - - issued - max_steps: 1 - max_fields: 5 - stage_words: - open: asked for - checked: inspections and outstanding work checked - issued: certificate signed - refused: refused - enters_as: approved_firms - also_moved_by: - - head_of_section -- id: temporary-permission - who: An approved firm whose client wants to move in before everything is done - wants: A temporary permission to use the building - enters: /approved_firms/temporary-permission - via: A temporary permission to use the building - lands_in: temporary_permissions - handled_by: case_officers - stages: - - open - - checked - - issued - - refused - done_when: - - issued - - refused - success: - - issued - max_steps: 1 - max_fields: 6 - stage_words: - open: asked for - checked: inspections and outstanding work checked - issued: temporary permission signed - refused: refused - enters_as: approved_firms - also_moved_by: - - head_of_section -- id: firm-approval - who: An architect or engineering firm that wants to file applications for owners - wants: To be approved by us and put on the list of firms that may file - enters: / - via: Firm - lands_in: approved_firm_requests - handled_by: case_officers - stages: - - open - - checked - - listed - - refused - done_when: - - listed - - refused - success: - - listed - max_steps: 2 - max_fields: 6 - stage_words: - open: received - checked: registration, insurance and qualifications checked - listed: on the list - refused: refused - also_moved_by: - - head_of_section -personas: -- id: garage-owner - need: pre-application-meeting - text: We want to put a double garage where the old shed is. Before I pay an architect I'd like to know whether you'll even allow it, because the neighbour says it's too close to the road. -- id: shop-to-flats - need: pre-application-meeting - text: I own the old grocery on Torget and want to make four flats out of it. There are a lot of questions - parking, fire, the facade is listed. Can we sit down with someone? -- id: firm-files-extension - need: firm-application - text: We are the responsible applicant for an extension at Bjorkeveien 14. Drawings, site plan and the neighbour notices are all ready. We file maybe forty of these a year. -- id: owner-small-window - need: application - text: I want to put a dormer window in my roof. The man at the counter said I have to apply even though it's small. -- id: missing-drawings - need: firm-application - text: You wrote that our section drawing is missing and the case is on hold. I've got it here now, where do I send it so the clock starts again? -- id: too-close-to-boundary - need: exemption - text: The garage ends up one and a half metres from the boundary and the plan says four. We are asking you to allow it anyway - the ground falls away steeply everywhere else on the plot. -- id: neighbour-view - need: objection - text: I got a notice about the extension at number 14. It takes the afternoon sun off my entire terrace and I want that on the record before you decide anything. -- id: neighbour-parking - need: objection - text: The flats they want to build in the old grocery have four parking places for four flats and everyone here already parks on the street. I object. -- id: road-authority - need: hearing-request - text: 'Regarding your case 2026/418: the access onto the county road is within the sight line and we cannot accept it as drawn. Our formal reply is attached.' -- id: fire-service - need: hearing-request - text: We have looked at the conversion on Torget. We have no objection provided the stairwell is upgraded. Reference your case 2026/501. -- id: refused-applicant - need: appeal - text: You refused our exemption on the ninth. We don't accept the reasoning - you've allowed the same thing twice in the same street. We're appealing. -- id: neighbour-appeals - need: appeal - text: You approved the extension next door even though I objected. I'm appealing the decision. What do I need to send? -- id: board-member - need: appeal - text: I sit on the appeals board. I need the case, our own decision, and what the neighbours wrote, before Tuesday. -- id: inspector-on-roof - need: inspection - text: I'm up on the scaffold at Bjorkeveien. The fire wall isn't built to the drawing at all. I've got gloves on and it's blowing. I want this logged before I climb down. -- id: inspector-all-good - need: inspection - text: Been out at Torget. Everything is as approved. Nothing to report but I have to record that I was there. -- id: firm-wants-certificate - need: completion-certificate - text: The work at Bjorkeveien 14 is finished and inspected. We're asking for the completion certificate so the owners can get their mortgage released. -- id: wants-to-move-in - need: temporary-permission - text: The house is done apart from the outside steps, which we can't pour until spring. The family has sold their flat. Can we get a temporary permission to move in? -- id: something-behind-fence - need: illegal-building-report - text: There's a large structure going up behind the fence at Solbakken 7. Nobody has had a notice about it and it's been going on for two weeks. -- id: owner-explains - need: illegal-building-report - text: I got your letter about the terrace. I genuinely did not know it needed an application, it's been there since we moved in. What happens now? -- id: new-firm - need: firm-approval - text: We are a three-person architecture firm that has just started. We want to be approved so we can file applications for our clients in your municipality. -- id: firm-insurance-lapsed - need: firm-approval - text: You wrote that our liability insurance certificate has expired. We have renewed it, here it is. -- id: counter-phone-call - need: log-counter-enquiry - text: A woman rang about the case behind her house. Wants to know where it stands. I'm at the counter and there's a queue - I need to write it down and send it to whoever has that case. -- id: where-is-my-case - need: case-status-enquiry - text: I sent in my application five weeks ago and I've heard nothing. Is anyone looking at it? Is it in the six weeks with the neighbours or is it waiting on me? diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/agencies/_section.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/agencies/_section.yaml deleted file mode 100644 index 71cfb91..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/agencies/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: agencies diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/agencies/index.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/agencies/index.yaml deleted file mode 100644 index 6636e05..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/agencies/index.yaml +++ /dev/null @@ -1,62 +0,0 @@ -name: What needs doing? -description: Everything agencies looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Hearing answers - description: Sent in by A case officer who is obliged to ask another authority about an application. - action: /agencies - consequence: - - Confirm - features: - - name: Hearing answers - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: hearing_answers - requires_group: agencies - transitions: - - from: open - to: answered - label: Answered -- name: Invite someone into Agencies - description: They get an account, a place in Agencies, and a one-time link to set their own password or passkey. - action: /agencies - consequence: - - Invite - invite: - group: agencies - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite and where it stands. A link that runs out unused can be sent again. - action: /agencies - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation. It is done by itself when the person signs in, and expired when the link ran out unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: agencies - transitions: - - from: open - to: done - label: Is in - - from: expired - to: open - label: Send again - - from: expired - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/appeals_board/_section.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/appeals_board/_section.yaml deleted file mode 100644 index a23502c..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/appeals_board/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: appeals_board diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/appeals_board/index.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/appeals_board/index.yaml deleted file mode 100644 index df7eb84..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/appeals_board/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -name: What needs doing? -description: Everything appeals board looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Appeals - description: Sent in by Anyone with an interest in a decision, the applicant or a neighbour. - action: /appeals_board - consequence: - - Confirm - features: - - name: Appeals - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: appeals - requires_group: appeals_board - transitions: - - from: sent_to_board - to: upheld - label: Decision upheld by the board - - from: sent_to_board - to: overturned - label: Decision overturned by the board -- name: Invite someone into Appeals board - description: They get an account, a place in Appeals board, and a one-time link to set their own password or passkey. - action: /appeals_board - consequence: - - Invite - invite: - group: appeals_board - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite and where it stands. A link that runs out unused can be sent again. - action: /appeals_board - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation. It is done by itself when the person signs in, and expired when the link ran out unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: appeals_board - transitions: - - from: open - to: done - label: Is in - - from: expired - to: open - label: Send again - - from: expired - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/_section.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/_section.yaml deleted file mode 100644 index 85f1f10..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: approved_firms diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/completion-certificate-sent.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/completion-certificate-sent.yaml deleted file mode 100644 index 9016a7f..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/completion-certificate-sent.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/completion-certificate.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/completion-certificate.yaml deleted file mode 100644 index d9875d0..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/completion-certificate.yaml +++ /dev/null @@ -1,47 +0,0 @@ -followup: false -name: Completion certificate? -description: '' -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: A completion certificate for the finished work - description: For An approved firm whose work on a case is done. - action: /approved_firms/completion-certificate-sent - consequence: - - Send - record_as: completion_certificates - features: - - name: What you need - description: Your firm must be on our list of approved firms, and the application must be approved; have its reference ready. - icon: lucide:key - - name: What happens next - description: It is asked for, then inspections and outstanding work checked, and ends certificate signed or refused. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: name - label: Name - type: text - value: '{user.name}' - - name: email - label: Email - type: email - value: '{user.email}' - - name: application_reference - label: Application reference - type: text - - name: finished_on - label: Finished on - type: date - - name: what_was_built - label: What was built - type: textarea - optional: true - - name: still_outstanding - label: Still outstanding - type: textarea - optional: true diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/firm-application-sent.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/firm-application-sent.yaml deleted file mode 100644 index fce015d..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/firm-application-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: See all applications - description: '' - action: /status/applications - consequence: - - Open diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/firm-application.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/firm-application.yaml deleted file mode 100644 index c4c0f94..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/firm-application.yaml +++ /dev/null @@ -1,73 +0,0 @@ -followup: false -name: Firm application? -description: '' -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: To file a building application for a client and see what is missing - description: For An approved architect or engineering firm filing on behalf of an owner. - action: /approved_firms/firm-application-sent - consequence: - - Send - record_as: applications - features: - - name: What you need - description: Your firm must be on our list of approved firms before it may file anything. - icon: lucide:key - - name: What happens next - description: It is received, then papers missing, clock stopped, then missing papers sent in, then complete, clock running, then out to neighbours and agencies, then hearing over, then recommendation written, and ends approved, approved with conditions, refused or withdrawn. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: name - label: Name - type: text - value: '{user.name}' - - name: email - label: Email - type: email - value: '{user.email}' - - name: property_address - label: Property address - type: text - - name: kind_of_work - label: Kind of work - type: select - options: - - New building - - Extension - - Garage or outbuilding - - Window or facade change - - Demolition - - Dividing a property - - Change of use - - name: what_you_want_to_do - label: What you want to do - type: textarea - - name: enclosed - label: Enclosed - type: select - options: - - Site plan - - Floor plans - - Elevations - - Section drawing - - Neighbour notices sent - - Statement from the owner - multiple: true - - name: owner_name - label: Owner name - type: text - optional: true - - name: phone - label: Phone - type: tel - optional: true - - name: place - label: Place - type: location - optional: true diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/index.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/index.yaml deleted file mode 100644 index ed081a9..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/index.yaml +++ /dev/null @@ -1,55 +0,0 @@ -name: What needs doing? -description: Everything approved firms looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Objections - description: Sent in by A neighbour who got a notice in the post and does not agree with what is planned next door. - action: /approved_firms - consequence: - - Confirm - features: - - name: Objections - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: objections - requires_group: approved_firms - transitions: - - from: registered - to: answered - label: Answered by the applicant -- name: Paper objections - description: Sent in by The front desk, when an objection comes in on paper or over the counter. - action: /approved_firms - consequence: - - Confirm - features: - - name: Paper objections - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: paper_objections - requires_group: approved_firms - transitions: - - from: registered - to: answered - label: Answered by the applicant -- name: To file a building application for a client and see what is missing - description: For An approved architect or engineering firm filing on behalf of an owner. - action: /approved_firms/firm-application - consequence: - - Open -- name: A completion certificate for the finished work - description: For An approved firm whose work on a case is done. - action: /approved_firms/completion-certificate - consequence: - - Open -- name: A temporary permission to use the building - description: For An approved firm whose client wants to move in before everything is done. - action: /approved_firms/temporary-permission - consequence: - - Open diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/temporary-permission-sent.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/temporary-permission-sent.yaml deleted file mode 100644 index 9016a7f..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/temporary-permission-sent.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/temporary-permission.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/temporary-permission.yaml deleted file mode 100644 index 0232b3c..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/approved_firms/temporary-permission.yaml +++ /dev/null @@ -1,46 +0,0 @@ -followup: false -name: Temporary permission? -description: '' -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: A temporary permission to use the building - description: For An approved firm whose client wants to move in before everything is done. - action: /approved_firms/temporary-permission-sent - consequence: - - Send - record_as: temporary_permissions - features: - - name: What you need - description: Your firm must be on our list of approved firms, and the application must be approved; have its reference ready. - icon: lucide:key - - name: What happens next - description: It is asked for, then inspections and outstanding work checked, and ends temporary permission signed or refused. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: name - label: Name - type: text - value: '{user.name}' - - name: email - label: Email - type: email - value: '{user.email}' - - name: application_reference - label: Application reference - type: text - - name: move_in_on - label: Move in on - type: date - - name: still_outstanding - label: Still outstanding - type: textarea - - name: finished_by - label: Finished by - type: date - optional: true diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/build/index.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/build/index.yaml deleted file mode 100644 index c32e2cb..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/build/index.yaml +++ /dev/null @@ -1,99 +0,0 @@ -name: What do you need? -description: For You want to build, demolish, divide a property or change what a building is used for. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: A meeting with a case officer, and a written note of what we told them - description: For Anyone who wants to sit down with us before they spend money on drawings. - action: /received/pre-application-meeting - consequence: - - Send - record_as: pre_application_meetings - features: - - name: What happens next - description: It is asked for, then time found, then meeting held, and ends written down and sent or cancelled. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: name - label: Name - type: text - - name: email - label: Email - type: email - - name: property_address - label: Property address - type: text - - name: what_you_plan - label: What you plan - type: textarea - - name: phone - label: Phone - type: tel - optional: true - - name: place - label: Place - type: location - optional: true -- name: Permission to build, demolish, divide a property or change what a building is used for - description: For A homeowner who wants a garage, an extension, a new window or another change to their property. - action: /received/application - consequence: - - Send - record_as: applications - features: - - name: What happens next - description: It is received, then papers missing, clock stopped, then missing papers sent in, then complete, clock running, then out to neighbours and agencies, then hearing over, then recommendation written, and ends approved, approved with conditions, refused or withdrawn. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: name - label: Name - type: text - - name: email - label: Email - type: email - - name: property_address - label: Property address - type: text - - name: kind_of_work - label: Kind of work - type: select - options: - - New building - - Extension - - Garage or outbuilding - - Window or facade change - - Demolition - - Dividing a property - - Change of use - - name: what_you_want_to_do - label: What you want to do - type: textarea - - name: enclosed - label: Enclosed - type: select - optional: true - options: - - Site plan - - Floor plans - - Elevations - - Section drawing - - Neighbour notices sent - - Statement from the owner - multiple: true - - name: phone - label: Phone - type: tel - optional: true - - name: place - label: Place - type: location - optional: true diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/case_officers/_section.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/case_officers/_section.yaml deleted file mode 100644 index 0eb3949..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/case_officers/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: case_officers diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/case_officers/hearing-request-sent.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/case_officers/hearing-request-sent.yaml deleted file mode 100644 index 9016a7f..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/case_officers/hearing-request-sent.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/case_officers/hearing-request.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/case_officers/hearing-request.yaml deleted file mode 100644 index 40d8c20..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/case_officers/hearing-request.yaml +++ /dev/null @@ -1,40 +0,0 @@ -followup: false -name: Hearing request? -description: '' -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: To ask the road authority, the fire service, the heritage office or the county, and go on when the deadline has passed - description: For A case officer who is obliged to ask another authority about an application. - action: /case_officers/hearing-request-sent - consequence: - - Send - record_as: hearing_answers - features: - - name: What happens next - description: It is asked, and ends answered or deadline passed without an answer. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: application_reference - label: Application reference - type: text - - name: agency - label: Agency - type: select - options: - - Road authority - - Fire service - - Heritage office - - County - - name: what_we_ask - label: What we ask - type: textarea - - name: answer_by - label: Answer by - type: date - optional: true diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/case_officers/index.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/case_officers/index.yaml deleted file mode 100644 index 498b4bf..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/case_officers/index.yaml +++ /dev/null @@ -1,368 +0,0 @@ -name: What needs doing? -description: Everything case officers looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Appeals - description: Sent in by Anyone with an interest in a decision, the applicant or a neighbour. - action: /case_officers - consequence: - - Confirm - features: - - name: Appeals - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: appeals - requires_group: case_officers - transitions: - - from: open - to: under_review - label: We are going through it ourselves - - from: open - to: dismissed - label: Dismissed - - from: under_review - to: sent_to_board - label: Sent to the appeals board - - from: under_review - to: dismissed - label: Dismissed -- name: Applications - description: Sent in by A homeowner who wants a garage, an extension, a new window or another change to their property or An approved architect or engineering firm filing on behalf of an owner. - action: /case_officers - consequence: - - Confirm - features: - - name: Applications - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: applications - requires_group: case_officers - transitions: - - from: complete - to: in_hearing - label: Out to neighbours and agencies - - from: complete - to: withdrawn - label: Withdrawn - - from: complete - to: papers_missing - label: Papers missing, clock stopped - - from: hearing_over - to: recommended - label: Recommendation written - - from: hearing_over - to: withdrawn - label: Withdrawn - - from: in_hearing - to: hearing_over - label: Hearing over - - from: in_hearing - to: withdrawn - label: Withdrawn - - from: in_hearing - to: papers_missing - label: Papers missing, clock stopped - - from: open - to: complete - label: Complete, clock running - - from: open - to: withdrawn - label: Withdrawn - - from: open - to: papers_missing - label: Papers missing, clock stopped - - from: papers_missing - to: complete - label: Complete, clock running - - from: papers_missing - to: withdrawn - label: Withdrawn - - from: papers_received - to: complete - label: Complete, clock running - - from: papers_received - to: withdrawn - label: Withdrawn - - from: papers_received - to: papers_missing - label: Papers missing, clock stopped - - from: recommended - to: withdrawn - label: Withdrawn -- name: Approved firm requests - description: Sent in by An architect or engineering firm that wants to file applications for owners. - action: /case_officers - consequence: - - Confirm - features: - - name: Approved firm requests - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: approved_firm_requests - requires_group: case_officers - transitions: - - from: open - to: checked - label: Registration, insurance and qualifications checked -- name: Completion certificates - description: Sent in by An approved firm whose work on a case is done. - action: /case_officers - consequence: - - Confirm - features: - - name: Completion certificates - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: completion_certificates - requires_group: case_officers - transitions: - - from: open - to: checked - label: Inspections and outstanding work checked -- name: Exemptions - description: Sent in by An applicant whose plans break the zoning rules. - action: /case_officers - consequence: - - Confirm - features: - - name: Exemptions - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: exemptions - requires_group: case_officers - transitions: - - from: county_asked - to: county_heard - label: County has answered or its deadline has passed - - from: open - to: county_asked - label: County asked -- name: Hearing answers - description: Sent in by A case officer who is obliged to ask another authority about an application. - action: /case_officers - consequence: - - Confirm - features: - - name: Hearing answers - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: hearing_answers - requires_group: case_officers - transitions: - - from: open - to: answered - label: Answered - - from: open - to: no_answer - label: Deadline passed without an answer -- name: Illegal building - description: Sent in by Someone who sees something going up behind their fence without permission or The front desk, when someone rings or comes in about building without permission. - action: /case_officers - consequence: - - Confirm - features: - - name: Illegal building - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: illegal_building - requires_group: case_officers - transitions: - - from: explained - to: applied_for - label: Applied for properly - - from: explained - to: taken_down - label: Taken down - - from: explained - to: nothing_illegal - label: Nothing illegal found - - from: fined - to: applied_for - label: Applied for properly - - from: fined - to: taken_down - label: Taken down - - from: inspected - to: owner_written_to - label: Owner written to - - from: inspected - to: nothing_illegal - label: Nothing illegal found - - from: open - to: nothing_illegal - label: Nothing illegal found - - from: owner_written_to - to: explained - label: Owner has explained -- name: Inspections - description: Sent in by An inspector on site, writing on a phone in a cold wind. - action: /case_officers - consequence: - - Confirm - features: - - name: Inspections - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: inspections - requires_group: case_officers - transitions: [] -- name: Objections - description: Sent in by A neighbour who got a notice in the post and does not agree with what is planned next door. - action: /case_officers - consequence: - - Confirm - features: - - name: Objections - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: objections - requires_group: case_officers - transitions: - - from: answered - to: addressed - label: Addressed in the decision - - from: open - to: registered - label: Registered on the case - - from: registered - to: answered - label: Answered by the applicant - - from: registered - to: addressed - label: Addressed in the decision -- name: Paper objections - description: Sent in by The front desk, when an objection comes in on paper or over the counter. - action: /case_officers - consequence: - - Confirm - features: - - name: Paper objections - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: paper_objections - requires_group: case_officers - transitions: - - from: answered - to: addressed - label: Addressed in the decision - - from: open - to: registered - label: Registered on the case - - from: registered - to: answered - label: Answered by the applicant - - from: registered - to: addressed - label: Addressed in the decision -- name: Pre application meetings - description: Sent in by Anyone who wants to sit down with us before they spend money on drawings. - action: /case_officers - consequence: - - Confirm - features: - - name: Pre application meetings - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: pre_application_meetings - requires_group: case_officers - transitions: - - from: met - to: written_up - label: Written down and sent - - from: open - to: scheduled - label: Time found - - from: open - to: cancelled - label: Cancelled - - from: scheduled - to: met - label: Meeting held - - from: scheduled - to: cancelled - label: Cancelled -- name: Temporary permissions - description: Sent in by An approved firm whose client wants to move in before everything is done. - action: /case_officers - consequence: - - Confirm - features: - - name: Temporary permissions - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: temporary_permissions - requires_group: case_officers - transitions: - - from: open - to: checked - label: Inspections and outstanding work checked -- name: To ask the road authority, the fire service, the heritage office or the county, and go on when the deadline has passed - description: For A case officer who is obliged to ask another authority about an application. - action: /case_officers/hearing-request - consequence: - - Open -- name: Invite someone into Case officers - description: They get an account, a place in Case officers, and a one-time link to set their own password or passkey. - action: /case_officers - consequence: - - Invite - invite: - group: case_officers - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite and where it stands. A link that runs out unused can be sent again. - action: /case_officers - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation. It is done by itself when the person signs in, and expired when the link ran out unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: case_officers - transitions: - - from: open - to: done - label: Is in - - from: expired - to: open - label: Send again - - from: expired - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/decide/application.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/decide/application.yaml deleted file mode 100644 index 7a7bc3b..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/decide/application.yaml +++ /dev/null @@ -1,26 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Papers received - description: '' - self_transition: - bucket: applications - to: papers_received - from: - - open - - papers_missing - label: Papers received -- name: Withdrawn - description: '' - self_transition: - bucket: applications - to: withdrawn - from: - - complete - - hearing_over - - in_hearing - - open - - papers_missing - - papers_received - - recommended - label: Withdrawn diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/decide/firm-application.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/decide/firm-application.yaml deleted file mode 100644 index 7a7bc3b..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/decide/firm-application.yaml +++ /dev/null @@ -1,26 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Papers received - description: '' - self_transition: - bucket: applications - to: papers_received - from: - - open - - papers_missing - label: Papers received -- name: Withdrawn - description: '' - self_transition: - bucket: applications - to: withdrawn - from: - - complete - - hearing_over - - in_hearing - - open - - papers_missing - - papers_received - - recommended - label: Withdrawn diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/decide/pre-application-meeting.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/decide/pre-application-meeting.yaml deleted file mode 100644 index 0e19316..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/decide/pre-application-meeting.yaml +++ /dev/null @@ -1,12 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Cancelled - description: '' - self_transition: - bucket: pre_application_meetings - to: cancelled - from: - - open - - scheduled - label: Cancelled diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/firm/index.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/firm/index.yaml deleted file mode 100644 index 9878372..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/firm/index.yaml +++ /dev/null @@ -1,67 +0,0 @@ -name: What do you need? -description: For You are an architect or an engineering firm filing on behalf of owners. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: To file a building application for a client and see what is missing - description: For An approved architect or engineering firm filing on behalf of an owner. - action: /approved_firms/firm-application - consequence: - - Send -- name: A completion certificate for the finished work - description: For An approved firm whose work on a case is done. - action: /approved_firms/completion-certificate - consequence: - - Send -- name: A temporary permission to use the building - description: For An approved firm whose client wants to move in before everything is done. - action: /approved_firms/temporary-permission - consequence: - - Send -- name: To be approved by us and put on the list of firms that may file - description: For An architect or engineering firm that wants to file applications for owners. - action: /received/firm-approval - consequence: - - Send - record_as: approved_firm_requests - features: - - name: What happens next - description: It is received, then registration, insurance and qualifications checked, and ends on the list or refused. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: firm - label: Firm - type: text - - name: name - label: Name - type: text - - name: email - label: Email - type: email - - name: registration_number - label: Registration number - type: text - - name: insurance - label: Insurance - type: text - - name: qualified_for - label: Qualified for - type: select - options: - - Applying on behalf of owners - - Architectural design - - Structural engineering - - Fire safety design - - Geotechnical engineering - - Carrying out the work - - Independent control - multiple: true - - name: phone - label: Phone - type: tel - optional: true diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/_section.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/_section.yaml deleted file mode 100644 index 8b76bf9..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: front_desk diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/index.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/index.yaml deleted file mode 100644 index 9511c12..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/index.yaml +++ /dev/null @@ -1,215 +0,0 @@ -name: What needs doing? -description: Everything front desk looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Appeals - description: Sent in by Anyone with an interest in a decision, the applicant or a neighbour. - action: /front_desk - consequence: - - Confirm - features: - - name: Appeals - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: appeals - requires_group: front_desk - transitions: [] -- name: Applications - description: Sent in by A homeowner who wants a garage, an extension, a new window or another change to their property or An approved architect or engineering firm filing on behalf of an owner. - action: /front_desk - consequence: - - Confirm - features: - - name: Applications - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: applications - requires_group: front_desk - transitions: [] -- name: Approved firm requests - description: Sent in by An architect or engineering firm that wants to file applications for owners. - action: /front_desk - consequence: - - Confirm - features: - - name: Approved firm requests - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: approved_firm_requests - requires_group: front_desk - transitions: [] -- name: Completion certificates - description: Sent in by An approved firm whose work on a case is done. - action: /front_desk - consequence: - - Confirm - features: - - name: Completion certificates - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: completion_certificates - requires_group: front_desk - transitions: [] -- name: Exemptions - description: Sent in by An applicant whose plans break the zoning rules. - action: /front_desk - consequence: - - Confirm - features: - - name: Exemptions - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: exemptions - requires_group: front_desk - transitions: [] -- name: Hearing answers - description: Sent in by A case officer who is obliged to ask another authority about an application. - action: /front_desk - consequence: - - Confirm - features: - - name: Hearing answers - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: hearing_answers - requires_group: front_desk - transitions: [] -- name: Illegal building - description: Sent in by Someone who sees something going up behind their fence without permission or The front desk, when someone rings or comes in about building without permission. - action: /front_desk - consequence: - - Confirm - features: - - name: Illegal building - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: illegal_building - requires_group: front_desk - transitions: [] -- name: Objections - description: Sent in by A neighbour who got a notice in the post and does not agree with what is planned next door. - action: /front_desk - consequence: - - Confirm - features: - - name: Objections - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: objections - requires_group: front_desk - transitions: - - from: open - to: registered - label: Registered on the case -- name: Paper objections - description: Sent in by The front desk, when an objection comes in on paper or over the counter. - action: /front_desk - consequence: - - Confirm - features: - - name: Paper objections - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: paper_objections - requires_group: front_desk - transitions: - - from: open - to: registered - label: Registered on the case -- name: Pre application meetings - description: Sent in by Anyone who wants to sit down with us before they spend money on drawings. - action: /front_desk - consequence: - - Confirm - features: - - name: Pre application meetings - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: pre_application_meetings - requires_group: front_desk - transitions: [] -- name: Temporary permissions - description: Sent in by An approved firm whose client wants to move in before everything is done. - action: /front_desk - consequence: - - Confirm - features: - - name: Temporary permissions - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: temporary_permissions - requires_group: front_desk - transitions: [] -- name: To put the objection on the right case straight away, instead of stapling it to a folder - description: For The front desk, when an objection comes in on paper or over the counter. - action: /front_desk/logged-objection - consequence: - - Open -- name: To log the report so an inspector goes and looks - description: For The front desk, when someone rings or comes in about building without permission. - action: /front_desk/logged-report - consequence: - - Open -- name: Invite someone into Front desk - description: They get an account, a place in Front desk, and a one-time link to set their own password or passkey. - action: /front_desk - consequence: - - Invite - invite: - group: front_desk - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite and where it stands. A link that runs out unused can be sent again. - action: /front_desk - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation. It is done by itself when the person signs in, and expired when the link ran out unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: front_desk - transitions: - - from: open - to: done - label: Is in - - from: expired - to: open - label: Send again - - from: expired - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/logged-objection-sent.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/logged-objection-sent.yaml deleted file mode 100644 index 9016a7f..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/logged-objection-sent.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/logged-objection.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/logged-objection.yaml deleted file mode 100644 index 8621fe7..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/logged-objection.yaml +++ /dev/null @@ -1,43 +0,0 @@ -followup: false -name: Logged objection? -description: '' -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: To put the objection on the right case straight away, instead of stapling it to a folder - description: For The front desk, when an objection comes in on paper or over the counter. - action: /front_desk/logged-objection-sent - consequence: - - Send - record_as: paper_objections - features: - - name: What happens next - description: It is received, then registered on the case, then answered by the applicant, and ends addressed in the decision. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: application_reference - label: Application reference - type: text - - name: name - label: Name - type: text - value: '{user.name}' - - name: objection - label: Objection - type: textarea - - name: received_on - label: Received on - type: date - - name: your_property - label: Your property - type: text - optional: true - - name: phone - label: Phone - type: tel - optional: true diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/logged-report-sent.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/logged-report-sent.yaml deleted file mode 100644 index 9016a7f..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/logged-report-sent.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/logged-report.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/logged-report.yaml deleted file mode 100644 index 2d33261..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/front_desk/logged-report.yaml +++ /dev/null @@ -1,41 +0,0 @@ -followup: false -name: Logged report? -description: '' -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: To log the report so an inspector goes and looks - description: For The front desk, when someone rings or comes in about building without permission. - action: /front_desk/logged-report-sent - consequence: - - Send - record_as: illegal_building - features: - - name: What happens next - description: It is reported, then we have been and looked, then owner written to, then owner has explained, then weekly fine running, and ends applied for properly, taken down or nothing illegal found. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: where - label: Where - type: text - - name: what_is_being_built - label: What is being built - type: textarea - - name: place - label: Place - type: location - optional: true - - name: name - label: Name - type: text - optional: true - value: '{user.name}' - - name: phone - label: Phone - type: tel - optional: true diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/head_of_section/_section.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/head_of_section/_section.yaml deleted file mode 100644 index ce54374..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/head_of_section/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: head_of_section diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/head_of_section/index.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/head_of_section/index.yaml deleted file mode 100644 index bcae9ca..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/head_of_section/index.yaml +++ /dev/null @@ -1,364 +0,0 @@ -name: What needs doing? -description: Everything head of section looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Appeals - description: Sent in by Anyone with an interest in a decision, the applicant or a neighbour. - action: /head_of_section - consequence: - - Confirm - features: - - name: Appeals - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: appeals - requires_group: head_of_section - transitions: - - from: under_review - to: decision_changed - label: We changed our own decision -- name: Applications - description: Sent in by A homeowner who wants a garage, an extension, a new window or another change to their property or An approved architect or engineering firm filing on behalf of an owner. - action: /head_of_section - consequence: - - Confirm - features: - - name: Applications - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: applications - requires_group: head_of_section - transitions: - - from: recommended - to: approved - label: Approved - - from: recommended - to: approved_with_conditions - label: Approved with conditions - - from: recommended - to: refused - label: Refused -- name: Approved firm requests - description: Sent in by An architect or engineering firm that wants to file applications for owners. - action: /head_of_section - consequence: - - Confirm - features: - - name: Approved firm requests - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: approved_firm_requests - requires_group: head_of_section - transitions: - - from: checked - to: listed - label: On the list - - from: checked - to: refused - label: Refused - - from: open - to: refused - label: Refused -- name: Completion certificates - description: Sent in by An approved firm whose work on a case is done. - action: /head_of_section - consequence: - - Confirm - features: - - name: Completion certificates - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: completion_certificates - requires_group: head_of_section - transitions: - - from: checked - to: issued - label: Certificate signed - - from: checked - to: refused - label: Refused - - from: open - to: refused - label: Refused -- name: Exemptions - description: Sent in by An applicant whose plans break the zoning rules. - action: /head_of_section - consequence: - - Confirm - features: - - name: Exemptions - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: exemptions - requires_group: head_of_section - transitions: - - from: county_asked - to: refused - label: Refused - - from: county_heard - to: granted - label: Granted - - from: county_heard - to: refused - label: Refused - - from: open - to: refused - label: Refused -- name: Illegal building - description: Sent in by Someone who sees something going up behind their fence without permission or The front desk, when someone rings or comes in about building without permission. - action: /head_of_section - consequence: - - Confirm - features: - - name: Illegal building - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: illegal_building - requires_group: head_of_section - transitions: - - from: explained - to: fined - label: Weekly fine running -- name: Inspections - description: Sent in by An inspector on site, writing on a phone in a cold wind. - action: /head_of_section - consequence: - - Confirm - features: - - name: Inspections - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: inspections - requires_group: head_of_section - transitions: [] -- name: Objections - description: Sent in by A neighbour who got a notice in the post and does not agree with what is planned next door. - action: /head_of_section - consequence: - - Confirm - features: - - name: Objections - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: objections - requires_group: head_of_section - transitions: [] -- name: Paper objections - description: Sent in by The front desk, when an objection comes in on paper or over the counter. - action: /head_of_section - consequence: - - Confirm - features: - - name: Paper objections - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: paper_objections - requires_group: head_of_section - transitions: [] -- name: Temporary permissions - description: Sent in by An approved firm whose client wants to move in before everything is done. - action: /head_of_section - consequence: - - Confirm - features: - - name: Temporary permissions - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: temporary_permissions - requires_group: head_of_section - transitions: - - from: checked - to: issued - label: Temporary permission signed - - from: checked - to: refused - label: Refused - - from: open - to: refused - label: Refused -- name: Invite someone into Agencies - description: They get an account, a place in Agencies, and a one-time link to set their own password or passkey. - action: /head_of_section - consequence: - - Invite - invite: - group: agencies - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Appeals board - description: They get an account, a place in Appeals board, and a one-time link to set their own password or passkey. - action: /head_of_section - consequence: - - Invite - invite: - group: appeals_board - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Approved firms - description: They get an account, a place in Approved firms, and a one-time link to set their own password or passkey. - action: /head_of_section - consequence: - - Invite - invite: - group: approved_firms - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Case officers - description: They get an account, a place in Case officers, and a one-time link to set their own password or passkey. - action: /head_of_section - consequence: - - Invite - invite: - group: case_officers - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Front desk - description: They get an account, a place in Front desk, and a one-time link to set their own password or passkey. - action: /head_of_section - consequence: - - Invite - invite: - group: front_desk - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Head of section - description: They get an account, a place in Head of section, and a one-time link to set their own password or passkey. - action: /head_of_section - consequence: - - Invite - invite: - group: head_of_section - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invite someone into Inspectors - description: They get an account, a place in Inspectors, and a one-time link to set their own password or passkey. - action: /head_of_section - consequence: - - Invite - invite: - group: inspectors - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite and where it stands. A link that runs out unused can be sent again. - action: /head_of_section - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation. It is done by itself when the person signs in, and expired when the link ran out unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: head_of_section - transitions: - - from: open - to: done - label: Is in - - from: expired - to: open - label: Send again - - from: expired - to: done - label: Is in -- name: Suggested changes to the site - description: What the people listed as responsible for a question have suggested changing. They are told each time a suggestion moves. - action: /head_of_section - consequence: - - Confirm - features: - - name: Suggestions - description: Each row is one suggestion, with the page it is about. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: portal_edit_suggestions - requires_group: head_of_section - transitions: - - from: open - to: discussed - label: We are looking at it - - from: open - to: done - label: The change is made - - from: open - to: declined - label: Will not be done - - from: discussed - to: done - label: The change is made - - from: discussed - to: declined - label: Will not be done diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/index.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/index.yaml deleted file mode 100644 index 146dda2..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/index.yaml +++ /dev/null @@ -1,104 +0,0 @@ -name: What brings you here? -description: | - We are the building authority for a municipality of twenty-one thousand people. Anyone who wants to build, demolish, divide a property or change what a building is used for has to come to us first. We check the drawings against the zoning map and the building regulations, we let the neighbours and the other authorities have their say, and then we approve or refuse. We also decide exemptions from the zoning rules, we inspect what is actually built, we sign off finished work, and we deal with building that was never applied for. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: What we do - description: '' - features: - - name: Permission to build, demolish, divide a property or change what a building is used for - description: | - We check your drawings against the zoning map and the building regulations, let the neighbours and the other authorities have their say, and then approve or refuse. Every case is on the list here, so you and your neighbours can follow it the whole way, and object to it or appeal it from its own row. - - name: To file a building application for a client and see what is missing - description: | - Approved firms file applications for their clients here, see what is missing and ask for the completion certificate when the work is done. -- name: Latest from Vestmark kommune - Building and Planning - description: '' - features: - - name: Latest applications - description: What A homeowner who wants a garage, an extension, a new window or another change to their property or An approved architect or engineering firm filing on behalf of an owner sent in that is now received, papers missing, clock stopped, missing papers sent in, complete, clock running, out to neighbours and agencies, hearing over, recommendation written, approved, approved with conditions or refused. [All applications](/status/applications) - icon: lucide:list - resource: - source: - kind: kv - bucket: applications - public: true - states: - - open - - papers_missing - - papers_received - - complete - - in_hearing - - hearing_over - - recommended - - approved - - approved_with_conditions - - refused - empty: Nothing here yet. - jq: 'sort_by(.submitted_ms) | reverse | .[:3] | .[] | .responses |= {enclosed: .enclosed, kind_of_work: .kind_of_work, place: .place, property_address: .property_address, what_you_want_to_do: .what_you_want_to_do}' - link: - to: /status/applications/{id} - label: An exemption from the zoning rules, decided alongside their application - - name: Latest approved firm requests - description: What An architect or engineering firm that wants to file applications for owners sent in that is now on the list. [All approved firm requests](/status/approved_firm_requests) - icon: lucide:list - resource: - source: - kind: kv - bucket: approved_firm_requests - public: true - states: - - listed - empty: Nothing here yet. - jq: 'sort_by(.submitted_ms) | reverse | .[:3] | .[] | .responses |= {firm: .firm, qualified_for: .qualified_for, registration_number: .registration_number}' -- name: Build - description: For You want to build, demolish, divide a property or change what a building is used for. - action: /build - consequence: - - Continue - features: - - name: '' - description: A meeting with a case officer, and a written note of what we told them, Permission to build, demolish, divide a property or change what a building is used for. -- name: Firm - description: For You are an architect or an engineering firm filing on behalf of owners. - action: /firm - consequence: - - Continue - features: - - name: '' - description: To file a building application for a client and see what is missing, A completion certificate for the finished work, A temporary permission to use the building, To be approved by us and put on the list of firms that may file. -- name: To tell us, so that we go and look - description: For Someone who sees something going up behind their fence without permission. - action: /received/illegal-building-report - consequence: - - Send - record_as: illegal_building - features: - - name: What happens next - description: It is reported, then we have been and looked, then owner written to, then owner has explained, then weekly fine running, and ends applied for properly, taken down or nothing illegal found. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: where - label: Where - type: text - - name: what_is_being_built - label: What is being built - type: textarea - - name: place - label: Place - type: location - optional: true - - name: name - label: Name - type: text - optional: true - - name: phone - label: Phone - type: tel - optional: true diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/inspectors/_section.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/inspectors/_section.yaml deleted file mode 100644 index d41d53f..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/inspectors/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: inspectors diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/inspectors/index.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/inspectors/index.yaml deleted file mode 100644 index 8212d37..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/inspectors/index.yaml +++ /dev/null @@ -1,132 +0,0 @@ -name: What needs doing? -description: Everything inspectors looks after. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Applications - description: Sent in by A homeowner who wants a garage, an extension, a new window or another change to their property or An approved architect or engineering firm filing on behalf of an owner. - action: /inspectors - consequence: - - Confirm - features: - - name: Applications - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: applications - requires_group: inspectors - transitions: [] -- name: Completion certificates - description: Sent in by An approved firm whose work on a case is done. - action: /inspectors - consequence: - - Confirm - features: - - name: Completion certificates - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: completion_certificates - requires_group: inspectors - transitions: [] -- name: Illegal building - description: Sent in by Someone who sees something going up behind their fence without permission or The front desk, when someone rings or comes in about building without permission. - action: /inspectors - consequence: - - Confirm - features: - - name: Illegal building - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: illegal_building - requires_group: inspectors - transitions: - - from: open - to: inspected - label: We have been and looked -- name: Inspections - description: Sent in by An inspector on site, writing on a phone in a cold wind. - action: /inspectors - consequence: - - Confirm - features: - - name: Inspections - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: inspections - requires_group: inspectors - transitions: - - from: open - to: to_put_right - label: To be put right, then we go back - - from: open - to: as_approved - label: As approved - - from: to_put_right - to: as_approved - label: As approved -- name: Temporary permissions - description: Sent in by An approved firm whose client wants to move in before everything is done. - action: /inspectors - consequence: - - Confirm - features: - - name: Temporary permissions - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: temporary_permissions - requires_group: inspectors - transitions: [] -- name: To write up what was found on a case and set a date for what must be put right - description: For An inspector on site, writing on a phone in a cold wind. - action: /inspectors/inspection - consequence: - - Open -- name: Invite someone into Inspectors - description: They get an account, a place in Inspectors, and a one-time link to set their own password or passkey. - action: /inspectors - consequence: - - Invite - invite: - group: inspectors - features: - - name: Who - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invitations sent - description: Each invite and where it stands. A link that runs out unused can be sent again. - action: /inspectors - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation. It is done by itself when the person signs in, and expired when the link ran out unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: inspectors - transitions: - - from: open - to: done - label: Is in - - from: expired - to: open - label: Send again - - from: expired - to: done - label: Is in diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/inspectors/inspection-sent.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/inspectors/inspection-sent.yaml deleted file mode 100644 index 1dea75b..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/inspectors/inspection-sent.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: What happens now? -description: It has reached our inspectors. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/inspectors/inspection.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/inspectors/inspection.yaml deleted file mode 100644 index bb66bad..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/inspectors/inspection.yaml +++ /dev/null @@ -1,43 +0,0 @@ -followup: false -name: Inspection? -description: '' -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: To write up what was found on a case and set a date for what must be put right - description: For An inspector on site, writing on a phone in a cold wind. - action: /inspectors/inspection-sent - consequence: - - Send - record_as: inspections - features: - - name: What happens next - description: It is inspected, then to be put right, then we go back, and ends as approved. - icon: lucide:route - - name: Who reads it - description: Inspectors. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: application_reference - label: Application reference - type: text - - name: finding - label: Finding - type: select - options: - - As approved - - Something is wrong - - name: what_is_wrong - label: What is wrong - type: textarea - optional: true - - name: put_right_by - label: Put right by - type: date - optional: true - - name: place - label: Place - type: location - optional: true diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/appeal.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/appeal.yaml deleted file mode 100644 index 9016a7f..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/appeal.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/application.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/application.yaml deleted file mode 100644 index fce015d..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/application.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: See all applications - description: '' - action: /status/applications - consequence: - - Open diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/exemption.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/exemption.yaml deleted file mode 100644 index 9016a7f..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/exemption.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/firm-approval.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/firm-approval.yaml deleted file mode 100644 index ba32567..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/firm-approval.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. -- name: See all approved firm requests - description: '' - action: /status/approved_firm_requests - consequence: - - Open diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/illegal-building-report.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/illegal-building-report.yaml deleted file mode 100644 index 9016a7f..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/illegal-building-report.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/objection.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/objection.yaml deleted file mode 100644 index 9016a7f..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/objection.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/pre-application-meeting.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/pre-application-meeting.yaml deleted file mode 100644 index 9016a7f..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/received/pre-application-meeting.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: What happens now? -description: It has reached our case officers. -alternatives: -- name: We read it and come back to you - description: Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example. diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/status/applications/[key].yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/status/applications/[key].yaml deleted file mode 100644 index b42b8a1..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/status/applications/[key].yaml +++ /dev/null @@ -1,126 +0,0 @@ -name: An exemption from the zoning rules, decided alongside their application? -description: For An applicant whose plans break the zoning rules, or A neighbour who got a notice in the post and does not agree with what is planned next door, or Anyone with an interest in a decision, the applicant or a neighbour. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: An exemption from the zoning rules, decided alongside their application - description: For An applicant whose plans break the zoning rules. - action: /received/exemption - consequence: - - Send - record_as: exemptions - features: - - name: What you need - description: An application with us; the exemption rides along with it and is asked for from its row on the list of cases. - icon: lucide:key - - name: What happens next - description: It is received, then county asked, then county has answered or its deadline has passed, and ends granted or refused. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: name - label: Name - type: text - value: '{user.name}' - - name: email - label: Email - type: email - value: '{user.email}' - - name: rule_it_breaks - label: Rule it breaks - type: text - - name: why_it_should_be_allowed - label: Why it should be allowed - type: textarea - - name: applications - type: record - of: applications - value: '{key}' -- name: To object to an application and have the objection answered in the decision - description: For A neighbour who got a notice in the post and does not agree with what is planned next door. - action: /received/objection - consequence: - - Send - record_as: objections - features: - - name: What you need - description: The application must still be out for hearing; objections are taken until the six weeks are up. - icon: lucide:key - - name: What happens next - description: It is received, then registered on the case, then answered by the applicant, and ends addressed in the decision. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: name - label: Name - type: text - value: '{user.name}' - - name: email - label: Email - type: email - value: '{user.email}' - - name: your_property - label: Your property - type: text - - name: objection - label: Objection - type: textarea - - name: phone - label: Phone - type: tel - optional: true - - name: applications - type: record - of: applications - value: '{key}' -- name: To appeal a decision we have made - description: For Anyone with an interest in a decision, the applicant or a neighbour. - action: /received/appeal - consequence: - - Send - record_as: appeals - features: - - name: What you need - description: A decision on the application, made no more than three weeks ago. - icon: lucide:key - - name: What happens next - description: It is received, then we are going through it ourselves, then sent to the appeals board, and ends we changed our own decision, decision upheld by the board, decision overturned by the board or dismissed. - icon: lucide:route - - name: Who reads it - description: Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example. - icon: lucide:users - - name: Details - requirements: - - name: name - label: Name - type: text - value: '{user.name}' - - name: email - label: Email - type: email - value: '{user.email}' - - name: your_interest - label: Your interest - type: select - options: - - I am the applicant - - I am a neighbour - - Other - - name: grounds - label: Grounds - type: textarea - - name: phone - label: Phone - type: tel - optional: true - - name: applications - type: record - of: applications - value: '{key}' diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/status/applications/index.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/status/applications/index.yaml deleted file mode 100644 index 9759745..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/status/applications/index.yaml +++ /dev/null @@ -1,32 +0,0 @@ -name: What has been sent in about applications? -description: What A homeowner who wants a garage, an extension, a new window or another change to their property or An approved architect or engineering firm filing on behalf of an owner sent in that is now received, papers missing, clock stopped, missing papers sent in, complete, clock running, out to neighbours and agencies, hearing over, recommendation written, approved, approved with conditions or refused. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Applications - description: '' - features: - - name: Applications - description: Each row is one case and the stage it has reached. Names and contact details are not shown here. - resource: - source: - kind: kv - bucket: applications - public: true - states: - - open - - papers_missing - - papers_received - - complete - - in_hearing - - hearing_over - - recommended - - approved - - approved_with_conditions - - refused - empty: Nothing here yet. - jq: 'sort_by(.submitted_ms) | reverse | .[] | .responses |= {enclosed: .enclosed, kind_of_work: .kind_of_work, place: .place, property_address: .property_address, what_you_want_to_do: .what_you_want_to_do}' - link: - to: /status/applications/{id} - label: An exemption from the zoning rules, decided alongside their application diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/status/approved_firm_requests/index.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/status/approved_firm_requests/index.yaml deleted file mode 100644 index aad09c4..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/questions/status/approved_firm_requests/index.yaml +++ /dev/null @@ -1,20 +0,0 @@ -name: What has been sent in about approved firm requests? -description: What An architect or engineering firm that wants to file applications for owners sent in that is now on the list. -responsible: - name: Solveig Hauge - contact: byggesak@vestmark.example -alternatives: -- name: Approved firm requests - description: '' - features: - - name: Approved firm requests - description: Each row is one case and the stage it has reached. Names and contact details are not shown here. - resource: - source: - kind: kv - bucket: approved_firm_requests - public: true - states: - - listed - empty: Nothing here yet. - jq: 'sort_by(.submitted_ms) | reverse | .[] | .responses |= {firm: .firm, qualified_for: .qualified_for, registration_number: .registration_number}' diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/site.yaml b/vendor/trainer/runs/permits-plan-2026-09-30/site/site.yaml deleted file mode 100644 index 55d1f1f..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/site.yaml +++ /dev/null @@ -1,16 +0,0 @@ -title: Vestmark kommune - Building and Planning -lang: en -mail: - from: Vestmark kommune Building and Planning - reply_to: byggesak@vestmark.example - invite: - subject: Your account at {site_name} - body: |- - Hello {name}, - - {site_name} has made you an account and added you to {group}. Your username is {username}. - - Set your password here before {expires}: - {link} - - After that you sign in at {site}. diff --git a/vendor/trainer/runs/permits-plan-2026-09-30/site/words.json b/vendor/trainer/runs/permits-plan-2026-09-30/site/words.json deleted file mode 100644 index 4bd7347..0000000 --- a/vendor/trainer/runs/permits-plan-2026-09-30/site/words.json +++ /dev/null @@ -1,1697 +0,0 @@ -{ - "aggregates.yaml": { - "appeals": { - "decision_changed": { - "subject": "Vestmark kommune - Building and Planning: Decision changed", - "body": "Hello {name},\n\nWhat you sent about To appeal a decision we have made is now we changed our own decision.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "dismissed": { - "subject": "Vestmark kommune - Building and Planning: Dismissed", - "body": "Hello {name},\n\nWhat you sent about To appeal a decision we have made is now dismissed.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello {name},\n\nWe have received what you sent about To appeal a decision we have made.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "overturned": { - "subject": "Vestmark kommune - Building and Planning: Overturned", - "body": "Hello {name},\n\nWhat you sent about To appeal a decision we have made is now decision overturned by the board.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "sent_to_board": { - "subject": "Vestmark kommune - Building and Planning: Sent to board", - "body": "Hello {name},\n\nWhat you sent about To appeal a decision we have made is now sent to the appeals board.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "upheld": { - "subject": "Vestmark kommune - Building and Planning: Upheld", - "body": "Hello {name},\n\nWhat you sent about To appeal a decision we have made is now decision upheld by the board.\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "applications": { - "approved": { - "subject": "Vestmark kommune - Building and Planning: Approved", - "body": "Hello {name},\n\nWhat you sent about Permission to build, demolish, divide a property or change what a building is used for is now approved.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "approved_with_conditions": { - "subject": "Vestmark kommune - Building and Planning: Approved with conditions", - "body": "Hello {name},\n\nWhat you sent about Permission to build, demolish, divide a property or change what a building is used for is now approved with conditions.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "complete": { - "subject": "Vestmark kommune - Building and Planning: Complete", - "body": "Hello {name},\n\nWhat you sent about Permission to build, demolish, divide a property or change what a building is used for is now complete, clock running.\n\nWhat you can do next: {site}/decide/application?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "in_hearing": { - "subject": "Vestmark kommune - Building and Planning: In hearing", - "body": "Hello {name},\n\nWhat you sent about Permission to build, demolish, divide a property or change what a building is used for is now out to neighbours and agencies.\n\nWhat you can do next: {site}/decide/application?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello {name},\n\nWe have received what you sent about Permission to build, demolish, divide a property or change what a building is used for.\n\nWhat you can do next: {site}/decide/application?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "papers_missing": { - "subject": "Vestmark kommune - Building and Planning: Papers missing", - "body": "Hello {name},\n\nWhat you sent about Permission to build, demolish, divide a property or change what a building is used for is now papers missing, clock stopped.\n\nWhat you can do next: {site}/decide/application?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "refused": { - "subject": "Vestmark kommune - Building and Planning: Refused", - "body": "Hello {name},\n\nWhat you sent about Permission to build, demolish, divide a property or change what a building is used for is now refused.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "withdrawn": { - "subject": "Vestmark kommune - Building and Planning: Withdrawn", - "body": "Hello {name},\n\nWhat you sent about Permission to build, demolish, divide a property or change what a building is used for is now withdrawn.\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "approved_firm_requests": { - "listed": { - "subject": "Vestmark kommune - Building and Planning: Listed", - "body": "Hello {name},\n\nWhat you sent about To be approved by us and put on the list of firms that may file is now on the list.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello {name},\n\nWe have received what you sent about To be approved by us and put on the list of firms that may file.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "refused": { - "subject": "Vestmark kommune - Building and Planning: Refused", - "body": "Hello {name},\n\nWhat you sent about To be approved by us and put on the list of firms that may file is now refused.\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "completion_certificates": { - "issued": { - "subject": "Vestmark kommune - Building and Planning: Issued", - "body": "Hello {name},\n\nWhat you sent about A completion certificate for the finished work is now certificate signed.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello {name},\n\nWe have received what you sent about A completion certificate for the finished work.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "refused": { - "subject": "Vestmark kommune - Building and Planning: Refused", - "body": "Hello {name},\n\nWhat you sent about A completion certificate for the finished work is now refused.\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "exemptions": { - "county_asked": { - "subject": "Vestmark kommune - Building and Planning: County asked", - "body": "Hello {name},\n\nWhat you sent about An exemption from the zoning rules, decided alongside their application is now county asked.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "granted": { - "subject": "Vestmark kommune - Building and Planning: Granted", - "body": "Hello {name},\n\nWhat you sent about An exemption from the zoning rules, decided alongside their application is now granted.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello {name},\n\nWe have received what you sent about An exemption from the zoning rules, decided alongside their application.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "refused": { - "subject": "Vestmark kommune - Building and Planning: Refused", - "body": "Hello {name},\n\nWhat you sent about An exemption from the zoning rules, decided alongside their application is now refused.\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "objections": { - "addressed": { - "subject": "Vestmark kommune - Building and Planning: Addressed", - "body": "Hello {name},\n\nWhat you sent about To object to an application and have the objection answered in the decision is now addressed in the decision.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello {name},\n\nWe have received what you sent about To object to an application and have the objection answered in the decision.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "registered": { - "subject": "Vestmark kommune - Building and Planning: Registered", - "body": "A case in objections is now registered on the case: .\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "pre_application_meetings": { - "cancelled": { - "subject": "Vestmark kommune - Building and Planning: Cancelled", - "body": "Hello {name},\n\nWhat you sent about A meeting with a case officer, and a written note of what we told them is now cancelled.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello {name},\n\nWe have received what you sent about A meeting with a case officer, and a written note of what we told them.\n\nWhat you can do next: {site}/decide/pre-application-meeting?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "scheduled": { - "subject": "Vestmark kommune - Building and Planning: Scheduled", - "body": "Hello {name},\n\nWhat you sent about A meeting with a case officer, and a written note of what we told them is now time found.\n\nWhat you can do next: {site}/decide/pre-application-meeting?chain={chain}&email={email}\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "written_up": { - "subject": "Vestmark kommune - Building and Planning: Written up", - "body": "Hello {name},\n\nWhat you sent about A meeting with a case officer, and a written note of what we told them is now written down and sent.\n\nSolveig Hauge at byggesak@vestmark.example" - } - }, - "temporary_permissions": { - "issued": { - "subject": "Vestmark kommune - Building and Planning: Issued", - "body": "Hello {name},\n\nWhat you sent about A temporary permission to use the building is now temporary permission signed.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "open": { - "subject": "Vestmark kommune - Building and Planning: Open", - "body": "Hello {name},\n\nWe have received what you sent about A temporary permission to use the building.\n\nSolveig Hauge at byggesak@vestmark.example" - }, - "refused": { - "subject": "Vestmark kommune - Building and Planning: Refused", - "body": "Hello {name},\n\nWhat you sent about A temporary permission to use the building is now refused.\n\nSolveig Hauge at byggesak@vestmark.example" - } - } - }, - "questions/agencies/index.yaml": { - "question": "What needs doing?", - "description": "Everything agencies looks after.", - "confirm": "Confirm", - "buckets": { - "hearing_answers": { - "heading": "Hearing answers", - "description": "Sent in by A case officer who is obliged to ask another authority about an application.", - "moves": { - "open->answered": "Answered" - }, - "list_title": "Hearing answers", - "list_note": "Each row is one case. The buttons record what you have just done with it." - } - }, - "links": {}, - "invites": { - "agencies": { - "heading": "Invite someone into Agencies", - "description": "They get an account, a place in Agencies, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - } - }, - "invited": { - "heading": "Invitations sent", - "description": "Each invite and where it stands. A link that runs out unused can be sent again.", - "done": "Is in", - "again": "Send again", - "list_title": "Who has been invited", - "list_note": "Each row is one invitation. It is done by itself when the person signs in, and expired when the link ran out unused." - }, - "suggestions": null - }, - "questions/appeals_board/index.yaml": { - "question": "What needs doing?", - "description": "Everything appeals board looks after.", - "confirm": "Confirm", - "buckets": { - "appeals": { - "heading": "Appeals", - "description": "Sent in by Anyone with an interest in a decision, the applicant or a neighbour.", - "moves": { - "sent_to_board->upheld": "Decision upheld by the board", - "sent_to_board->overturned": "Decision overturned by the board" - }, - "list_title": "Appeals", - "list_note": "Each row is one case. The buttons record what you have just done with it." - } - }, - "links": {}, - "invites": { - "appeals_board": { - "heading": "Invite someone into Appeals board", - "description": "They get an account, a place in Appeals board, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - } - }, - "invited": { - "heading": "Invitations sent", - "description": "Each invite and where it stands. A link that runs out unused can be sent again.", - "done": "Is in", - "again": "Send again", - "list_title": "Who has been invited", - "list_note": "Each row is one invitation. It is done by itself when the person signs in, and expired when the link ran out unused." - }, - "suggestions": null - }, - "questions/approved_firms/completion-certificate-sent.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example." - }, - "questions/approved_firms/completion-certificate.yaml": { - "heading": "A completion certificate for the finished work", - "description": "For An approved firm whose work on a case is done.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "What you need", - "requires_description": "Your firm must be on our list of approved firms, and the application must be approved; have its reference ready.", - "requires_icon": "key", - "road_title": "What happens next", - "road_description": "It is asked for, then inspections and outstanding work checked, and ends certificate signed or refused.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "name": "Name", - "email": "Email", - "application_reference": "Application reference", - "finished_on": "Finished on", - "what_was_built": "What was built", - "still_outstanding": "Still outstanding" - }, - "hints": { - "name": "", - "email": "", - "application_reference": "", - "finished_on": "", - "what_was_built": "", - "still_outstanding": "" - }, - "question": "Completion certificate?", - "page_description": "" - }, - "questions/approved_firms/firm-application-sent.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "see_all": { - "heading": "See all applications", - "description": "", - "button": "Open" - } - }, - "questions/approved_firms/firm-application.yaml": { - "heading": "To file a building application for a client and see what is missing", - "description": "For An approved architect or engineering firm filing on behalf of an owner.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "What you need", - "requires_description": "Your firm must be on our list of approved firms before it may file anything.", - "requires_icon": "key", - "road_title": "What happens next", - "road_description": "It is received, then papers missing, clock stopped, then missing papers sent in, then complete, clock running, then out to neighbours and agencies, then hearing over, then recommendation written, and ends approved, approved with conditions, refused or withdrawn.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "name": "Name", - "email": "Email", - "property_address": "Property address", - "kind_of_work": "Kind of work", - "what_you_want_to_do": "What you want to do", - "enclosed": "Enclosed", - "owner_name": "Owner name", - "phone": "Phone", - "place": "Place" - }, - "hints": { - "name": "", - "email": "", - "property_address": "", - "kind_of_work": "", - "what_you_want_to_do": "", - "enclosed": "", - "owner_name": "", - "phone": "", - "place": "" - }, - "question": "Firm application?", - "page_description": "" - }, - "questions/approved_firms/index.yaml": { - "question": "What needs doing?", - "description": "Everything approved firms looks after.", - "confirm": "Confirm", - "buckets": { - "objections": { - "heading": "Objections", - "description": "Sent in by A neighbour who got a notice in the post and does not agree with what is planned next door.", - "moves": { - "registered->answered": "Answered by the applicant" - }, - "list_title": "Objections", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "paper_objections": { - "heading": "Paper objections", - "description": "Sent in by The front desk, when an objection comes in on paper or over the counter.", - "moves": { - "registered->answered": "Answered by the applicant" - }, - "list_title": "Paper objections", - "list_note": "Each row is one case. The buttons record what you have just done with it." - } - }, - "links": { - "firm-application": { - "heading": "To file a building application for a client and see what is missing", - "description": "For An approved architect or engineering firm filing on behalf of an owner.", - "button": "Open" - }, - "completion-certificate": { - "heading": "A completion certificate for the finished work", - "description": "For An approved firm whose work on a case is done.", - "button": "Open" - }, - "temporary-permission": { - "heading": "A temporary permission to use the building", - "description": "For An approved firm whose client wants to move in before everything is done.", - "button": "Open" - } - }, - "invites": {}, - "invited": null, - "suggestions": null - }, - "questions/approved_firms/temporary-permission-sent.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example." - }, - "questions/approved_firms/temporary-permission.yaml": { - "heading": "A temporary permission to use the building", - "description": "For An approved firm whose client wants to move in before everything is done.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "What you need", - "requires_description": "Your firm must be on our list of approved firms, and the application must be approved; have its reference ready.", - "requires_icon": "key", - "road_title": "What happens next", - "road_description": "It is asked for, then inspections and outstanding work checked, and ends temporary permission signed or refused.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "name": "Name", - "email": "Email", - "application_reference": "Application reference", - "move_in_on": "Move in on", - "still_outstanding": "Still outstanding", - "finished_by": "Finished by" - }, - "hints": { - "name": "", - "email": "", - "application_reference": "", - "move_in_on": "", - "still_outstanding": "", - "finished_by": "" - }, - "question": "Temporary permission?", - "page_description": "" - }, - "questions/build/index.yaml": { - "question": "What do you need?", - "description": "For You want to build, demolish, divide a property or change what a building is used for.", - "needs": { - "pre-application-meeting": { - "heading": "A meeting with a case officer, and a written note of what we told them", - "description": "For Anyone who wants to sit down with us before they spend money on drawings.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is asked for, then time found, then meeting held, and ends written down and sent or cancelled.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "name": "Name", - "email": "Email", - "property_address": "Property address", - "what_you_plan": "What you plan", - "phone": "Phone", - "place": "Place" - }, - "hints": { - "name": "", - "email": "", - "property_address": "", - "what_you_plan": "", - "phone": "", - "place": "" - } - }, - "application": { - "heading": "Permission to build, demolish, divide a property or change what a building is used for", - "description": "For A homeowner who wants a garage, an extension, a new window or another change to their property.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is received, then papers missing, clock stopped, then missing papers sent in, then complete, clock running, then out to neighbours and agencies, then hearing over, then recommendation written, and ends approved, approved with conditions, refused or withdrawn.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "name": "Name", - "email": "Email", - "property_address": "Property address", - "kind_of_work": "Kind of work", - "what_you_want_to_do": "What you want to do", - "enclosed": "Enclosed", - "phone": "Phone", - "place": "Place" - }, - "hints": { - "name": "", - "email": "", - "property_address": "", - "kind_of_work": "", - "what_you_want_to_do": "", - "enclosed": "", - "phone": "", - "place": "" - } - } - } - }, - "questions/case_officers/hearing-request-sent.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example." - }, - "questions/case_officers/hearing-request.yaml": { - "heading": "To ask the road authority, the fire service, the heritage office or the county, and go on when the deadline has passed", - "description": "For A case officer who is obliged to ask another authority about an application.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is asked, and ends answered or deadline passed without an answer.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "application_reference": "Application reference", - "agency": "Agency", - "what_we_ask": "What we ask", - "answer_by": "Answer by" - }, - "hints": { - "application_reference": "", - "agency": "", - "what_we_ask": "", - "answer_by": "" - }, - "question": "Hearing request?", - "page_description": "" - }, - "questions/case_officers/index.yaml": { - "question": "What needs doing?", - "description": "Everything case officers looks after.", - "confirm": "Confirm", - "buckets": { - "appeals": { - "heading": "Appeals", - "description": "Sent in by Anyone with an interest in a decision, the applicant or a neighbour.", - "moves": { - "open->under_review": "We are going through it ourselves", - "open->dismissed": "Dismissed", - "under_review->sent_to_board": "Sent to the appeals board", - "under_review->dismissed": "Dismissed" - }, - "list_title": "Appeals", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "applications": { - "heading": "Applications", - "description": "Sent in by A homeowner who wants a garage, an extension, a new window or another change to their property or An approved architect or engineering firm filing on behalf of an owner.", - "moves": { - "complete->in_hearing": "Out to neighbours and agencies", - "complete->withdrawn": "Withdrawn", - "complete->papers_missing": "Papers missing, clock stopped", - "hearing_over->recommended": "Recommendation written", - "hearing_over->withdrawn": "Withdrawn", - "in_hearing->hearing_over": "Hearing over", - "in_hearing->withdrawn": "Withdrawn", - "in_hearing->papers_missing": "Papers missing, clock stopped", - "open->complete": "Complete, clock running", - "open->withdrawn": "Withdrawn", - "open->papers_missing": "Papers missing, clock stopped", - "papers_missing->complete": "Complete, clock running", - "papers_missing->withdrawn": "Withdrawn", - "papers_received->complete": "Complete, clock running", - "papers_received->withdrawn": "Withdrawn", - "papers_received->papers_missing": "Papers missing, clock stopped", - "recommended->withdrawn": "Withdrawn" - }, - "list_title": "Applications", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "approved_firm_requests": { - "heading": "Approved firm requests", - "description": "Sent in by An architect or engineering firm that wants to file applications for owners.", - "moves": { - "open->checked": "Registration, insurance and qualifications checked" - }, - "list_title": "Approved firm requests", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "completion_certificates": { - "heading": "Completion certificates", - "description": "Sent in by An approved firm whose work on a case is done.", - "moves": { - "open->checked": "Inspections and outstanding work checked" - }, - "list_title": "Completion certificates", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "exemptions": { - "heading": "Exemptions", - "description": "Sent in by An applicant whose plans break the zoning rules.", - "moves": { - "county_asked->county_heard": "County has answered or its deadline has passed", - "open->county_asked": "County asked" - }, - "list_title": "Exemptions", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "hearing_answers": { - "heading": "Hearing answers", - "description": "Sent in by A case officer who is obliged to ask another authority about an application.", - "moves": { - "open->answered": "Answered", - "open->no_answer": "Deadline passed without an answer" - }, - "list_title": "Hearing answers", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "illegal_building": { - "heading": "Illegal building", - "description": "Sent in by Someone who sees something going up behind their fence without permission or The front desk, when someone rings or comes in about building without permission.", - "moves": { - "explained->applied_for": "Applied for properly", - "explained->taken_down": "Taken down", - "explained->nothing_illegal": "Nothing illegal found", - "fined->applied_for": "Applied for properly", - "fined->taken_down": "Taken down", - "inspected->owner_written_to": "Owner written to", - "inspected->nothing_illegal": "Nothing illegal found", - "open->nothing_illegal": "Nothing illegal found", - "owner_written_to->explained": "Owner has explained" - }, - "list_title": "Illegal building", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "inspections": { - "heading": "Inspections", - "description": "Sent in by An inspector on site, writing on a phone in a cold wind.", - "moves": {}, - "list_title": "Inspections", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "objections": { - "heading": "Objections", - "description": "Sent in by A neighbour who got a notice in the post and does not agree with what is planned next door.", - "moves": { - "answered->addressed": "Addressed in the decision", - "open->registered": "Registered on the case", - "registered->answered": "Answered by the applicant", - "registered->addressed": "Addressed in the decision" - }, - "list_title": "Objections", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "paper_objections": { - "heading": "Paper objections", - "description": "Sent in by The front desk, when an objection comes in on paper or over the counter.", - "moves": { - "answered->addressed": "Addressed in the decision", - "open->registered": "Registered on the case", - "registered->answered": "Answered by the applicant", - "registered->addressed": "Addressed in the decision" - }, - "list_title": "Paper objections", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "pre_application_meetings": { - "heading": "Pre application meetings", - "description": "Sent in by Anyone who wants to sit down with us before they spend money on drawings.", - "moves": { - "met->written_up": "Written down and sent", - "open->scheduled": "Time found", - "open->cancelled": "Cancelled", - "scheduled->met": "Meeting held", - "scheduled->cancelled": "Cancelled" - }, - "list_title": "Pre application meetings", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "temporary_permissions": { - "heading": "Temporary permissions", - "description": "Sent in by An approved firm whose client wants to move in before everything is done.", - "moves": { - "open->checked": "Inspections and outstanding work checked" - }, - "list_title": "Temporary permissions", - "list_note": "Each row is one case. The buttons record what you have just done with it." - } - }, - "links": { - "hearing-request": { - "heading": "To ask the road authority, the fire service, the heritage office or the county, and go on when the deadline has passed", - "description": "For A case officer who is obliged to ask another authority about an application.", - "button": "Open" - } - }, - "invites": { - "case_officers": { - "heading": "Invite someone into Case officers", - "description": "They get an account, a place in Case officers, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - } - }, - "invited": { - "heading": "Invitations sent", - "description": "Each invite and where it stands. A link that runs out unused can be sent again.", - "done": "Is in", - "again": "Send again", - "list_title": "Who has been invited", - "list_note": "Each row is one invitation. It is done by itself when the person signs in, and expired when the link ran out unused." - }, - "suggestions": null - }, - "questions/decide/application.yaml": { - "question": "What would you like to do?", - "description": "", - "moves": { - "papers_received": { - "heading": "Papers received", - "description": "", - "button": "Papers received" - }, - "withdrawn": { - "heading": "Withdrawn", - "description": "", - "button": "Withdrawn" - } - } - }, - "questions/decide/firm-application.yaml": { - "question": "What would you like to do?", - "description": "", - "moves": { - "papers_received": { - "heading": "Papers received", - "description": "", - "button": "Papers received" - }, - "withdrawn": { - "heading": "Withdrawn", - "description": "", - "button": "Withdrawn" - } - } - }, - "questions/decide/pre-application-meeting.yaml": { - "question": "What would you like to do?", - "description": "", - "moves": { - "cancelled": { - "heading": "Cancelled", - "description": "", - "button": "Cancelled" - } - } - }, - "questions/firm/index.yaml": { - "question": "What do you need?", - "description": "For You are an architect or an engineering firm filing on behalf of owners.", - "needs": { - "firm-application": { - "heading": "To file a building application for a client and see what is missing", - "description": "For An approved architect or engineering firm filing on behalf of an owner.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "What you need", - "requires_description": "Your firm must be on our list of approved firms before it may file anything.", - "requires_icon": "key", - "road_title": "What happens next", - "road_description": "It is received, then papers missing, clock stopped, then missing papers sent in, then complete, clock running, then out to neighbours and agencies, then hearing over, then recommendation written, and ends approved, approved with conditions, refused or withdrawn.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "name": "Name", - "email": "Email", - "property_address": "Property address", - "kind_of_work": "Kind of work", - "what_you_want_to_do": "What you want to do", - "enclosed": "Enclosed", - "owner_name": "Owner name", - "phone": "Phone", - "place": "Place" - }, - "hints": { - "name": "", - "email": "", - "property_address": "", - "kind_of_work": "", - "what_you_want_to_do": "", - "enclosed": "", - "owner_name": "", - "phone": "", - "place": "" - } - }, - "completion-certificate": { - "heading": "A completion certificate for the finished work", - "description": "For An approved firm whose work on a case is done.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "What you need", - "requires_description": "Your firm must be on our list of approved firms, and the application must be approved; have its reference ready.", - "requires_icon": "key", - "road_title": "What happens next", - "road_description": "It is asked for, then inspections and outstanding work checked, and ends certificate signed or refused.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "name": "Name", - "email": "Email", - "application_reference": "Application reference", - "finished_on": "Finished on", - "what_was_built": "What was built", - "still_outstanding": "Still outstanding" - }, - "hints": { - "name": "", - "email": "", - "application_reference": "", - "finished_on": "", - "what_was_built": "", - "still_outstanding": "" - } - }, - "temporary-permission": { - "heading": "A temporary permission to use the building", - "description": "For An approved firm whose client wants to move in before everything is done.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "What you need", - "requires_description": "Your firm must be on our list of approved firms, and the application must be approved; have its reference ready.", - "requires_icon": "key", - "road_title": "What happens next", - "road_description": "It is asked for, then inspections and outstanding work checked, and ends temporary permission signed or refused.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "name": "Name", - "email": "Email", - "application_reference": "Application reference", - "move_in_on": "Move in on", - "still_outstanding": "Still outstanding", - "finished_by": "Finished by" - }, - "hints": { - "name": "", - "email": "", - "application_reference": "", - "move_in_on": "", - "still_outstanding": "", - "finished_by": "" - } - }, - "firm-approval": { - "heading": "To be approved by us and put on the list of firms that may file", - "description": "For An architect or engineering firm that wants to file applications for owners.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is received, then registration, insurance and qualifications checked, and ends on the list or refused.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "firm": "Firm", - "name": "Name", - "email": "Email", - "registration_number": "Registration number", - "insurance": "Insurance", - "qualified_for": "Qualified for", - "phone": "Phone" - }, - "hints": { - "firm": "", - "name": "", - "email": "", - "registration_number": "", - "insurance": "", - "qualified_for": "", - "phone": "" - } - } - } - }, - "questions/front_desk/index.yaml": { - "question": "What needs doing?", - "description": "Everything front desk looks after.", - "confirm": "Confirm", - "buckets": { - "appeals": { - "heading": "Appeals", - "description": "Sent in by Anyone with an interest in a decision, the applicant or a neighbour.", - "moves": {}, - "list_title": "Appeals", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "applications": { - "heading": "Applications", - "description": "Sent in by A homeowner who wants a garage, an extension, a new window or another change to their property or An approved architect or engineering firm filing on behalf of an owner.", - "moves": {}, - "list_title": "Applications", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "approved_firm_requests": { - "heading": "Approved firm requests", - "description": "Sent in by An architect or engineering firm that wants to file applications for owners.", - "moves": {}, - "list_title": "Approved firm requests", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "completion_certificates": { - "heading": "Completion certificates", - "description": "Sent in by An approved firm whose work on a case is done.", - "moves": {}, - "list_title": "Completion certificates", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "exemptions": { - "heading": "Exemptions", - "description": "Sent in by An applicant whose plans break the zoning rules.", - "moves": {}, - "list_title": "Exemptions", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "hearing_answers": { - "heading": "Hearing answers", - "description": "Sent in by A case officer who is obliged to ask another authority about an application.", - "moves": {}, - "list_title": "Hearing answers", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "illegal_building": { - "heading": "Illegal building", - "description": "Sent in by Someone who sees something going up behind their fence without permission or The front desk, when someone rings or comes in about building without permission.", - "moves": {}, - "list_title": "Illegal building", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "objections": { - "heading": "Objections", - "description": "Sent in by A neighbour who got a notice in the post and does not agree with what is planned next door.", - "moves": { - "open->registered": "Registered on the case" - }, - "list_title": "Objections", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "paper_objections": { - "heading": "Paper objections", - "description": "Sent in by The front desk, when an objection comes in on paper or over the counter.", - "moves": { - "open->registered": "Registered on the case" - }, - "list_title": "Paper objections", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "pre_application_meetings": { - "heading": "Pre application meetings", - "description": "Sent in by Anyone who wants to sit down with us before they spend money on drawings.", - "moves": {}, - "list_title": "Pre application meetings", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "temporary_permissions": { - "heading": "Temporary permissions", - "description": "Sent in by An approved firm whose client wants to move in before everything is done.", - "moves": {}, - "list_title": "Temporary permissions", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - } - }, - "links": { - "logged-objection": { - "heading": "To put the objection on the right case straight away, instead of stapling it to a folder", - "description": "For The front desk, when an objection comes in on paper or over the counter.", - "button": "Open" - }, - "logged-report": { - "heading": "To log the report so an inspector goes and looks", - "description": "For The front desk, when someone rings or comes in about building without permission.", - "button": "Open" - } - }, - "invites": { - "front_desk": { - "heading": "Invite someone into Front desk", - "description": "They get an account, a place in Front desk, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - } - }, - "invited": { - "heading": "Invitations sent", - "description": "Each invite and where it stands. A link that runs out unused can be sent again.", - "done": "Is in", - "again": "Send again", - "list_title": "Who has been invited", - "list_note": "Each row is one invitation. It is done by itself when the person signs in, and expired when the link ran out unused." - }, - "suggestions": null - }, - "questions/front_desk/logged-objection-sent.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example." - }, - "questions/front_desk/logged-objection.yaml": { - "heading": "To put the objection on the right case straight away, instead of stapling it to a folder", - "description": "For The front desk, when an objection comes in on paper or over the counter.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is received, then registered on the case, then answered by the applicant, and ends addressed in the decision.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "application_reference": "Application reference", - "name": "Name", - "objection": "Objection", - "received_on": "Received on", - "your_property": "Your property", - "phone": "Phone" - }, - "hints": { - "application_reference": "", - "name": "", - "objection": "", - "received_on": "", - "your_property": "", - "phone": "" - }, - "question": "Logged objection?", - "page_description": "" - }, - "questions/front_desk/logged-report-sent.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example." - }, - "questions/front_desk/logged-report.yaml": { - "heading": "To log the report so an inspector goes and looks", - "description": "For The front desk, when someone rings or comes in about building without permission.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is reported, then we have been and looked, then owner written to, then owner has explained, then weekly fine running, and ends applied for properly, taken down or nothing illegal found.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "where": "Where", - "what_is_being_built": "What is being built", - "place": "Place", - "name": "Name", - "phone": "Phone" - }, - "hints": { - "where": "", - "what_is_being_built": "", - "place": "", - "name": "", - "phone": "" - }, - "question": "Logged report?", - "page_description": "" - }, - "questions/head_of_section/index.yaml": { - "question": "What needs doing?", - "description": "Everything head of section looks after.", - "confirm": "Confirm", - "buckets": { - "appeals": { - "heading": "Appeals", - "description": "Sent in by Anyone with an interest in a decision, the applicant or a neighbour.", - "moves": { - "under_review->decision_changed": "We changed our own decision" - }, - "list_title": "Appeals", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "applications": { - "heading": "Applications", - "description": "Sent in by A homeowner who wants a garage, an extension, a new window or another change to their property or An approved architect or engineering firm filing on behalf of an owner.", - "moves": { - "recommended->approved": "Approved", - "recommended->approved_with_conditions": "Approved with conditions", - "recommended->refused": "Refused" - }, - "list_title": "Applications", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "approved_firm_requests": { - "heading": "Approved firm requests", - "description": "Sent in by An architect or engineering firm that wants to file applications for owners.", - "moves": { - "checked->listed": "On the list", - "checked->refused": "Refused", - "open->refused": "Refused" - }, - "list_title": "Approved firm requests", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "completion_certificates": { - "heading": "Completion certificates", - "description": "Sent in by An approved firm whose work on a case is done.", - "moves": { - "checked->issued": "Certificate signed", - "checked->refused": "Refused", - "open->refused": "Refused" - }, - "list_title": "Completion certificates", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "exemptions": { - "heading": "Exemptions", - "description": "Sent in by An applicant whose plans break the zoning rules.", - "moves": { - "county_asked->refused": "Refused", - "county_heard->granted": "Granted", - "county_heard->refused": "Refused", - "open->refused": "Refused" - }, - "list_title": "Exemptions", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "illegal_building": { - "heading": "Illegal building", - "description": "Sent in by Someone who sees something going up behind their fence without permission or The front desk, when someone rings or comes in about building without permission.", - "moves": { - "explained->fined": "Weekly fine running" - }, - "list_title": "Illegal building", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "inspections": { - "heading": "Inspections", - "description": "Sent in by An inspector on site, writing on a phone in a cold wind.", - "moves": {}, - "list_title": "Inspections", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "objections": { - "heading": "Objections", - "description": "Sent in by A neighbour who got a notice in the post and does not agree with what is planned next door.", - "moves": {}, - "list_title": "Objections", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "paper_objections": { - "heading": "Paper objections", - "description": "Sent in by The front desk, when an objection comes in on paper or over the counter.", - "moves": {}, - "list_title": "Paper objections", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "temporary_permissions": { - "heading": "Temporary permissions", - "description": "Sent in by An approved firm whose client wants to move in before everything is done.", - "moves": { - "checked->issued": "Temporary permission signed", - "checked->refused": "Refused", - "open->refused": "Refused" - }, - "list_title": "Temporary permissions", - "list_note": "Each row is one case. The buttons record what you have just done with it." - } - }, - "links": {}, - "invites": { - "agencies": { - "heading": "Invite someone into Agencies", - "description": "They get an account, a place in Agencies, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "appeals_board": { - "heading": "Invite someone into Appeals board", - "description": "They get an account, a place in Appeals board, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "approved_firms": { - "heading": "Invite someone into Approved firms", - "description": "They get an account, a place in Approved firms, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "case_officers": { - "heading": "Invite someone into Case officers", - "description": "They get an account, a place in Case officers, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "front_desk": { - "heading": "Invite someone into Front desk", - "description": "They get an account, a place in Front desk, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "head_of_section": { - "heading": "Invite someone into Head of section", - "description": "They get an account, a place in Head of section, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - }, - "inspectors": { - "heading": "Invite someone into Inspectors", - "description": "They get an account, a place in Inspectors, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - } - }, - "invited": { - "heading": "Invitations sent", - "description": "Each invite and where it stands. A link that runs out unused can be sent again.", - "done": "Is in", - "again": "Send again", - "list_title": "Who has been invited", - "list_note": "Each row is one invitation. It is done by itself when the person signs in, and expired when the link ran out unused." - }, - "suggestions": { - "heading": "Suggested changes to the site", - "description": "What the people listed as responsible for a question have suggested changing. They are told each time a suggestion moves.", - "list_title": "Suggestions", - "list_note": "Each row is one suggestion, with the page it is about. The buttons record what you have just done with it.", - "looking": "We are looking at it", - "changed": "The change is made", - "declined": "Will not be done" - } - }, - "questions/index.yaml": { - "question": "What brings you here?", - "description": "We are the building authority for a municipality of twenty-one thousand people. Anyone who wants to build, demolish, divide a property or change what a building is used for has to come to us first. We check the drawings against the zoning map and the building regulations, we let the neighbours and the other authorities have their say, and then we approve or refuse. We also decide exemptions from the zoning rules, we inspect what is actually built, we sign off finished work, and we deal with building that was never applied for.\n", - "opener": { - "heading": "What we do", - "description": "", - "features": { - "check-and-decide": { - "heading": "Permission to build, demolish, divide a property or change what a building is used for", - "description": "We check your drawings against the zoning map and the building regulations, let the neighbours and the other authorities have their say, and then approve or refuse. Every case is on the list here, so you and your neighbours can follow it the whole way, and object to it or appeal it from its own row.\n", - "icon": "" - }, - "firms-file-here": { - "heading": "To file a building application for a client and see what is missing", - "description": "Approved firms file applications for their clients here, see what is missing and ask for the completion certificate when the work is done.\n", - "icon": "" - } - } - }, - "shopping": { - "heading": "Latest from Vestmark kommune - Building and Planning", - "description": "", - "items": { - "status-applications": { - "heading": "Latest applications", - "description": "What A homeowner who wants a garage, an extension, a new window or another change to their property or An approved architect or engineering firm filing on behalf of an owner sent in that is now received, papers missing, clock stopped, missing papers sent in, complete, clock running, out to neighbours and agencies, hearing over, recommendation written, approved, approved with conditions or refused.", - "link": "All applications", - "empty": "Nothing here yet.", - "icon": "list" - }, - "status-approved_firm_requests": { - "heading": "Latest approved firm requests", - "description": "What An architect or engineering firm that wants to file applications for owners sent in that is now on the list.", - "link": "All approved firm requests", - "empty": "Nothing here yet.", - "icon": "list" - } - } - }, - "doors": { - "build": { - "heading": "Build", - "description": "For You want to build, demolish, divide a property or change what a building is used for.", - "button": "Continue", - "icon": "", - "for_whom": "", - "behind": "A meeting with a case officer, and a written note of what we told them, Permission to build, demolish, divide a property or change what a building is used for." - }, - "firm": { - "heading": "Firm", - "description": "For You are an architect or an engineering firm filing on behalf of owners.", - "button": "Continue", - "icon": "", - "for_whom": "", - "behind": "To file a building application for a client and see what is missing, A completion certificate for the finished work, A temporary permission to use the building, To be approved by us and put on the list of firms that may file." - } - }, - "needs": { - "illegal-building-report": { - "heading": "To tell us, so that we go and look", - "description": "For Someone who sees something going up behind their fence without permission.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is reported, then we have been and looked, then owner written to, then owner has explained, then weekly fine running, and ends applied for properly, taken down or nothing illegal found.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "where": "Where", - "what_is_being_built": "What is being built", - "place": "Place", - "name": "Name", - "phone": "Phone" - }, - "hints": { - "where": "", - "what_is_being_built": "", - "place": "", - "name": "", - "phone": "" - } - } - } - }, - "questions/inspectors/index.yaml": { - "question": "What needs doing?", - "description": "Everything inspectors looks after.", - "confirm": "Confirm", - "buckets": { - "applications": { - "heading": "Applications", - "description": "Sent in by A homeowner who wants a garage, an extension, a new window or another change to their property or An approved architect or engineering firm filing on behalf of an owner.", - "moves": {}, - "list_title": "Applications", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "completion_certificates": { - "heading": "Completion certificates", - "description": "Sent in by An approved firm whose work on a case is done.", - "moves": {}, - "list_title": "Completion certificates", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "illegal_building": { - "heading": "Illegal building", - "description": "Sent in by Someone who sees something going up behind their fence without permission or The front desk, when someone rings or comes in about building without permission.", - "moves": { - "open->inspected": "We have been and looked" - }, - "list_title": "Illegal building", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "inspections": { - "heading": "Inspections", - "description": "Sent in by An inspector on site, writing on a phone in a cold wind.", - "moves": { - "open->to_put_right": "To be put right, then we go back", - "open->as_approved": "As approved", - "to_put_right->as_approved": "As approved" - }, - "list_title": "Inspections", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "temporary_permissions": { - "heading": "Temporary permissions", - "description": "Sent in by An approved firm whose client wants to move in before everything is done.", - "moves": {}, - "list_title": "Temporary permissions", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - } - }, - "links": { - "inspection": { - "heading": "To write up what was found on a case and set a date for what must be put right", - "description": "For An inspector on site, writing on a phone in a cold wind.", - "button": "Open" - } - }, - "invites": { - "inspectors": { - "heading": "Invite someone into Inspectors", - "description": "They get an account, a place in Inspectors, and a one-time link to set their own password or passkey.", - "button": "Invite", - "form_title": "Who", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - } - }, - "invited": { - "heading": "Invitations sent", - "description": "Each invite and where it stands. A link that runs out unused can be sent again.", - "done": "Is in", - "again": "Send again", - "list_title": "Who has been invited", - "list_note": "Each row is one invitation. It is done by itself when the person signs in, and expired when the link ran out unused." - }, - "suggestions": null - }, - "questions/inspectors/inspection-sent.yaml": { - "question": "What happens now?", - "description": "It has reached our inspectors.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example." - }, - "questions/inspectors/inspection.yaml": { - "heading": "To write up what was found on a case and set a date for what must be put right", - "description": "For An inspector on site, writing on a phone in a cold wind.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "It is inspected, then to be put right, then we go back, and ends as approved.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Inspectors. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "application_reference": "Application reference", - "finding": "Finding", - "what_is_wrong": "What is wrong", - "put_right_by": "Put right by", - "place": "Place" - }, - "hints": { - "application_reference": "", - "finding": "", - "what_is_wrong": "", - "put_right_by": "", - "place": "" - }, - "question": "Inspection?", - "page_description": "" - }, - "questions/received/appeal.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example." - }, - "questions/received/application.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "see_all": { - "heading": "See all applications", - "description": "", - "button": "Open" - } - }, - "questions/received/exemption.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example." - }, - "questions/received/firm-approval.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example.", - "see_all": { - "heading": "See all approved firm requests", - "description": "", - "button": "Open" - } - }, - "questions/received/illegal-building-report.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example." - }, - "questions/received/objection.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example." - }, - "questions/received/pre-application-meeting.yaml": { - "question": "What happens now?", - "description": "It has reached our case officers.", - "next_heading": "We read it and come back to you", - "next_description": "Questions in the meantime go to Solveig Hauge at byggesak@vestmark.example." - }, - "questions/status/applications/[key].yaml": { - "question": "An exemption from the zoning rules, decided alongside their application?", - "description": "For An applicant whose plans break the zoning rules, or A neighbour who got a notice in the post and does not agree with what is planned next door, or Anyone with an interest in a decision, the applicant or a neighbour.", - "forms": { - "exemption": { - "heading": "An exemption from the zoning rules, decided alongside their application", - "description": "For An applicant whose plans break the zoning rules.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "What you need", - "requires_description": "An application with us; the exemption rides along with it and is asked for from its row on the list of cases.", - "requires_icon": "key", - "road_title": "What happens next", - "road_description": "It is received, then county asked, then county has answered or its deadline has passed, and ends granted or refused.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "name": "Name", - "email": "Email", - "rule_it_breaks": "Rule it breaks", - "why_it_should_be_allowed": "Why it should be allowed" - }, - "hints": { - "name": "", - "email": "", - "rule_it_breaks": "", - "why_it_should_be_allowed": "" - } - }, - "objection": { - "heading": "To object to an application and have the objection answered in the decision", - "description": "For A neighbour who got a notice in the post and does not agree with what is planned next door.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "What you need", - "requires_description": "The application must still be out for hearing; objections are taken until the six weeks are up.", - "requires_icon": "key", - "road_title": "What happens next", - "road_description": "It is received, then registered on the case, then answered by the applicant, and ends addressed in the decision.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "name": "Name", - "email": "Email", - "your_property": "Your property", - "objection": "Objection", - "phone": "Phone" - }, - "hints": { - "name": "", - "email": "", - "your_property": "", - "objection": "", - "phone": "" - } - }, - "appeal": { - "heading": "To appeal a decision we have made", - "description": "For Anyone with an interest in a decision, the applicant or a neighbour.", - "button": "Send", - "encouragement": "", - "icon": "", - "requires_title": "What you need", - "requires_description": "A decision on the application, made no more than three weeks ago.", - "requires_icon": "key", - "road_title": "What happens next", - "road_description": "It is received, then we are going through it ourselves, then sent to the appeals board, and ends we changed our own decision, decision upheld by the board, decision overturned by the board or dismissed.", - "road_icon": "route", - "who_title": "Who reads it", - "who_description": "Case officers. Questions go to Solveig Hauge at byggesak@vestmark.example.", - "who_icon": "users", - "form_title": "Details", - "form_description": "", - "labels": { - "name": "Name", - "email": "Email", - "your_interest": "Your interest", - "grounds": "Grounds", - "phone": "Phone" - }, - "hints": { - "name": "", - "email": "", - "your_interest": "", - "grounds": "", - "phone": "" - } - } - } - }, - "questions/status/applications/index.yaml": { - "question": "What has been sent in about applications?", - "description": "What A homeowner who wants a garage, an extension, a new window or another change to their property or An approved architect or engineering firm filing on behalf of an owner sent in that is now received, papers missing, clock stopped, missing papers sent in, complete, clock running, out to neighbours and agencies, hearing over, recommendation written, approved, approved with conditions or refused.", - "heading": "Applications", - "list_description": "", - "list_title": "Applications", - "list_note": "Each row is one case and the stage it has reached. Names and contact details are not shown here.", - "empty": "Nothing here yet.", - "answer": "An exemption from the zoning rules, decided alongside their application" - }, - "questions/status/approved_firm_requests/index.yaml": { - "question": "What has been sent in about approved firm requests?", - "description": "What An architect or engineering firm that wants to file applications for owners sent in that is now on the list.", - "heading": "Approved firm requests", - "list_description": "", - "list_title": "Approved firm requests", - "list_note": "Each row is one case and the stage it has reached. Names and contact details are not shown here.", - "empty": "Nothing here yet.", - "answer": "" - }, - "site.yaml": { - "invite": { - "subject": "Your account at {site_name}", - "body": "Hello {name},\n\n{site_name} has made you an account and added you to {group}. Your username is {username}.\n\nSet your password here before {expires}:\n{link}\n\nAfter that you sign in at {site}." - } - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/physio-2026-09-22/README.md b/vendor/trainer/runs/physio-2026-09-22/README.md deleted file mode 100644 index 57bbb97..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/README.md +++ /dev/null @@ -1,27 +0,0 @@ -# A physiotherapy clinic behind two doors - -`plans/physio.yaml`: five needs, two doors (patients, referrers), two -internal needs (the receptionist's insurance request, the therapist's -no-show). Built with nemotron-3.5-lightning:30b-a3b writing the -words, all 12 pages worded, verifier green by construction. Visitor: -qwen3:8b, one task per call. Eight held-out personas, ten tasks -(the six public personas are asked twice, door then form). - -| Visitor could read | Routed right | -|---|---| -| Headings and descriptions | 8 of 10 | -| Headings only | 9 of 10 | - -- The daughter bringing her mother after a hip replacement ("the - hospital said she needs training") chose "Move or cancel your - appointment" on the patients' page, both times. She has no - appointment; the heading "Book your first appointment" is written - for the patient, and she is not the patient. A heading in the - second person fails everyone who writes on someone else's behalf. -- With descriptions, the man sent abroad ("just free the slot") chose - the referrers' door. The description under "I have pain or an - injury" talks about pain and injury; he has neither, he has an - appointment. The patients' door has to name the second need too. - -`rate.txt` is the page-by-page rate from the re-run later the same -day; see `rate.json`. diff --git a/vendor/trainer/runs/physio-2026-09-22/aggregates.yaml b/vendor/trainer/runs/physio-2026-09-22/aggregates.yaml deleted file mode 100644 index f6c9dcb..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/aggregates.yaml +++ /dev/null @@ -1,91 +0,0 @@ -aggregates: -- bucket: approvals - initial: open - states: - approved: - event: approved - open: - event: received - refused: - event: refused - sent: - event: sent - transitions: - open: - - sent - - refused - sent: - - approved - - refused -- bucket: cancellations - initial: open - states: - open: - event: received - rebooked: - event: rebooked - released: - event: released - transitions: - open: - - rebooked - - released -- bucket: no_shows - initial: open - states: - closed: - event: closed - contacted: - event: contacted - open: - event: received - rebooked: - event: rebooked - transitions: - contacted: - - rebooked - - closed - open: - - contacted - - closed -- bucket: referrals - initial: open - states: - accepted: - event: accepted - booked: - event: booked - open: - event: received - reported: - event: reported - returned: - event: returned - transitions: - accepted: - - booked - - returned - booked: - - reported - - returned - open: - - accepted - - returned -- bucket: requests - initial: open - states: - booked: - event: booked - declined: - event: declined - offered: - event: offered - open: - event: received - transitions: - offered: - - booked - - declined - open: - - offered - - declined diff --git a/vendor/trainer/runs/physio-2026-09-22/answers-full.jsonl b/vendor/trainer/runs/physio-2026-09-22/answers-full.jsonl deleted file mode 100644 index cdff79d..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/answers-full.jsonl +++ /dev/null @@ -1,10 +0,0 @@ -{"choice":"I have pain or an injury","confidence":0.95,"id":"runner-knee@/"} -{"choice":"Book your first appointment","confidence":0.95,"id":"runner-knee@/patients"} -{"choice":"I have pain or an injury","confidence":0.95,"id":"post-surgery-mother@/"} -{"choice":"Move or cancel your appointment","confidence":0.85,"id":"post-surgery-mother@/patients"} -{"choice":"I have pain or an injury","confidence":0.75,"id":"sick-child@/"} -{"choice":"Move or cancel your appointment","confidence":0.95,"id":"sick-child@/patients"} -{"choice":"I am a GP or hospital","confidence":0.95,"id":"sent-abroad@/"} -{"choice":"Move or cancel your appointment","confidence":0.95,"id":"sent-abroad@/patients"} -{"choice":"I am a GP or hospital","confidence":0.95,"id":"gp-shoulder@/"} -{"choice":"I am a GP or hospital","confidence":0.95,"id":"hospital-discharge@/"} diff --git a/vendor/trainer/runs/physio-2026-09-22/answers-skim.jsonl b/vendor/trainer/runs/physio-2026-09-22/answers-skim.jsonl deleted file mode 100644 index f466cf8..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/answers-skim.jsonl +++ /dev/null @@ -1,10 +0,0 @@ -{"choice":"I have pain or an injury","confidence":0.95,"id":"runner-knee@/"} -{"choice":"Book your first appointment","confidence":0.95,"id":"runner-knee@/patients"} -{"choice":"I have pain or an injury","confidence":0.95,"id":"post-surgery-mother@/"} -{"choice":"Move or cancel your appointment","confidence":0.95,"id":"post-surgery-mother@/patients"} -{"choice":"I have pain or an injury","confidence":0.95,"id":"sick-child@/"} -{"choice":"Move or cancel your appointment","confidence":0.95,"id":"sick-child@/patients"} -{"choice":"I have pain or an injury","confidence":0.95,"id":"sent-abroad@/"} -{"choice":"Move or cancel your appointment","confidence":0.95,"id":"sent-abroad@/patients"} -{"choice":"I am a GP or hospital","confidence":0.95,"id":"gp-shoulder@/"} -{"choice":"I am a GP or hospital","confidence":0.95,"id":"hospital-discharge@/"} diff --git a/vendor/trainer/runs/physio-2026-09-22/build.log b/vendor/trainer/runs/physio-2026-09-22/build.log deleted file mode 100644 index f346fef..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/build.log +++ /dev/null @@ -1,20 +0,0 @@ -words: questions/index.yaml -words: questions/patients/index.yaml -words: questions/received/move-or-cancel.yaml -words: questions/received/new-patient.yaml -words: questions/received/referral.yaml -words: questions/reception/index.yaml -words: questions/reception/insurance-approval-sent.yaml -words: questions/reception/insurance-approval.yaml -words: questions/referrers/index.yaml -words: questions/therapists/index.yaml -words: questions/therapists/no-show-sent.yaml -words: questions/therapists/no-show.yaml -content repo written to runs/physio-2026-09-22 -OK: 12 question(s), 6 aggregate(s) valid -need "new-patient": / [I have pain or an injury] -> /patients [Book your first appointment] -> "requests" -need "move-or-cancel": / [I have pain or an injury] -> /patients [Move or cancel your appointment] -> "cancellations" -need "referral": / [I am a GP or hospital] -> /referrers [Send a patient for physiotherapy] -> "referrals" -need "insurance-approval": /reception/insurance-approval [Request insurance approval] -> "approvals" -need "no-show": /therapists/no-show [Report a no-show patient] -> "no_shows" -OK: 5 need(s) structurally met, 0 planned, 8 persona(s) diff --git a/vendor/trainer/runs/physio-2026-09-22/llm/01-questions_index.yaml.md b/vendor/trainer/runs/physio-2026-09-22/llm/01-questions_index.yaml.md deleted file mode 100644 index f51d79b..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/llm/01-questions_index.yaml.md +++ /dev/null @@ -1,66 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Bakken Fysioterapi -About: Six physiotherapists and a receptionist. People come with pain, injuries and after operations, on their own or sent by a doctor, and we treat them over a course of sessions. -Contact: Marit Bakken -Language to write in: en - -Everyone the site serves: -- door patients: for someone with pain or an injury, or a patient who already has a time here; behind it: new-patient, move-or-cancel -- door referrers: for a doctor, a hospital ward or an insurer sending someone to us; behind it: referral -- new-patient: someone with something that hurts - wants: a first appointment with a therapist who suits them. Handled by reception. Stages: open -> offered -> booked -> declined. -- move-or-cancel: a patient who already has a time and cannot come - wants: the time moved, or the slot freed. Handled by reception. Stages: open -> rebooked -> released. -- referral: a GP or a hospital ward sending a patient - wants: the patient seen, and a report back when the course ends. Handled by reception. Stages: open -> accepted -> booked -> reported -> returned. -- insurance-approval: the receptionist, before a course that an insurer has to approve - wants: the request sent and its answer kept where the patient's case is. Handled by reception. Stages: open -> sent -> approved -> refused. -- no-show: a therapist whose patient did not turn up and did not call - wants: the reception to ring them and get them back in. Handled by reception. Stages: open -> contacted -> rebooked -> closed. - -The page: questions/index.yaml -It is the front door: the first page any visitor sees. `question` is the page's one question. Under `doors`, each entry is one alternative that leads to a page of its own for one kind of visitor: its heading must let that visitor recognise themselves from the heading alone. Under `needs`, each entry is one alternative with a form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "doors": { - "patients": { - "button": "", - "description": "", - "heading": "" - }, - "referrers": { - "button": "", - "description": "", - "heading": "" - } - }, - "needs": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "description": "Tell us who you are so we can help you the right way.", - "doors": { - "patients": { - "button": "Start here", - "description": "You have pain, an injury, or a new appointment you need to manage.", - "heading": "I have pain or an injury" - }, - "referrers": { - "button": "Send a patient", - "description": "You are sending someone to us for treatment or a report.", - "heading": "I am a GP or hospital" - } - }, - "needs": {}, - "question": "Who are you?" -} diff --git a/vendor/trainer/runs/physio-2026-09-22/llm/02-questions_patients_index.yaml.md b/vendor/trainer/runs/physio-2026-09-22/llm/02-questions_patients_index.yaml.md deleted file mode 100644 index fcc83d0..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/llm/02-questions_patients_index.yaml.md +++ /dev/null @@ -1,94 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Bakken Fysioterapi -About: Six physiotherapists and a receptionist. People come with pain, injuries and after operations, on their own or sent by a doctor, and we treat them over a course of sessions. -Contact: Marit Bakken -Language to write in: en - -Everyone the site serves: -- door patients: for someone with pain or an injury, or a patient who already has a time here; behind it: new-patient, move-or-cancel -- door referrers: for a doctor, a hospital ward or an insurer sending someone to us; behind it: referral -- new-patient: someone with something that hurts - wants: a first appointment with a therapist who suits them. Handled by reception. Stages: open -> offered -> booked -> declined. -- move-or-cancel: a patient who already has a time and cannot come - wants: the time moved, or the slot freed. Handled by reception. Stages: open -> rebooked -> released. -- referral: a GP or a hospital ward sending a patient - wants: the patient seen, and a report back when the course ends. Handled by reception. Stages: open -> accepted -> booked -> reported -> returned. -- insurance-approval: the receptionist, before a course that an insurer has to approve - wants: the request sent and its answer kept where the patient's case is. Handled by reception. Stages: open -> sent -> approved -> refused. -- no-show: a therapist whose patient did not turn up and did not call - wants: the reception to ring them and get them back in. Handled by reception. Stages: open -> contacted -> rebooked -> closed. - -The page: questions/patients/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "move-or-cancel": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "appointment_day": "", - "name": "", - "new_time_wish": "", - "phone": "" - } - }, - "new-patient": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "name": "", - "phone": "", - "sent_by_doctor": "", - "what_hurts": "", - "when": "" - } - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "description": "Choose what brings you here today.", - "needs": { - "move-or-cancel": { - "button": "Change booking", - "description": "Let us know if you can't make it or need a new time.", - "form_title": "Move or cancel", - "heading": "Move or cancel your appointment", - "labels": { - "appointment_day": "Appointment day", - "name": "Your name", - "new_time_wish": "New time preference", - "phone": "Phone number" - } - }, - "new-patient": { - "button": "Book first visit", - "description": "We'll match you with a therapist who suits your needs.", - "form_title": "Book first visit", - "heading": "Book your first appointment", - "labels": { - "name": "Your name", - "phone": "Phone number", - "sent_by_doctor": "Sent by a doctor?", - "what_hurts": "What hurts", - "when": "When did it start?" - } - } - }, - "question": "What brings you here today?" -} diff --git a/vendor/trainer/runs/physio-2026-09-22/llm/03-questions_received_move-or-cancel.yaml.md b/vendor/trainer/runs/physio-2026-09-22/llm/03-questions_received_move-or-cancel.yaml.md deleted file mode 100644 index f70c658..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/llm/03-questions_received_move-or-cancel.yaml.md +++ /dev/null @@ -1,46 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Bakken Fysioterapi -About: Six physiotherapists and a receptionist. People come with pain, injuries and after operations, on their own or sent by a doctor, and we treat them over a course of sessions. -Contact: Marit Bakken -Language to write in: en - -Everyone the site serves: -- door patients: for someone with pain or an injury, or a patient who already has a time here; behind it: new-patient, move-or-cancel -- door referrers: for a doctor, a hospital ward or an insurer sending someone to us; behind it: referral -- new-patient: someone with something that hurts - wants: a first appointment with a therapist who suits them. Handled by reception. Stages: open -> offered -> booked -> declined. -- move-or-cancel: a patient who already has a time and cannot come - wants: the time moved, or the slot freed. Handled by reception. Stages: open -> rebooked -> released. -- referral: a GP or a hospital ward sending a patient - wants: the patient seen, and a report back when the course ends. Handled by reception. Stages: open -> accepted -> booked -> reported -> returned. -- insurance-approval: the receptionist, before a course that an insurer has to approve - wants: the request sent and its answer kept where the patient's case is. Handled by reception. Stages: open -> sent -> approved -> refused. -- no-show: a therapist whose patient did not turn up and did not call - wants: the reception to ring them and get them back in. Handled by reception. Stages: open -> contacted -> rebooked -> closed. - -The page: questions/received/move-or-cancel.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Retur", - "description": "Når du har sendt inn skjemaet, tar imot oss meldingen og sender en bekreftelse.", - "next_description": "Vi setter oss inn på sakene dine og finner en ny tid som passer.", - "next_heading": "Vi tar vare på tiden din", - "question": "Hva skjer nå?" -} diff --git a/vendor/trainer/runs/physio-2026-09-22/llm/04-questions_received_new-patient.yaml.md b/vendor/trainer/runs/physio-2026-09-22/llm/04-questions_received_new-patient.yaml.md deleted file mode 100644 index 4fdd851..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/llm/04-questions_received_new-patient.yaml.md +++ /dev/null @@ -1,46 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Bakken Fysioterapi -About: Six physiotherapists and a receptionist. People come with pain, injuries and after operations, on their own or sent by a doctor, and we treat them over a course of sessions. -Contact: Marit Bakken -Language to write in: en - -Everyone the site serves: -- door patients: for someone with pain or an injury, or a patient who already has a time here; behind it: new-patient, move-or-cancel -- door referrers: for a doctor, a hospital ward or an insurer sending someone to us; behind it: referral -- new-patient: someone with something that hurts - wants: a first appointment with a therapist who suits them. Handled by reception. Stages: open -> offered -> booked -> declined. -- move-or-cancel: a patient who already has a time and cannot come - wants: the time moved, or the slot freed. Handled by reception. Stages: open -> rebooked -> released. -- referral: a GP or a hospital ward sending a patient - wants: the patient seen, and a report back when the course ends. Handled by reception. Stages: open -> accepted -> booked -> reported -> returned. -- insurance-approval: the receptionist, before a course that an insurer has to approve - wants: the request sent and its answer kept where the patient's case is. Handled by reception. Stages: open -> sent -> approved -> refused. -- no-show: a therapist whose patient did not turn up and did not call - wants: the reception to ring them and get them back in. Handled by reception. Stages: open -> contacted -> rebooked -> closed. - -The page: questions/received/new-patient.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to form", - "description": "Your message has been received. A physiotherapist will review your request and get back to you.", - "next_description": "We will contact you to find a suitable time for your first session.", - "next_heading": "What happens next", - "question": "What happens after I submit?" -} diff --git a/vendor/trainer/runs/physio-2026-09-22/llm/05-questions_received_referral.yaml.md b/vendor/trainer/runs/physio-2026-09-22/llm/05-questions_received_referral.yaml.md deleted file mode 100644 index 1af28d8..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/llm/05-questions_received_referral.yaml.md +++ /dev/null @@ -1,46 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Bakken Fysioterapi -About: Six physiotherapists and a receptionist. People come with pain, injuries and after operations, on their own or sent by a doctor, and we treat them over a course of sessions. -Contact: Marit Bakken -Language to write in: en - -Everyone the site serves: -- door patients: for someone with pain or an injury, or a patient who already has a time here; behind it: new-patient, move-or-cancel -- door referrers: for a doctor, a hospital ward or an insurer sending someone to us; behind it: referral -- new-patient: someone with something that hurts - wants: a first appointment with a therapist who suits them. Handled by reception. Stages: open -> offered -> booked -> declined. -- move-or-cancel: a patient who already has a time and cannot come - wants: the time moved, or the slot freed. Handled by reception. Stages: open -> rebooked -> released. -- referral: a GP or a hospital ward sending a patient - wants: the patient seen, and a report back when the course ends. Handled by reception. Stages: open -> accepted -> booked -> reported -> returned. -- insurance-approval: the receptionist, before a course that an insurer has to approve - wants: the request sent and its answer kept where the patient's case is. Handled by reception. Stages: open -> sent -> approved -> refused. -- no-show: a therapist whose patient did not turn up and did not call - wants: the reception to ring them and get them back in. Handled by reception. Stages: open -> contacted -> rebooked -> closed. - -The page: questions/received/referral.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to form", - "description": "Your referral has been received. We will process it and contact you soon.", - "next_description": "We will contact the patient, book an appointment, and send a report when the course is complete.", - "next_heading": "What happens next", - "question": "What happens after I send a referral?" -} diff --git a/vendor/trainer/runs/physio-2026-09-22/llm/06-questions_reception_index.yaml.md b/vendor/trainer/runs/physio-2026-09-22/llm/06-questions_reception_index.yaml.md deleted file mode 100644 index 4688ec6..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/llm/06-questions_reception_index.yaml.md +++ /dev/null @@ -1,158 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Bakken Fysioterapi -About: Six physiotherapists and a receptionist. People come with pain, injuries and after operations, on their own or sent by a doctor, and we treat them over a course of sessions. -Contact: Marit Bakken -Language to write in: en - -Everyone the site serves: -- door patients: for someone with pain or an injury, or a patient who already has a time here; behind it: new-patient, move-or-cancel -- door referrers: for a doctor, a hospital ward or an insurer sending someone to us; behind it: referral -- new-patient: someone with something that hurts - wants: a first appointment with a therapist who suits them. Handled by reception. Stages: open -> offered -> booked -> declined. -- move-or-cancel: a patient who already has a time and cannot come - wants: the time moved, or the slot freed. Handled by reception. Stages: open -> rebooked -> released. -- referral: a GP or a hospital ward sending a patient - wants: the patient seen, and a report back when the course ends. Handled by reception. Stages: open -> accepted -> booked -> reported -> returned. -- insurance-approval: the receptionist, before a course that an insurer has to approve - wants: the request sent and its answer kept where the patient's case is. Handled by reception. Stages: open -> sent -> approved -> refused. -- no-show: a therapist whose patient did not turn up and did not call - wants: the reception to ring them and get them back in. Handled by reception. Stages: open -> contacted -> rebooked -> closed. - -The page: questions/reception/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "approvals": { - "description": "", - "heading": "", - "moves": { - "open->refused": "refused>", - "open->sent": "sent>", - "sent->approved": "approved>", - "sent->refused": "refused>" - } - }, - "cancellations": { - "description": "", - "heading": "", - "moves": { - "open->rebooked": "rebooked>", - "open->released": "released>" - } - }, - "no_shows": { - "description": "", - "heading": "", - "moves": { - "contacted->closed": "closed>", - "contacted->rebooked": "rebooked>", - "open->closed": "closed>", - "open->contacted": "contacted>" - } - }, - "referrals": { - "description": "", - "heading": "", - "moves": { - "accepted->booked": "booked>", - "accepted->returned": "returned>", - "booked->returned": "returned>", - "open->accepted": "accepted>", - "open->returned": "returned>" - } - }, - "requests": { - "description": "", - "heading": "", - "moves": { - "offered->booked": "booked>", - "offered->declined": "declined>", - "open->declined": "declined>", - "open->offered": "offered>" - } - } - }, - "confirm": "", - "description": "", - "links": { - "insurance-approval": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "buckets": { - "approvals": { - "description": "Handle insurance approval requests and track their status for each patient case.", - "heading": "Insurance approvals", - "moves": { - "open->refused": "Mark refused", - "open->sent": "Send request", - "sent->approved": "Mark approved", - "sent->refused": "Mark refused" - } - }, - "cancellations": { - "description": "Free up slots or reschedule appointments for patients who can't attend.", - "heading": "Appointment changes", - "moves": { - "open->rebooked": "Move to rebooked", - "open->released": "Release slot" - } - }, - "no_shows": { - "description": "Track patients who missed their appointment and follow up to get them back.", - "heading": "Missed appointments", - "moves": { - "contacted->closed": "Close case", - "contacted->rebooked": "Rebook patient", - "open->closed": "Close case", - "open->contacted": "Contact patient" - } - }, - "referrals": { - "description": "Process incoming referrals from GPs and hospitals, track patient progress, and send reports.", - "heading": "Referral management", - "moves": { - "accepted->booked": "Accept & book", - "accepted->returned": "Return to referrer", - "booked->returned": "Mark returned", - "open->accepted": "Accept referral", - "open->returned": "Return referral" - } - }, - "requests": { - "description": "Manage new patient bookings and handle cancellations for existing appointments.", - "heading": "Patient bookings", - "moves": { - "offered->booked": "Offer & book", - "offered->declined": "Offer declined", - "open->declined": "Decline offer", - "open->offered": "Offer appointment" - } - } - }, - "confirm": "Confirm", - "description": "Your workspace for managing patient cases and administrative tasks.", - "links": { - "insurance-approval": { - "button": "View requests", - "description": "See all insurance approval requests and their current status.", - "heading": "Insurance approvals" - } - }, - "question": "What would you like to do today?" -} diff --git a/vendor/trainer/runs/physio-2026-09-22/llm/07-questions_reception_insurance-approval-sent.yaml.md b/vendor/trainer/runs/physio-2026-09-22/llm/07-questions_reception_insurance-approval-sent.yaml.md deleted file mode 100644 index 451abb9..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/llm/07-questions_reception_insurance-approval-sent.yaml.md +++ /dev/null @@ -1,46 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Bakken Fysioterapi -About: Six physiotherapists and a receptionist. People come with pain, injuries and after operations, on their own or sent by a doctor, and we treat them over a course of sessions. -Contact: Marit Bakken -Language to write in: en - -Everyone the site serves: -- door patients: for someone with pain or an injury, or a patient who already has a time here; behind it: new-patient, move-or-cancel -- door referrers: for a doctor, a hospital ward or an insurer sending someone to us; behind it: referral -- new-patient: someone with something that hurts - wants: a first appointment with a therapist who suits them. Handled by reception. Stages: open -> offered -> booked -> declined. -- move-or-cancel: a patient who already has a time and cannot come - wants: the time moved, or the slot freed. Handled by reception. Stages: open -> rebooked -> released. -- referral: a GP or a hospital ward sending a patient - wants: the patient seen, and a report back when the course ends. Handled by reception. Stages: open -> accepted -> booked -> reported -> returned. -- insurance-approval: the receptionist, before a course that an insurer has to approve - wants: the request sent and its answer kept where the patient's case is. Handled by reception. Stages: open -> sent -> approved -> refused. -- no-show: a therapist whose patient did not turn up and did not call - wants: the reception to ring them and get them back in. Handled by reception. Stages: open -> contacted -> rebooked -> closed. - -The page: questions/reception/insurance-approval-sent.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Back to form", - "description": "We have sent your request to the insurer. They will review it and get back to us.", - "next_description": "We will keep you updated on the status of your case.", - "next_heading": "Request sent", - "question": "What happens next?" -} diff --git a/vendor/trainer/runs/physio-2026-09-22/llm/08-questions_reception_insurance-approval.yaml.md b/vendor/trainer/runs/physio-2026-09-22/llm/08-questions_reception_insurance-approval.yaml.md deleted file mode 100644 index c63efd1..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/llm/08-questions_reception_insurance-approval.yaml.md +++ /dev/null @@ -1,60 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Bakken Fysioterapi -About: Six physiotherapists and a receptionist. People come with pain, injuries and after operations, on their own or sent by a doctor, and we treat them over a course of sessions. -Contact: Marit Bakken -Language to write in: en - -Everyone the site serves: -- door patients: for someone with pain or an injury, or a patient who already has a time here; behind it: new-patient, move-or-cancel -- door referrers: for a doctor, a hospital ward or an insurer sending someone to us; behind it: referral -- new-patient: someone with something that hurts - wants: a first appointment with a therapist who suits them. Handled by reception. Stages: open -> offered -> booked -> declined. -- move-or-cancel: a patient who already has a time and cannot come - wants: the time moved, or the slot freed. Handled by reception. Stages: open -> rebooked -> released. -- referral: a GP or a hospital ward sending a patient - wants: the patient seen, and a report back when the course ends. Handled by reception. Stages: open -> accepted -> booked -> reported -> returned. -- insurance-approval: the receptionist, before a course that an insurer has to approve - wants: the request sent and its answer kept where the patient's case is. Handled by reception. Stages: open -> sent -> approved -> refused. -- no-show: a therapist whose patient did not turn up and did not call - wants: the reception to ring them and get them back in. Handled by reception. Stages: open -> contacted -> rebooked -> closed. - -The page: questions/reception/insurance-approval.yaml -It is a page only one role inside the business can open, holding one form. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "case_number": "", - "insurer": "", - "patient_name": "", - "sessions": "" - }, - "page_description": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "button": "Submit request", - "description": "Send the insurance approval request and keep the answer attached to the patient's case file.", - "form_title": "Insurance approval", - "heading": "Request insurance approval", - "labels": { - "case_number": "Case number", - "insurer": "Insurer", - "patient_name": "Patient name", - "sessions": "Number of sessions" - }, - "page_description": "Handle insurance approval requests for patient treatment courses.", - "question": "Do you need insurance approval for this patient's treatment?" -} diff --git a/vendor/trainer/runs/physio-2026-09-22/llm/09-questions_referrers_index.yaml.md b/vendor/trainer/runs/physio-2026-09-22/llm/09-questions_referrers_index.yaml.md deleted file mode 100644 index 969f1e7..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/llm/09-questions_referrers_index.yaml.md +++ /dev/null @@ -1,70 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Bakken Fysioterapi -About: Six physiotherapists and a receptionist. People come with pain, injuries and after operations, on their own or sent by a doctor, and we treat them over a course of sessions. -Contact: Marit Bakken -Language to write in: en - -Everyone the site serves: -- door patients: for someone with pain or an injury, or a patient who already has a time here; behind it: new-patient, move-or-cancel -- door referrers: for a doctor, a hospital ward or an insurer sending someone to us; behind it: referral -- new-patient: someone with something that hurts - wants: a first appointment with a therapist who suits them. Handled by reception. Stages: open -> offered -> booked -> declined. -- move-or-cancel: a patient who already has a time and cannot come - wants: the time moved, or the slot freed. Handled by reception. Stages: open -> rebooked -> released. -- referral: a GP or a hospital ward sending a patient - wants: the patient seen, and a report back when the course ends. Handled by reception. Stages: open -> accepted -> booked -> reported -> returned. -- insurance-approval: the receptionist, before a course that an insurer has to approve - wants: the request sent and its answer kept where the patient's case is. Handled by reception. Stages: open -> sent -> approved -> refused. -- no-show: a therapist whose patient did not turn up and did not call - wants: the reception to ring them and get them back in. Handled by reception. Stages: open -> contacted -> rebooked -> closed. - -The page: questions/referrers/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "referral": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "patient_name": "", - "patient_phone": "", - "referrer": "", - "urgency": "", - "what_for": "" - } - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "description": "We help patients with pain, injuries, or after operations. You can send a patient here or ask about a referral.", - "needs": { - "referral": { - "button": "Send referral", - "description": "Tell us about the patient and we will contact them to start treatment.", - "form_title": "Referral form", - "heading": "Send a patient for physiotherapy", - "labels": { - "patient_name": "Patient's full name", - "patient_phone": "Patient's phone number", - "referrer": "Your name and clinic", - "urgency": "How urgent is the need?", - "what_for": "Reason for referral" - } - } - }, - "question": "Are you sending a patient to us, or do you have a question about a referral?" -} diff --git a/vendor/trainer/runs/physio-2026-09-22/llm/10-questions_therapists_index.yaml.md b/vendor/trainer/runs/physio-2026-09-22/llm/10-questions_therapists_index.yaml.md deleted file mode 100644 index 577a6f0..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/llm/10-questions_therapists_index.yaml.md +++ /dev/null @@ -1,74 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Bakken Fysioterapi -About: Six physiotherapists and a receptionist. People come with pain, injuries and after operations, on their own or sent by a doctor, and we treat them over a course of sessions. -Contact: Marit Bakken -Language to write in: en - -Everyone the site serves: -- door patients: for someone with pain or an injury, or a patient who already has a time here; behind it: new-patient, move-or-cancel -- door referrers: for a doctor, a hospital ward or an insurer sending someone to us; behind it: referral -- new-patient: someone with something that hurts - wants: a first appointment with a therapist who suits them. Handled by reception. Stages: open -> offered -> booked -> declined. -- move-or-cancel: a patient who already has a time and cannot come - wants: the time moved, or the slot freed. Handled by reception. Stages: open -> rebooked -> released. -- referral: a GP or a hospital ward sending a patient - wants: the patient seen, and a report back when the course ends. Handled by reception. Stages: open -> accepted -> booked -> reported -> returned. -- insurance-approval: the receptionist, before a course that an insurer has to approve - wants: the request sent and its answer kept where the patient's case is. Handled by reception. Stages: open -> sent -> approved -> refused. -- no-show: a therapist whose patient did not turn up and did not call - wants: the reception to ring them and get them back in. Handled by reception. Stages: open -> contacted -> rebooked -> closed. - -The page: questions/therapists/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "referrals": { - "description": "", - "heading": "", - "moves": { - "booked->reported": "reported>" - } - } - }, - "confirm": "", - "description": "", - "links": { - "no-show": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "buckets": { - "referrals": { - "description": "A GP or hospital ward sends a patient here for treatment and reports back when the course ends.", - "heading": "Handle incoming referrals", - "moves": { - "booked->reported": "Mark as reported" - } - } - }, - "confirm": "Confirm move", - "description": "Manage the cases that come through this desk.", - "links": { - "no-show": { - "button": "Contact patient", - "description": "Get in touch with the patient who missed their appointment and reschedule them.", - "heading": "Handle no-show patients" - } - }, - "question": "What case do you want to work on?" -} diff --git a/vendor/trainer/runs/physio-2026-09-22/llm/11-questions_therapists_no-show-sent.yaml.md b/vendor/trainer/runs/physio-2026-09-22/llm/11-questions_therapists_no-show-sent.yaml.md deleted file mode 100644 index da7294f..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/llm/11-questions_therapists_no-show-sent.yaml.md +++ /dev/null @@ -1,46 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Bakken Fysioterapi -About: Six physiotherapists and a receptionist. People come with pain, injuries and after operations, on their own or sent by a doctor, and we treat them over a course of sessions. -Contact: Marit Bakken -Language to write in: en - -Everyone the site serves: -- door patients: for someone with pain or an injury, or a patient who already has a time here; behind it: new-patient, move-or-cancel -- door referrers: for a doctor, a hospital ward or an insurer sending someone to us; behind it: referral -- new-patient: someone with something that hurts - wants: a first appointment with a therapist who suits them. Handled by reception. Stages: open -> offered -> booked -> declined. -- move-or-cancel: a patient who already has a time and cannot come - wants: the time moved, or the slot freed. Handled by reception. Stages: open -> rebooked -> released. -- referral: a GP or a hospital ward sending a patient - wants: the patient seen, and a report back when the course ends. Handled by reception. Stages: open -> accepted -> booked -> reported -> returned. -- insurance-approval: the receptionist, before a course that an insurer has to approve - wants: the request sent and its answer kept where the patient's case is. Handled by reception. Stages: open -> sent -> approved -> refused. -- no-show: a therapist whose patient did not turn up and did not call - wants: the reception to ring them and get them back in. Handled by reception. Stages: open -> contacted -> rebooked -> closed. - -The page: questions/therapists/no-show-sent.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Tilbake", - "description": "Du har sendt inn skjemaet om en pasient som ikke viste opp. Her finner du neste steg.", - "next_description": "Receptionen ringer pasienten for å finne en ny tid. Du får beskjed når prosessen er ferdig.", - "next_heading": "Hva skjer nå?", - "question": "Hvem tar seg av dette?" -} diff --git a/vendor/trainer/runs/physio-2026-09-22/llm/12-questions_therapists_no-show.yaml.md b/vendor/trainer/runs/physio-2026-09-22/llm/12-questions_therapists_no-show.yaml.md deleted file mode 100644 index 2122682..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/llm/12-questions_therapists_no-show.yaml.md +++ /dev/null @@ -1,58 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Bakken Fysioterapi -About: Six physiotherapists and a receptionist. People come with pain, injuries and after operations, on their own or sent by a doctor, and we treat them over a course of sessions. -Contact: Marit Bakken -Language to write in: en - -Everyone the site serves: -- door patients: for someone with pain or an injury, or a patient who already has a time here; behind it: new-patient, move-or-cancel -- door referrers: for a doctor, a hospital ward or an insurer sending someone to us; behind it: referral -- new-patient: someone with something that hurts - wants: a first appointment with a therapist who suits them. Handled by reception. Stages: open -> offered -> booked -> declined. -- move-or-cancel: a patient who already has a time and cannot come - wants: the time moved, or the slot freed. Handled by reception. Stages: open -> rebooked -> released. -- referral: a GP or a hospital ward sending a patient - wants: the patient seen, and a report back when the course ends. Handled by reception. Stages: open -> accepted -> booked -> reported -> returned. -- insurance-approval: the receptionist, before a course that an insurer has to approve - wants: the request sent and its answer kept where the patient's case is. Handled by reception. Stages: open -> sent -> approved -> refused. -- no-show: a therapist whose patient did not turn up and did not call - wants: the reception to ring them and get them back in. Handled by reception. Stages: open -> contacted -> rebooked -> closed. - -The page: questions/therapists/no-show.yaml -It is a page only one role inside the business can open, holding one form. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "appointment_day": "", - "note": "", - "patient_name": "" - }, - "page_description": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "button": "Send request", - "description": "Report a patient who didn't show up so we can follow up and fill the slot.", - "form_title": "No-show report", - "heading": "Report a no-show patient", - "labels": { - "appointment_day": "Appointment date", - "note": "Additional note", - "patient_name": "Patient name" - }, - "page_description": "Use this form to report a patient who missed their appointment without calling.", - "question": "Did a patient miss their appointment without calling?" -} diff --git a/vendor/trainer/runs/physio-2026-09-22/model.json b/vendor/trainer/runs/physio-2026-09-22/model.json deleted file mode 100644 index da7bc3c..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/model.json +++ /dev/null @@ -1,652 +0,0 @@ -{ - "buckets": { - "approvals": { - "desks": [ - { - "group": "reception", - "moves": [ - { - "from": "open", - "label": "Send request", - "to": "sent" - }, - { - "from": "open", - "label": "Mark refused", - "to": "refused" - }, - { - "from": "sent", - "label": "Mark approved", - "to": "approved" - }, - { - "from": "sent", - "label": "Mark refused", - "to": "refused" - } - ], - "page": "/reception" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "sent", - "refused" - ], - "sent": [ - "approved", - "refused" - ] - } - }, - "cancellations": { - "desks": [ - { - "group": "reception", - "moves": [ - { - "from": "open", - "label": "Move to rebooked", - "to": "rebooked" - }, - { - "from": "open", - "label": "Release slot", - "to": "released" - } - ], - "page": "/reception" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "rebooked", - "released" - ] - } - }, - "no_shows": { - "desks": [ - { - "group": "reception", - "moves": [ - { - "from": "contacted", - "label": "Rebook patient", - "to": "rebooked" - }, - { - "from": "contacted", - "label": "Close case", - "to": "closed" - }, - { - "from": "open", - "label": "Contact patient", - "to": "contacted" - }, - { - "from": "open", - "label": "Close case", - "to": "closed" - } - ], - "page": "/reception" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "contacted": [ - "rebooked", - "closed" - ], - "open": [ - "contacted", - "closed" - ] - } - }, - "referrals": { - "desks": [ - { - "group": "reception", - "moves": [ - { - "from": "accepted", - "label": "Accept & book", - "to": "booked" - }, - { - "from": "accepted", - "label": "Return to referrer", - "to": "returned" - }, - { - "from": "booked", - "label": "Mark returned", - "to": "returned" - }, - { - "from": "open", - "label": "Accept referral", - "to": "accepted" - }, - { - "from": "open", - "label": "Return referral", - "to": "returned" - } - ], - "page": "/reception" - }, - { - "group": "therapists", - "moves": [ - { - "from": "booked", - "label": "Mark as reported", - "to": "reported" - } - ], - "page": "/therapists" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "accepted": [ - "booked", - "returned" - ], - "booked": [ - "reported", - "returned" - ], - "open": [ - "accepted", - "returned" - ] - } - }, - "requests": { - "desks": [ - { - "group": "reception", - "moves": [ - { - "from": "offered", - "label": "Offer & book", - "to": "booked" - }, - { - "from": "offered", - "label": "Offer declined", - "to": "declined" - }, - { - "from": "open", - "label": "Offer appointment", - "to": "offered" - }, - { - "from": "open", - "label": "Decline offer", - "to": "declined" - } - ], - "page": "/reception" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "offered": [ - "booked", - "declined" - ], - "open": [ - "offered", - "declined" - ] - } - } - }, - "needs": [ - { - "done_when": [ - "booked", - "declined" - ], - "enters_as": null, - "handled_by": "reception", - "id": "new-patient", - "lands_in": "requests", - "steps": [ - { - "alternative": "I have pain or an injury", - "expect": [ - "I have pain or an injury" - ], - "fields": [], - "options": [ - { - "description": "You have pain, an injury, or a new appointment you need to manage.", - "name": "I have pain or an injury" - }, - { - "description": "You are sending someone to us for treatment or a report.", - "name": "I am a GP or hospital" - } - ], - "page": "/", - "question": "Who are you?" - }, - { - "alternative": "Book your first appointment", - "expect": [ - "Book your first appointment" - ], - "fields": [ - { - "label": "Your name", - "name": "name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Phone number", - "name": "phone", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "What hurts", - "name": "what_hurts", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "When did it start?", - "name": "when", - "optional": false, - "options": [ - "Mornings", - "Afternoons", - "Any time" - ], - "type": "select" - }, - { - "label": "Sent by a doctor?", - "name": "sent_by_doctor", - "optional": true, - "options": [ - "Yes", - "No" - ], - "type": "select" - } - ], - "options": [ - { - "description": "We'll match you with a therapist who suits your needs.", - "name": "Book your first appointment" - }, - { - "description": "Let us know if you can't make it or need a new time.", - "name": "Move or cancel your appointment" - } - ], - "page": "/patients", - "question": "What brings you here today?" - } - ], - "success": [ - "booked" - ], - "wants": "a first appointment with a therapist who suits them", - "who": "someone with something that hurts" - }, - { - "done_when": [ - "rebooked", - "released" - ], - "enters_as": null, - "handled_by": "reception", - "id": "move-or-cancel", - "lands_in": "cancellations", - "steps": [ - { - "alternative": "I have pain or an injury", - "expect": [ - "I have pain or an injury" - ], - "fields": [], - "options": [ - { - "description": "You have pain, an injury, or a new appointment you need to manage.", - "name": "I have pain or an injury" - }, - { - "description": "You are sending someone to us for treatment or a report.", - "name": "I am a GP or hospital" - } - ], - "page": "/", - "question": "Who are you?" - }, - { - "alternative": "Move or cancel your appointment", - "expect": [ - "Move or cancel your appointment" - ], - "fields": [ - { - "label": "Your name", - "name": "name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Phone number", - "name": "phone", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "Appointment day", - "name": "appointment_day", - "optional": false, - "options": [], - "type": "date" - }, - { - "label": "New time preference", - "name": "new_time_wish", - "optional": true, - "options": [], - "type": "text" - } - ], - "options": [ - { - "description": "We'll match you with a therapist who suits your needs.", - "name": "Book your first appointment" - }, - { - "description": "Let us know if you can't make it or need a new time.", - "name": "Move or cancel your appointment" - } - ], - "page": "/patients", - "question": "What brings you here today?" - } - ], - "success": [ - "rebooked" - ], - "wants": "the time moved, or the slot freed", - "who": "a patient who already has a time and cannot come" - }, - { - "done_when": [ - "reported", - "returned" - ], - "enters_as": null, - "handled_by": "reception", - "id": "referral", - "lands_in": "referrals", - "steps": [ - { - "alternative": "I am a GP or hospital", - "expect": [ - "I am a GP or hospital" - ], - "fields": [], - "options": [ - { - "description": "You have pain, an injury, or a new appointment you need to manage.", - "name": "I have pain or an injury" - }, - { - "description": "You are sending someone to us for treatment or a report.", - "name": "I am a GP or hospital" - } - ], - "page": "/", - "question": "Who are you?" - }, - { - "alternative": "Send a patient for physiotherapy", - "expect": [ - "Send a patient for physiotherapy" - ], - "fields": [ - { - "label": "Patient's full name", - "name": "patient_name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Patient's phone number", - "name": "patient_phone", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "Your name and clinic", - "name": "referrer", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Reason for referral", - "name": "what_for", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "How urgent is the need?", - "name": "urgency", - "optional": false, - "options": [ - "This week", - "Within a month", - "Routine" - ], - "type": "select" - } - ], - "options": [ - { - "description": "Tell us about the patient and we will contact them to start treatment.", - "name": "Send a patient for physiotherapy" - } - ], - "page": "/referrers", - "question": "Are you sending a patient to us, or do you have a question about a referral?" - } - ], - "success": [ - "reported" - ], - "wants": "the patient seen, and a report back when the course ends", - "who": "a GP or a hospital ward sending a patient" - }, - { - "done_when": [ - "approved", - "refused" - ], - "enters_as": "reception", - "handled_by": "reception", - "id": "insurance-approval", - "lands_in": "approvals", - "steps": [ - { - "alternative": "Request insurance approval", - "expect": [ - "Request insurance approval" - ], - "fields": [ - { - "label": "Patient name", - "name": "patient_name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Insurer", - "name": "insurer", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Number of sessions", - "name": "sessions", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Case number", - "name": "case_number", - "optional": true, - "options": [], - "type": "text" - } - ], - "options": [ - { - "description": "Send the insurance approval request and keep the answer attached to the patient's case file.", - "name": "Request insurance approval" - } - ], - "page": "/reception/insurance-approval", - "question": "Do you need insurance approval for this patient's treatment?" - } - ], - "success": [ - "approved" - ], - "wants": "the request sent and its answer kept where the patient's case is", - "who": "the receptionist, before a course that an insurer has to approve" - }, - { - "done_when": [ - "rebooked", - "closed" - ], - "enters_as": "therapists", - "handled_by": "reception", - "id": "no-show", - "lands_in": "no_shows", - "steps": [ - { - "alternative": "Report a no-show patient", - "expect": [ - "Report a no-show patient" - ], - "fields": [ - { - "label": "Patient name", - "name": "patient_name", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Appointment date", - "name": "appointment_day", - "optional": false, - "options": [], - "type": "date" - }, - { - "label": "Additional note", - "name": "note", - "optional": true, - "options": [], - "type": "text" - } - ], - "options": [ - { - "description": "Report a patient who didn't show up so we can follow up and fill the slot.", - "name": "Report a no-show patient" - } - ], - "page": "/therapists/no-show", - "question": "Did a patient miss their appointment without calling?" - } - ], - "success": [ - "rebooked" - ], - "wants": "the reception to ring them and get them back in", - "who": "a therapist whose patient did not turn up and did not call" - } - ], - "personas": [ - { - "id": "runner-knee", - "need": "new-patient", - "text": "I've been running for years and the outside of my right knee has started hurting after about five kilometres. I'd like someone to have a look, preferably in the mornings." - }, - { - "id": "post-surgery-mother", - "need": "new-patient", - "text": "My mother had a hip replacement three weeks ago and the hospital said she needs training. She can't do much on her own and I'll drive her." - }, - { - "id": "sick-child", - "need": "move-or-cancel", - "text": "I have a session on Thursday at ten but my daughter has a fever and I can't come. Can I move it?" - }, - { - "id": "sent-abroad", - "need": "move-or-cancel", - "text": "Work is sending me abroad next week so my appointment on the 3rd is off. Just free the slot, I'll be in touch when I'm back." - }, - { - "id": "gp-shoulder", - "need": "referral", - "text": "I'm a GP. A patient of mine has a frozen shoulder that isn't improving with what I can offer. I'd like her to start with you and hear how it goes." - }, - { - "id": "hospital-discharge", - "need": "referral", - "text": "Orthopaedic ward here. We're discharging a man after an ankle fracture on Friday and need follow-up rehab arranged near where he lives. He'll need a report for his sick leave." - }, - { - "id": "reception-approval", - "need": "insurance-approval", - "text": "The patient in room two has a policy that covers twelve sessions if the insurer signs off first. I need to send that off and keep track of the answer." - }, - { - "id": "therapist-no-show", - "need": "no-show", - "text": "My two o'clock didn't turn up and didn't call. Second time. Someone needs to ring him." - } - ] -} \ No newline at end of file diff --git a/vendor/trainer/runs/physio-2026-09-22/needs.yaml b/vendor/trainer/runs/physio-2026-09-22/needs.yaml deleted file mode 100644 index 564b34b..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/needs.yaml +++ /dev/null @@ -1,125 +0,0 @@ -needs: -- done_when: - - booked - - declined - enters: / - handled_by: reception - id: new-patient - lands_in: requests - max_fields: 4 - max_steps: 2 - stages: - - open - - offered - - booked - - declined - success: - - booked - via: I have pain or an injury - wants: a first appointment with a therapist who suits them - who: someone with something that hurts -- done_when: - - rebooked - - released - enters: / - handled_by: reception - id: move-or-cancel - lands_in: cancellations - max_fields: 3 - max_steps: 2 - stages: - - open - - rebooked - - released - success: - - rebooked - via: I have pain or an injury - wants: the time moved, or the slot freed - who: a patient who already has a time and cannot come -- also_moved_by: - - therapists - done_when: - - reported - - returned - enters: / - handled_by: reception - id: referral - lands_in: referrals - max_fields: 5 - max_steps: 2 - stages: - - open - - accepted - - booked - - reported - - returned - success: - - reported - via: I am a GP or hospital - wants: the patient seen, and a report back when the course ends - who: a GP or a hospital ward sending a patient -- done_when: - - approved - - refused - enters: /reception/insurance-approval - enters_as: reception - handled_by: reception - id: insurance-approval - lands_in: approvals - max_fields: 3 - max_steps: 1 - stages: - - open - - sent - - approved - - refused - success: - - approved - via: Request insurance approval - wants: the request sent and its answer kept where the patient's case is - who: the receptionist, before a course that an insurer has to approve -- done_when: - - rebooked - - closed - enters: /therapists/no-show - enters_as: therapists - handled_by: reception - id: no-show - lands_in: no_shows - max_fields: 2 - max_steps: 1 - stages: - - open - - contacted - - rebooked - - closed - success: - - rebooked - via: Report a no-show patient - wants: the reception to ring them and get them back in - who: a therapist whose patient did not turn up and did not call -personas: -- id: runner-knee - need: new-patient - text: I've been running for years and the outside of my right knee has started hurting after about five kilometres. I'd like someone to have a look, preferably in the mornings. -- id: post-surgery-mother - need: new-patient - text: My mother had a hip replacement three weeks ago and the hospital said she needs training. She can't do much on her own and I'll drive her. -- id: sick-child - need: move-or-cancel - text: I have a session on Thursday at ten but my daughter has a fever and I can't come. Can I move it? -- id: sent-abroad - need: move-or-cancel - text: Work is sending me abroad next week so my appointment on the 3rd is off. Just free the slot, I'll be in touch when I'm back. -- id: gp-shoulder - need: referral - text: I'm a GP. A patient of mine has a frozen shoulder that isn't improving with what I can offer. I'd like her to start with you and hear how it goes. -- id: hospital-discharge - need: referral - text: Orthopaedic ward here. We're discharging a man after an ankle fracture on Friday and need follow-up rehab arranged near where he lives. He'll need a report for his sick leave. -- id: reception-approval - need: insurance-approval - text: The patient in room two has a policy that covers twelve sessions if the insurer signs off first. I need to send that off and keep track of the answer. -- id: therapist-no-show - need: no-show - text: My two o'clock didn't turn up and didn't call. Second time. Someone needs to ring him. diff --git a/vendor/trainer/runs/physio-2026-09-22/questions/index.yaml b/vendor/trainer/runs/physio-2026-09-22/questions/index.yaml deleted file mode 100644 index 8b04b78..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/questions/index.yaml +++ /dev/null @@ -1,16 +0,0 @@ -alternatives: -- action: /patients - consequence: - - Start here - description: You have pain, an injury, or a new appointment you need to manage. - name: I have pain or an injury -- action: /referrers - consequence: - - Send a patient - description: You are sending someone to us for treatment or a report. - name: I am a GP or hospital -description: Tell us who you are so we can help you the right way. -name: Who are you? -responsible: - contact: marit@bakkenfysio.example - name: Marit Bakken diff --git a/vendor/trainer/runs/physio-2026-09-22/questions/patients/index.yaml b/vendor/trainer/runs/physio-2026-09-22/questions/patients/index.yaml deleted file mode 100644 index 7faeff8..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/questions/patients/index.yaml +++ /dev/null @@ -1,60 +0,0 @@ -alternatives: -- action: /received/new-patient - consequence: - - Book first visit - description: We'll match you with a therapist who suits your needs. - features: - - name: Book first visit - requirements: - - label: Your name - name: name - type: text - - label: Phone number - name: phone - type: tel - - label: What hurts - name: what_hurts - type: textarea - - label: When did it start? - name: when - options: - - Mornings - - Afternoons - - Any time - type: select - - label: Sent by a doctor? - name: sent_by_doctor - optional: true - options: - - Yes - - No - type: select - name: Book your first appointment - record_as: requests -- action: /received/move-or-cancel - consequence: - - Change booking - description: Let us know if you can't make it or need a new time. - features: - - name: Move or cancel - requirements: - - label: Your name - name: name - type: text - - label: Phone number - name: phone - type: tel - - label: Appointment day - name: appointment_day - type: date - - label: New time preference - name: new_time_wish - optional: true - type: text - name: Move or cancel your appointment - record_as: cancellations -description: Choose what brings you here today. -name: What brings you here today? -responsible: - contact: marit@bakkenfysio.example - name: Marit Bakken diff --git a/vendor/trainer/runs/physio-2026-09-22/questions/received/move-or-cancel.yaml b/vendor/trainer/runs/physio-2026-09-22/questions/received/move-or-cancel.yaml deleted file mode 100644 index bd6aa85..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/questions/received/move-or-cancel.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Vi setter oss inn på sakene dine og finner en ny tid som passer. - name: Vi tar vare på tiden din -- action: / - consequence: - - Retur - description: '' - name: Retur -description: Når du har sendt inn skjemaet, tar imot oss meldingen og sender en bekreftelse. -name: Hva skjer nå? diff --git a/vendor/trainer/runs/physio-2026-09-22/questions/received/new-patient.yaml b/vendor/trainer/runs/physio-2026-09-22/questions/received/new-patient.yaml deleted file mode 100644 index 411f524..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/questions/received/new-patient.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: We will contact you to find a suitable time for your first session. - name: What happens next -- action: / - consequence: - - Back to form - description: '' - name: Back to form -description: Your message has been received. A physiotherapist will review your request and get back to you. -name: What happens after I submit? diff --git a/vendor/trainer/runs/physio-2026-09-22/questions/received/referral.yaml b/vendor/trainer/runs/physio-2026-09-22/questions/received/referral.yaml deleted file mode 100644 index bf87702..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/questions/received/referral.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: We will contact the patient, book an appointment, and send a report when the course is complete. - name: What happens next -- action: / - consequence: - - Back to form - description: '' - name: Back to form -description: Your referral has been received. We will process it and contact you soon. -name: What happens after I send a referral? diff --git a/vendor/trainer/runs/physio-2026-09-22/questions/reception/_section.yaml b/vendor/trainer/runs/physio-2026-09-22/questions/reception/_section.yaml deleted file mode 100644 index 768a95b..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/questions/reception/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: reception diff --git a/vendor/trainer/runs/physio-2026-09-22/questions/reception/index.yaml b/vendor/trainer/runs/physio-2026-09-22/questions/reception/index.yaml deleted file mode 100644 index c9208b9..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/questions/reception/index.yaml +++ /dev/null @@ -1,138 +0,0 @@ -alternatives: -- action: /reception - consequence: - - Confirm - description: Handle insurance approval requests and track their status for each patient case. - features: - - description: '' - name: '' - resource: - requires_group: reception - source: - bucket: approvals - kind: kv - transitions: - - from: open - label: Send request - to: sent - - from: open - label: Mark refused - to: refused - - from: sent - label: Mark approved - to: approved - - from: sent - label: Mark refused - to: refused - name: Insurance approvals -- action: /reception - consequence: - - Confirm - description: Free up slots or reschedule appointments for patients who can't attend. - features: - - description: '' - name: '' - resource: - requires_group: reception - source: - bucket: cancellations - kind: kv - transitions: - - from: open - label: Move to rebooked - to: rebooked - - from: open - label: Release slot - to: released - name: Appointment changes -- action: /reception - consequence: - - Confirm - description: Track patients who missed their appointment and follow up to get them back. - features: - - description: '' - name: '' - resource: - requires_group: reception - source: - bucket: no_shows - kind: kv - transitions: - - from: contacted - label: Rebook patient - to: rebooked - - from: contacted - label: Close case - to: closed - - from: open - label: Contact patient - to: contacted - - from: open - label: Close case - to: closed - name: Missed appointments -- action: /reception - consequence: - - Confirm - description: Process incoming referrals from GPs and hospitals, track patient progress, and send reports. - features: - - description: '' - name: '' - resource: - requires_group: reception - source: - bucket: referrals - kind: kv - transitions: - - from: accepted - label: Accept & book - to: booked - - from: accepted - label: Return to referrer - to: returned - - from: booked - label: Mark returned - to: returned - - from: open - label: Accept referral - to: accepted - - from: open - label: Return referral - to: returned - name: Referral management -- action: /reception - consequence: - - Confirm - description: Manage new patient bookings and handle cancellations for existing appointments. - features: - - description: '' - name: '' - resource: - requires_group: reception - source: - bucket: requests - kind: kv - transitions: - - from: offered - label: Offer & book - to: booked - - from: offered - label: Offer declined - to: declined - - from: open - label: Offer appointment - to: offered - - from: open - label: Decline offer - to: declined - name: Patient bookings -- action: /reception/insurance-approval - consequence: - - View requests - description: See all insurance approval requests and their current status. - name: Insurance approvals -description: Your workspace for managing patient cases and administrative tasks. -name: What would you like to do today? -responsible: - contact: marit@bakkenfysio.example - name: Marit Bakken diff --git a/vendor/trainer/runs/physio-2026-09-22/questions/reception/insurance-approval-sent.yaml b/vendor/trainer/runs/physio-2026-09-22/questions/reception/insurance-approval-sent.yaml deleted file mode 100644 index 7f67660..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/questions/reception/insurance-approval-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: We will keep you updated on the status of your case. - name: Request sent -- action: /reception - consequence: - - Back to form - description: '' - name: Back to form -description: We have sent your request to the insurer. They will review it and get back to us. -name: What happens next? diff --git a/vendor/trainer/runs/physio-2026-09-22/questions/reception/insurance-approval.yaml b/vendor/trainer/runs/physio-2026-09-22/questions/reception/insurance-approval.yaml deleted file mode 100644 index ffe302b..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/questions/reception/insurance-approval.yaml +++ /dev/null @@ -1,29 +0,0 @@ -alternatives: -- action: /reception/insurance-approval-sent - consequence: - - Submit request - description: Send the insurance approval request and keep the answer attached to the patient's case file. - features: - - name: Insurance approval - requirements: - - label: Patient name - name: patient_name - type: text - - label: Insurer - name: insurer - type: text - - label: Number of sessions - name: sessions - type: text - - label: Case number - name: case_number - optional: true - type: text - name: Request insurance approval - record_as: approvals -description: Handle insurance approval requests for patient treatment courses. -followup: false -name: Do you need insurance approval for this patient's treatment? -responsible: - contact: marit@bakkenfysio.example - name: Marit Bakken diff --git a/vendor/trainer/runs/physio-2026-09-22/questions/referrers/index.yaml b/vendor/trainer/runs/physio-2026-09-22/questions/referrers/index.yaml deleted file mode 100644 index fb4b1d1..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/questions/referrers/index.yaml +++ /dev/null @@ -1,34 +0,0 @@ -alternatives: -- action: /received/referral - consequence: - - Send referral - description: Tell us about the patient and we will contact them to start treatment. - features: - - name: Referral form - requirements: - - label: Patient's full name - name: patient_name - type: text - - label: Patient's phone number - name: patient_phone - type: tel - - label: Your name and clinic - name: referrer - type: text - - label: Reason for referral - name: what_for - type: textarea - - label: How urgent is the need? - name: urgency - options: - - This week - - Within a month - - Routine - type: select - name: Send a patient for physiotherapy - record_as: referrals -description: We help patients with pain, injuries, or after operations. You can send a patient here or ask about a referral. -name: Are you sending a patient to us, or do you have a question about a referral? -responsible: - contact: marit@bakkenfysio.example - name: Marit Bakken diff --git a/vendor/trainer/runs/physio-2026-09-22/questions/therapists/_section.yaml b/vendor/trainer/runs/physio-2026-09-22/questions/therapists/_section.yaml deleted file mode 100644 index 941c735..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/questions/therapists/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: therapists diff --git a/vendor/trainer/runs/physio-2026-09-22/questions/therapists/index.yaml b/vendor/trainer/runs/physio-2026-09-22/questions/therapists/index.yaml deleted file mode 100644 index e7707e7..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/questions/therapists/index.yaml +++ /dev/null @@ -1,28 +0,0 @@ -alternatives: -- action: /therapists - consequence: - - Confirm move - description: A GP or hospital ward sends a patient here for treatment and reports back when the course ends. - features: - - description: '' - name: '' - resource: - requires_group: therapists - source: - bucket: referrals - kind: kv - transitions: - - from: booked - label: Mark as reported - to: reported - name: Handle incoming referrals -- action: /therapists/no-show - consequence: - - Contact patient - description: Get in touch with the patient who missed their appointment and reschedule them. - name: Handle no-show patients -description: Manage the cases that come through this desk. -name: What case do you want to work on? -responsible: - contact: marit@bakkenfysio.example - name: Marit Bakken diff --git a/vendor/trainer/runs/physio-2026-09-22/questions/therapists/no-show-sent.yaml b/vendor/trainer/runs/physio-2026-09-22/questions/therapists/no-show-sent.yaml deleted file mode 100644 index 30b5c52..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/questions/therapists/no-show-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Receptionen ringer pasienten for å finne en ny tid. Du får beskjed når prosessen er ferdig. - name: Hva skjer nå? -- action: /therapists - consequence: - - Tilbake - description: '' - name: Tilbake -description: Du har sendt inn skjemaet om en pasient som ikke viste opp. Her finner du neste steg. -name: Hvem tar seg av dette? diff --git a/vendor/trainer/runs/physio-2026-09-22/questions/therapists/no-show.yaml b/vendor/trainer/runs/physio-2026-09-22/questions/therapists/no-show.yaml deleted file mode 100644 index 716f0c2..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/questions/therapists/no-show.yaml +++ /dev/null @@ -1,26 +0,0 @@ -alternatives: -- action: /therapists/no-show-sent - consequence: - - Send request - description: Report a patient who didn't show up so we can follow up and fill the slot. - features: - - name: No-show report - requirements: - - label: Patient name - name: patient_name - type: text - - label: Appointment date - name: appointment_day - type: date - - label: Additional note - name: note - optional: true - type: text - name: Report a no-show patient - record_as: no_shows -description: Use this form to report a patient who missed their appointment without calling. -followup: false -name: Did a patient miss their appointment without calling? -responsible: - contact: marit@bakkenfysio.example - name: Marit Bakken diff --git a/vendor/trainer/runs/physio-2026-09-22/rate.json b/vendor/trainer/runs/physio-2026-09-22/rate.json deleted file mode 100644 index 795653a..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/rate.json +++ /dev/null @@ -1,187 +0,0 @@ -{ - "insurance-approval": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "which": 1 - }, - "control_ok": false, - "followup_shown": true, - "lix": 33.47692307692308, - "options": 1, - "overloaded": false, - "page": "/reception/insurance-approval", - "personas": 1, - "required_fields": 3, - "understanding": { - "asked": 1, - "next": 1, - "which": 1 - } - } - ], - "steps": 1 - }, - "move-or-cancel": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 23.814814814814817, - "options": 2, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 18.34285714285714, - "options": 2, - "overloaded": false, - "page": "/patients", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "new-patient": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 23.814814814814817, - "options": 2, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 1, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 23.535087719298247, - "options": 2, - "overloaded": false, - "page": "/patients", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "which": 1 - } - } - ], - "steps": 2 - }, - "no-show": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 28.79824561403509, - "options": 1, - "overloaded": false, - "page": "/therapists/no-show", - "personas": 1, - "required_fields": 2, - "understanding": { - "asked": 1, - "next": 1, - "which": 1 - } - } - ], - "steps": 1 - }, - "referral": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 23.814814814814817, - "options": 2, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 1 - }, - "control_ok": false, - "followup_shown": true, - "lix": 37.22372881355932, - "options": 1, - "overloaded": false, - "page": "/referrers", - "personas": 2, - "required_fields": 5, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/physio-2026-09-22/rate.txt b/vendor/trainer/runs/physio-2026-09-22/rate.txt deleted file mode 100644 index bdd6587..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/rate.txt +++ /dev/null @@ -1,9 +0,0 @@ -need LIX which asked next gutted twin says page load -new-patient @/ 24 very easy 2/2 1/2 - 0/0/- ok 2 options, 0 required -new-patient @/patients 24 very easy 1/2 2/2 2/2 0/0/0 ok 2 options, 4 required -move-or-cancel @/ 24 very easy 1/2 0/2 - 0/0/- ok 2 options, 0 required -move-or-cancel @/patients 18 very easy 2/2 2/2 2/2 0/0/0 ok 2 options, 3 required -referral @/ 24 very easy 2/2 2/2 - 0/0/- ok 2 options, 0 required -referral @/referrers 37 easy 2/2 2/2 2/2 1/0/0 FAILED: which 1 options, 5 required -insurance-approval 33 easy 1/1 1/1 1/1 1/0/0 FAILED: which 1 options, 3 required -no-show 29 very easy 1/1 1/1 1/1 0/0/0 ok 1 options, 2 required diff --git a/vendor/trainer/runs/physio-2026-09-22/score-full.txt b/vendor/trainer/runs/physio-2026-09-22/score-full.txt deleted file mode 100644 index 90c6849..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/score-full.txt +++ /dev/null @@ -1,3 +0,0 @@ -MISROUTE: post-surgery-mother@/patients: picked "Move or cancel your appointment" (0.85), the need is met by ["Book your first appointment"] -MISROUTE: sent-abroad@/: picked "I am a GP or hospital" (0.95), the need is met by ["I have pain or an injury"] -wording: 8/10 routed right (80%) diff --git a/vendor/trainer/runs/physio-2026-09-22/score-skim.txt b/vendor/trainer/runs/physio-2026-09-22/score-skim.txt deleted file mode 100644 index 026d802..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/score-skim.txt +++ /dev/null @@ -1,2 +0,0 @@ -MISROUTE: post-surgery-mother@/patients: picked "Move or cancel your appointment" (0.95), the need is met by ["Book your first appointment"] -wording: 9/10 routed right (90%) diff --git a/vendor/trainer/runs/physio-2026-09-22/site.yaml b/vendor/trainer/runs/physio-2026-09-22/site.yaml deleted file mode 100644 index 8fffa39..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/site.yaml +++ /dev/null @@ -1,2 +0,0 @@ -lang: en -title: Bakken Fysioterapi diff --git a/vendor/trainer/runs/physio-2026-09-22/tasks-full.jsonl b/vendor/trainer/runs/physio-2026-09-22/tasks-full.jsonl deleted file mode 100644 index abea92f..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/tasks-full.jsonl +++ /dev/null @@ -1,10 +0,0 @@ -{"id":"runner-knee@/","persona":"runner-knee","need":"new-patient","page":"/","state":{"body":"I've been running for years and the outside of my right knee has started hurting after about five kilometres. I'd like someone to have a look, preferably in the mornings."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Who are you?\". Which alternative do they choose?","criteria":{"I am a GP or hospital":"You are sending someone to us for treatment or a report.","I have pain or an injury":"You have pain, an injury, or a new appointment you need to manage."}}},"expect":["I have pain or an injury"]} -{"id":"runner-knee@/patients","persona":"runner-knee","need":"new-patient","page":"/patients","state":{"body":"I've been running for years and the outside of my right knee has started hurting after about five kilometres. I'd like someone to have a look, preferably in the mornings."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here today?\". Which alternative do they choose?","criteria":{"Book your first appointment":"We'll match you with a therapist who suits your needs.","Move or cancel your appointment":"Let us know if you can't make it or need a new time."}}},"expect":["Book your first appointment"]} -{"id":"post-surgery-mother@/","persona":"post-surgery-mother","need":"new-patient","page":"/","state":{"body":"My mother had a hip replacement three weeks ago and the hospital said she needs training. She can't do much on her own and I'll drive her."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Who are you?\". Which alternative do they choose?","criteria":{"I am a GP or hospital":"You are sending someone to us for treatment or a report.","I have pain or an injury":"You have pain, an injury, or a new appointment you need to manage."}}},"expect":["I have pain or an injury"]} -{"id":"post-surgery-mother@/patients","persona":"post-surgery-mother","need":"new-patient","page":"/patients","state":{"body":"My mother had a hip replacement three weeks ago and the hospital said she needs training. She can't do much on her own and I'll drive her."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here today?\". Which alternative do they choose?","criteria":{"Book your first appointment":"We'll match you with a therapist who suits your needs.","Move or cancel your appointment":"Let us know if you can't make it or need a new time."}}},"expect":["Book your first appointment"]} -{"id":"sick-child@/","persona":"sick-child","need":"move-or-cancel","page":"/","state":{"body":"I have a session on Thursday at ten but my daughter has a fever and I can't come. Can I move it?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Who are you?\". Which alternative do they choose?","criteria":{"I am a GP or hospital":"You are sending someone to us for treatment or a report.","I have pain or an injury":"You have pain, an injury, or a new appointment you need to manage."}}},"expect":["I have pain or an injury"]} -{"id":"sick-child@/patients","persona":"sick-child","need":"move-or-cancel","page":"/patients","state":{"body":"I have a session on Thursday at ten but my daughter has a fever and I can't come. Can I move it?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here today?\". Which alternative do they choose?","criteria":{"Book your first appointment":"We'll match you with a therapist who suits your needs.","Move or cancel your appointment":"Let us know if you can't make it or need a new time."}}},"expect":["Move or cancel your appointment"]} -{"id":"sent-abroad@/","persona":"sent-abroad","need":"move-or-cancel","page":"/","state":{"body":"Work is sending me abroad next week so my appointment on the 3rd is off. Just free the slot, I'll be in touch when I'm back."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Who are you?\". Which alternative do they choose?","criteria":{"I am a GP or hospital":"You are sending someone to us for treatment or a report.","I have pain or an injury":"You have pain, an injury, or a new appointment you need to manage."}}},"expect":["I have pain or an injury"]} -{"id":"sent-abroad@/patients","persona":"sent-abroad","need":"move-or-cancel","page":"/patients","state":{"body":"Work is sending me abroad next week so my appointment on the 3rd is off. Just free the slot, I'll be in touch when I'm back."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here today?\". Which alternative do they choose?","criteria":{"Book your first appointment":"We'll match you with a therapist who suits your needs.","Move or cancel your appointment":"Let us know if you can't make it or need a new time."}}},"expect":["Move or cancel your appointment"]} -{"id":"gp-shoulder@/","persona":"gp-shoulder","need":"referral","page":"/","state":{"body":"I'm a GP. A patient of mine has a frozen shoulder that isn't improving with what I can offer. I'd like her to start with you and hear how it goes."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Who are you?\". Which alternative do they choose?","criteria":{"I am a GP or hospital":"You are sending someone to us for treatment or a report.","I have pain or an injury":"You have pain, an injury, or a new appointment you need to manage."}}},"expect":["I am a GP or hospital"]} -{"id":"hospital-discharge@/","persona":"hospital-discharge","need":"referral","page":"/","state":{"body":"Orthopaedic ward here. We're discharging a man after an ankle fracture on Friday and need follow-up rehab arranged near where he lives. He'll need a report for his sick leave."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Who are you?\". Which alternative do they choose?","criteria":{"I am a GP or hospital":"You are sending someone to us for treatment or a report.","I have pain or an injury":"You have pain, an injury, or a new appointment you need to manage."}}},"expect":["I am a GP or hospital"]} diff --git a/vendor/trainer/runs/physio-2026-09-22/tasks-skim.jsonl b/vendor/trainer/runs/physio-2026-09-22/tasks-skim.jsonl deleted file mode 100644 index 10fbf69..0000000 --- a/vendor/trainer/runs/physio-2026-09-22/tasks-skim.jsonl +++ /dev/null @@ -1,10 +0,0 @@ -{"id":"runner-knee@/","persona":"runner-knee","need":"new-patient","page":"/","state":{"body":"I've been running for years and the outside of my right knee has started hurting after about five kilometres. I'd like someone to have a look, preferably in the mornings."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Who are you?\". Which alternative do they choose?","criteria":{"I am a GP or hospital":"I am a GP or hospital","I have pain or an injury":"I have pain or an injury"}}},"expect":["I have pain or an injury"]} -{"id":"runner-knee@/patients","persona":"runner-knee","need":"new-patient","page":"/patients","state":{"body":"I've been running for years and the outside of my right knee has started hurting after about five kilometres. I'd like someone to have a look, preferably in the mornings."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here today?\". Which alternative do they choose?","criteria":{"Book your first appointment":"Book your first appointment","Move or cancel your appointment":"Move or cancel your appointment"}}},"expect":["Book your first appointment"]} -{"id":"post-surgery-mother@/","persona":"post-surgery-mother","need":"new-patient","page":"/","state":{"body":"My mother had a hip replacement three weeks ago and the hospital said she needs training. She can't do much on her own and I'll drive her."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Who are you?\". Which alternative do they choose?","criteria":{"I am a GP or hospital":"I am a GP or hospital","I have pain or an injury":"I have pain or an injury"}}},"expect":["I have pain or an injury"]} -{"id":"post-surgery-mother@/patients","persona":"post-surgery-mother","need":"new-patient","page":"/patients","state":{"body":"My mother had a hip replacement three weeks ago and the hospital said she needs training. She can't do much on her own and I'll drive her."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here today?\". Which alternative do they choose?","criteria":{"Book your first appointment":"Book your first appointment","Move or cancel your appointment":"Move or cancel your appointment"}}},"expect":["Book your first appointment"]} -{"id":"sick-child@/","persona":"sick-child","need":"move-or-cancel","page":"/","state":{"body":"I have a session on Thursday at ten but my daughter has a fever and I can't come. Can I move it?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Who are you?\". Which alternative do they choose?","criteria":{"I am a GP or hospital":"I am a GP or hospital","I have pain or an injury":"I have pain or an injury"}}},"expect":["I have pain or an injury"]} -{"id":"sick-child@/patients","persona":"sick-child","need":"move-or-cancel","page":"/patients","state":{"body":"I have a session on Thursday at ten but my daughter has a fever and I can't come. Can I move it?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here today?\". Which alternative do they choose?","criteria":{"Book your first appointment":"Book your first appointment","Move or cancel your appointment":"Move or cancel your appointment"}}},"expect":["Move or cancel your appointment"]} -{"id":"sent-abroad@/","persona":"sent-abroad","need":"move-or-cancel","page":"/","state":{"body":"Work is sending me abroad next week so my appointment on the 3rd is off. Just free the slot, I'll be in touch when I'm back."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Who are you?\". Which alternative do they choose?","criteria":{"I am a GP or hospital":"I am a GP or hospital","I have pain or an injury":"I have pain or an injury"}}},"expect":["I have pain or an injury"]} -{"id":"sent-abroad@/patients","persona":"sent-abroad","need":"move-or-cancel","page":"/patients","state":{"body":"Work is sending me abroad next week so my appointment on the 3rd is off. Just free the slot, I'll be in touch when I'm back."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here today?\". Which alternative do they choose?","criteria":{"Book your first appointment":"Book your first appointment","Move or cancel your appointment":"Move or cancel your appointment"}}},"expect":["Move or cancel your appointment"]} -{"id":"gp-shoulder@/","persona":"gp-shoulder","need":"referral","page":"/","state":{"body":"I'm a GP. A patient of mine has a frozen shoulder that isn't improving with what I can offer. I'd like her to start with you and hear how it goes."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Who are you?\". Which alternative do they choose?","criteria":{"I am a GP or hospital":"I am a GP or hospital","I have pain or an injury":"I have pain or an injury"}}},"expect":["I am a GP or hospital"]} -{"id":"hospital-discharge@/","persona":"hospital-discharge","need":"referral","page":"/","state":{"body":"Orthopaedic ward here. We're discharging a man after an ankle fracture on Friday and need follow-up rehab arranged near where he lives. He'll need a report for his sick leave."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Who are you?\". Which alternative do they choose?","criteria":{"I am a GP or hospital":"I am a GP or hospital","I have pain or an injury":"I have pain or an injury"}}},"expect":["I am a GP or hospital"]} diff --git a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/README.md b/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/README.md deleted file mode 100644 index a7c03a4..0000000 --- a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/README.md +++ /dev/null @@ -1,30 +0,0 @@ -# Norwegian contractor, generated by a local model: failed - -Intake: `intakes/rehab-entreprenor-no.yaml`. Generator: -`nemotron-3.5-lightning:30b-a3b` on ergo's Ollama, six rounds per -phase, about 16 minutes. It never produced a site that loads. - -- The spec parsed on the fourth try, after nesting personas inside - each need once and returning no files at all twice. -- Structure went 11 failures, 1, then a YAML syntax error it could not - get past in four rounds: an end marker came out as - `<<>` with the next file glued to it, so two files were - written as one. The parser now tolerates that; the model did not - notice it when shown the file back. -- It copied the reference's English example into its desk page - (`bucket: leads`, "Quote sent") instead of writing its own, never - wrote `aggregates.yaml`, and one reply was 40 KB of empty code - fences (truncated here). -- The Norwegian is mixed: "Hva trenger du hjelp med?" is fine, - "kvalifisert mandskap" is Danish spelling, and it kept `å` in a state - name against the reference's rule. - -A Sonnet-class model did the English contractor in one round per -phase. What this run says is that a 3B-active model cannot hold the -whole content reference and write a dozen interlocking files at once, -in any language. The way to make small local models useful is to give -them less to do: generate `aggregates.yaml`, desks and followup pages -deterministically from `needs.yaml` (`stages`, `done_when`, -`handled_by` already say everything those files contain), and ask the -model only for words - the page question, headings, descriptions and -field labels, one page at a time. diff --git a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/generator.log b/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/generator.log deleted file mode 100644 index 3ff9607..0000000 --- a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/generator.log +++ /dev/null @@ -1,13 +0,0 @@ -needs round 1: FAIL: parsing needs.yaml: needs[0]: unknown field `personas`, expected one of `id`, `who`, `wants`, `enters`, `enters_as`, `via`, `lands_in`, `handled_by`, `done_when`, `max_steps`, `max_fields`, `planned`, `success`, `stages` at line 13 column 5 -needs round 2: the reply had no file blocks, asking again -needs round 3: the reply had no file blocks, asking again -needs round 4: needs.yaml parses, frozen -ignored "needs.yaml": outside what the generator may write -structure round 1: 11 FAIL line(s) -structure round 2: 1 FAIL line(s) -structure round 3: 0 FAIL line(s) -structure round 4: 0 FAIL line(s) -structure round 5: 0 FAIL line(s) -structure round 6: 0 FAIL line(s) -Error: structure never went green in 6 round(s); last verifier output is in run.log -GENERATOR_EXIT=1 in 944s diff --git a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/needs.yaml b/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/needs.yaml deleted file mode 100644 index 1714759..0000000 --- a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/needs.yaml +++ /dev/null @@ -1,82 +0,0 @@ -needs: - - id: leads - who: styreledere i borettslag og sameier, private huseiere - wants: at noen skal se på et problem med bygget - enters: / - lands_in: leads - handled_by: prosjektledere - done_when: [won, lost] - max_steps: 1 - max_fields: 4 - success: [won] - stages: [open, quoted, won, lost] - - id: subcontractors - who: underentreprenører (tømrere, murere, lærlinger) - wants: å bli godkjent som fast leverandør - enters: / - lands_in: subcontractors - handled_by: prosjektledere - done_when: [approved, rejected] - max_steps: 1 - max_fields: 3 - success: [approved] - stages: [open, approved, rejected] - - id: job_applications - who: personer som søker jobb - wants: å bli ansatt som tømrer, murer eller lærling - enters: / - lands_in: job_applications - handled_by: prosjektledere - done_when: [hired, rejected] - max_steps: 2 - max_fields: 6 - success: [hired] - stages: [open, interviewed, hired, rejected] - - id: incident_reports - who: HMS-ansvarlig, mandskap på byggeplass - wants: å rapportere avvik og uønskede hendelser - enters: / - lands_in: incident_reports - handled_by: HMS-ansvarlig - done_when: [closed] - max_steps: 1 - max_fields: 3 - success: [closed] - stages: [open, closed] - - id: internal_referral - who: prosjektledere - wants: anbefalinger av kvalifisert mandskap - enters: / - lands_in: internal_referral - handled_by: prosjektledere - done_when: [referred] - max_steps: 1 - max_fields: 2 - success: [referred] - stages: [open, referred] - -personas: - - id: hus_eier_med_problem - need: leads - text: > - Har et problem med huset mitt, enten det leaker, sitter losse eller trenger renovering. Trenger noen som ser på det og gir et tilbud. - - id: borettslag_styre - need: leads - text: > - Ansvarlig for fellesareal og byggestandard i borettslaget. Vil at en fagmann skal kartlegge tilstand og anbefale tiltak. - - id: underentreprenor - need: subcontractors - text: > - Har fagbrev og HKH-kort, men mangler alltid tid for å sende papirene inn. Søker om å bli fast leverandør på prosjekter. - - id: jobb_soker - need: job_applications - text: > - Lurer på om det finnes jobb som tømrer eller murer. Har fagbrev og lyst til å jobbe praktisk. - - id: hms_ansvarlig - need: incident_reports - text: > - Har sett noe på byggeplassen som ikke er greit: feil materialer, nestenulykke eller avvik fra planen. Må rapporteres rett opp og ned. - - id: prosjektleder_anbefaling - need: internal_referral - text: > - Kjenner på noen som skulle passa godt på laget vårt, enten det gjelder fagfolk eller underentreprenører. diff --git a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/01-reply.md b/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/01-reply.md deleted file mode 100644 index 9fc417c..0000000 --- a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/01-reply.md +++ /dev/null @@ -1,150 +0,0 @@ -<<>> -needs: - - id: henvendelse-til-bygger - who: styreleder i borettslag eller sameier, eller privat huseier - wants: at noen skal se på et problem med bygget - enters: / - lands_in: henvendelser - handled_by: prosjektledere - done_when: [vunnet, tapt] - max_steps: 1 - max_fields: 4 - success: [vunnet] - stages: [open, avtale, tilbud, vunnet, tapt] - personas: - - id: styreleder-huseier - need: henvendelse-til-bygger - text: > - Vi har et problem med huset vårt og trenger at dere kommer og ser på det. Kan dere hjelpe oss med å finne ut av hva som er galt og hva det koster? - - id: huseier-ved-vedtak - need: henvendelse-til-bygger - text: > - Jeg vet nøyaktig hva jeg vil bygge eller endre. Treng tegninger, kommunesøknad og et fast prisoverslag. - - id: huseier-ukjent - need: henvendelse-til-bygger - text: > - Jeg har et problem med huset men vet ikke helt hva som er galt eller hva jeg trenger. - - - id: underentreprenor-anmeldelse - who: tømrer, murer eller lærling som lurer på om firmaet vårt trenger folk - wants: å bli kjent av oss og eventuelt få jobb - enters: / - lands_in: underentreprenører - handled_by: prosjektledere - done_when: [godkjent, avslått] - max_steps: 1 - max_fields: 3 - success: [godkjent] - stages: [open, sjekk, godkjent, avslått] - personas: - - id: tømrer-lurer - need: underentreprenor-anmeldelse - text: > - Lurer på om vi trenger flere hender på jobb, eller om dere har plass til meg. - - id: murer-sjekker-lista - need: underentreprenor-anmeldelse - text: > - Sjekker om dere tar inn flere underentreprenører i år. Har organisasjonsnummer og referanser klar. - - id: lærling-uklar - need: underentreprenor-anmeldelse - text: > - Er ikke sikker på om fagbransjen passer meg ennå, men vil gjerne bli kjent. - - - id: jobbansøker - who: person som søker jobb som tømrer, murer eller lærling - wants: å få jobb som håndverker - enters: / - lands_in: jobbansøkere - handled_by: prosjektledere - done_when: [ansatt, takk-nej] - max_steps: 2 - max_fields: 5 - success: [ansatt] - stages: [open, intervju, ansatt, takk-nej] - personas: - - id: jobbsoeker-klart - need: jobbansøker - text: > - Har klarte eksamen og har jobbsøkt en stund. Klar for intervju og påbør. - - id: jobbsoeker-uklar - need: jobbansøker - text: > - Er nysgjerrig på håndverkerfaget men har ikke fått bevis på ferdigheter ennå. - - id: jobbsoeker-etter-praktikk - need: jobbansøker - text: > - Har jobbet som praktikant og vil gjerne få fast stilling. - - - id: avvik-og-hendelse - who: HMS-ansvarlig eller ansatt på byggeplassen - wants: å rapportere avvik eller uønsket hendelse og få det utbedret - enters: / - lands_in: avvik - handled_by: hms-ansvarlig - done_when: [lukket] - max_steps: 1 - max_fields: 3 - success: [lukket] - stages: [meldt, utbedret, lukket] - personas: - - id: hms-ansvarlig - need: avvik-og-hendelse - text: > - Ansvarlig for helse, miljø og sikkerhet. Må sikre at alt rapporteres og settes rett. - - id:arbeider-raporterer - need: avvik-og-hendelse - text: > - Sitter på stedet, har sett noe skje eller fått i oppdrag av kollega. Har telefonen og hanskene på. - - id: koordinator-etteropp - need: avvik-og-hendelse - text: > - Mottar meldingen og sikrer at tiltak blir tatt. Lukker saken når det er utbedret. - - - id: underentreprenor-dokumentasjon - who: underentreprenør som har mottatt godkjennelse - wants: å få på plass papir og forsikring for å kunne jobbe trygt - enters: / - lands_in: underentreprenør-dok - handled_by: prosjektledere - done_when: [godkjent] - max_steps: 2 - max_fields: 4 - success: [godkjent] - stages: [innsendt, godkjent] - personas: - - id: underentreprenør-papirer - need: underentreprenør-dokumentasjon - text: > - Har fått jobb, men må få organisasjonsnummer, HMS-kort og forsikring på plass før første arbeidsdag. - - id: underentreprenør-forsikring - need: underentreprenør-dokumentasjon - text: > - Trenger å sjekke at forsikringspapirene er gyldige og at alt dokumentasjon er i orden. - - id: underentreprenør-koordinator - need: underentreprenør-dokumentasjon - text: > - Mottar ansøkningen og sjekker opp på at papirene samsvarer kravene. - - - id: jobbansøk-behandling - who: prosjektleder som tar intervju og avgjør ansettelse - wants: å finne rette person til teamet - enters: /desk - lands_in: jobbansøkere - handled_by: prosjektledere - done_when: [ansatt, takk-nej] - max_steps: 2 - max_fields: 4 - success: [ansatt] - stages: [open, intervju, ansatt, takk-nej] - enters_as: prosjektledere - personas: - - id: prosjektleder-intervjuer - need: jobbansøk-behandling - text: > - Tar intervjuer og avgjør hvem som passer teamet best. - - id: prosjektleder-avgjør - need: jobbansøk-behandling - text: > - Tar beslutningen om ansettelse videre til teamet. - -<<>> diff --git a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/02-reply.md b/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/02-reply.md deleted file mode 100644 index d85d73d..0000000 --- a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/02-reply.md +++ /dev/null @@ -1,148 +0,0 @@ -<<>> -needs: - - id: henvendelse-til-bygger - who: styreleder i borettslag eller sameier, eller privat huseier - wants: at noen skal se på et problem med bygget - enters: / - lands_in: henvendelser - handled_by: prosjektledere - done_when: [vunnet, tapt] - max_steps: 1 - max_fields: 4 - success: [vunnet] - stages: [open, avtale, tilbud, vunnet, tapt] - personas: - - id: styreleder-huseier - need: henvendelse-til-bygger - text: > - Vi har et problem med huset vårt og trenger at dere kommer og ser på det. Kan dere hjelpe oss med å finne ut av hva som er galt og hva det koster? - - id: huseier-ved-vedtak - need: henvendelse-til-bygger - text: > - Jeg vet nøyaktig hva jeg vil bygge eller endre. Treng tegninger, kommunesøknad og et fast prisoverslag. - - id: huseier-ukjent - need: henvendelse-til-bygger - text: > - Jeg har et problem med huset men vet ikke helt hva som er galt eller hva jeg trenger. - - - id: underentreprenor-anmeldelse - who: tømrer, murer eller lærling som lurer på om firmaet vårt trenger folk - wants: å bli kjent av oss og eventuelt få jobb - enters: / - lands_in: underentreprenører - handled_by: prosjektledere - done_when: [godkjent, avslått] - max_steps: 1 - max_fields: 3 - success: [godkjent] - stages: [open, sjekk, godkjent, avslått] - personas: - - id: tømrer-lurer - need: underentreprenor-anmeldelse - text: > - Lurer på om vi trenger flere hender på jobb, eller om dere har plass til meg. - - id: murer-sjekker-lista - need: underentreprenor-anmeldelse - text: > - Sjekker om dere tar inn flere underentreprenører i år. Har organisasjonsnummer og referanser klar. - - id: lærling-uklar - need: underentreprenor-anmeldelse - text: > - Er ikke sikker på om fagbransjen passer meg ennå, men vil gjerne bli kjent. - - - id: jobbansøker - who: person som søker jobb som tømrer, murer eller lærling - wants: å få jobb som håndverker - enters: / - lands_in: jobbansøkere - handled_by: prosjektledere - done_when: [ansatt, takk-nej] - max_steps: 2 - max_fields: 5 - success: [ansatt] - stages: [open, intervju, ansatt, takk-nej] - personas: - - id: jobbsoeker-klart - need: jobbansøker - text: > - Har klarte eksamen og har jobbsøkt en stund. Klar for intervju og påbør. - - id: jobbsoeker-uklar - need: jobbansøker - text: > - Er nysgjerrig på håndverkerfaget men har ikke fått bevis på ferdigheter ennå. - - id: jobbsoeker-etter-praktikk - need: jobbansøker - text: > - Har jobbet som praktikant og vil gjerne få fast stilling. - - - id: avvik-og-hendelse - who: HMS-ansvarlig eller ansatt på byggeplassen - wants: å rapportere avvik eller uønsket hendelse og få det utbedret - enters: / - lands_in: avvik - handled_by: hms-ansvarlig - done_when: [lukket] - max_steps: 1 - max_fields: 3 - success: [lukket] - stages: [meldt, utbedret, lukket] - personas: - - id: hms-ansvarlig - need: avvik-og-hendelse - text: > - Ansvarlig for helse, miljø og sikkerhet. Må sikre at alt rapporteres og settes rett. - - id: arbeider-raporterer - need: avvik-og-hendelse - text: > - Sitter på stedet, har sett noe skje eller fått i oppdrag av kollega. Har telefonen og hanskene på. - - id: koordinator-etteropp - need: avvik-og-hendelse - text: > - Mottar meldingen og sikrer at tiltak blir tatt. Lukker saken når det er utbedret. - - - id: underentreprenør-dokumentasjon - who: underentreprenør som har mottatt godkjennelse - wants: å få på plass papir og forsikring for å kunne jobbe trygt - enters: / - lands_in: underentreprenør-dok - handled_by: prosjektledere - done_when: [godkjent] - max_steps: 2 - max_fields: 4 - success: [godkjent] - stages: [innsendt, godkjent] - personas: - - id: underentreprenør-papirer - need: underentreprenør-dokumentasjon - text: > - Har fått jobb, men må få organisasjonsnummer, HMS-kort og forsikring på plass før første arbeidsdag. - - id: underentreprenør-forsikring - need: underentreprenør-dokumentasjon - text: > - Trenger å sjekke at forsikringspapirene er gyldige og at alt dokumentasjon er i orden. - - id: underentreprenør-koordinator - need: underentreprenør-dokumentasjon - text: > - Mottar ansøkningen og sjekker opp på at papirene samsvarer kravene. - - - id: jobbansøk-behandling - who: prosjektleder som tar intervju og avgjør ansettelse - wants: å finne rette person til teamet - enters: /desk - lands_in: jobbansøkere - handled_by: prosjektledere - done_when: [ansatt, takk-nej] - max_steps: 2 - max_fields: 4 - success: [ansatt] - stages: [open, intervju, ansatt, takk-nej] - enters_as: prosjektledere - personas: - - id: prosjektleder-intervjuer - need: jobbansøk-behandling - text: > - Tar intervjuer og avgjør hvem som passer teamet best. - - id: prosjektleder-avgjør - need: jobbansøk-behandling - text: > - Tar beslutningen om ansettelse videre til teamet. diff --git a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/03-reply.md b/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/03-reply.md deleted file mode 100644 index 0ac8da7..0000000 --- a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/03-reply.md +++ /dev/null @@ -1,331 +0,0 @@ -<<>> -needs: - - id: henvendelse-til-byggr - who: styreleder i borettslag eller sameie, eller privat huseier - wants: at noen skal se på et problem med bygget - enters: / - lands_in: henvendelser - handled_by: prosjektledere - done_when: - - vunnet - - tapt - max_steps: 1 - max_fields: 4 - success: [vunnet] - stages: [open, avtale, tilbud, vunnet, tapt] - personas: - - id: styreleder-hus - need: henvendelse-til-byggr - text: > - Vi har et problem med huset vårt og trenger at dere kommer og ser på det. - - id: huseier-vedtatt - need: henvendelse-til-byggr - text: > - Jeg vet nøyaktig hva jeg vil bygge eller endre, og trenger tegninger, søknad til kommunen og en pris. - - id: håndverksfirma - need: henvendelse-til-byggr - text: > - Vi lurer på om Dere trenger folk på arbeidsplassen deres. - - - id: underentreprenor-anmeldelse - who: underentreprenør (tømrer, murer, lærling) - wants: å melde seg på listen over underentreprenører - enters: / - lands_in: underentreprenører - handled_by: prosjektledere - done_when: [godkjent, avslått] - max_steps: 1 - max_fields: 3 - success: [godkjent] - stages: [open, sjekk, godkjent, avslått] - personas: - - id: tømrer-anmeldelse - need: underentreprenor-anmeldelse - text: > - Jeg er tømrer og vil jobbe med Dere. - - id: murer-anmeldelse - need: underentreprenor-anmeldelse - text: > - Jeg er murer og har papirene i orden. - - id: lærling-uklar - need: underentreprenor-anmeldelse - text: > - Jeg er lærling og har ikke fått sertifisert alt enda. - - - id: jobbansøker - who: person som søker jobb som tømrer, murer eller lærling - wants: å bli ansatt som håndverker - enters: / - lands_in: jobbansøkninger - handled_by: prosjektledere - done_when: [ansatt, takk-nei] - max_steps: 2 - max_fields: 5 - success: [ansatt] - stages: [open, samtale, ansatt, takk-nei] - personas: - - id: jobb-søker-energisk - need: jobbansøker - text: > - Jeg er en energisk håndverker som lurer på om Dere har plasser ledige. - - id: jobb-søker-rolig - need: jobbansøker - text: > - Jeg jobber allerede men vil skifte arbeidsplass til en bedre atmosfære. - - - id: avvik-og-ulykke - who: HMS-ansvarlig på byggeplassen, eller ansatt/underentreprenør som melder fra - wants: å rapportere avvik eller uønsket hendelse - enters: / - lands_in: avvik - handled_by: hms-ansvarlig - done_when: [lukket] - max_steps: 1 - max_fields: 3 - success: [lukket] - stages: [open, utbedret, lukket] - personas: - - id: hms-ansvarlig-rapport - need: avvik-og-ulykke - text: > - Det skjedde en hendelse på byggeplassen som krever oppmærksomhet. - - id: tømrer-ukjent - need: avvik-og-ulykke - text: > - Noe gikk galt i jobbingen i dag, men det er løst nå. - - id: maskinoperatør-rolig - need: avvik-og-ulykke - text: > - Vi klarte å løse problemet selv uten at noe brøt. - -aggregates: - - bucket: henvendelser - initial: open - states: - open: { event: received } - avtale: { event: avtale } - tilbud: { event: tilbud } - vunnet: { event: vunnet } - tapt: { event: tapt } - transitions: - open: [avtale, tapt] - avtale: [tilbud, tapt] - tilbud: [vunnet, tapt] - - bucket: underentreprenører - initial: open - states: - open: { event: meldt } - sjekk: { event: sjekket } - godkjent: { event: godkjent } - avslått: { event: avslått } - transitions: - open: [sjekk, avslått] - sjekk: [godkjent, avslått] - - bucket: jobbansøkninger - initial: open - states: - open: { event: mottatt } - samtale: { event: samtale } - ansatt: { event: ansett } - takk-nei: { event: takk_nei } - transitions: - open: [samtale, takk-nei] - samtale: [ansatt, takk-nei] - - bucket: avvik - initial: open - states: - open: { event: meldt } - utbedret: { event: utbedret } - lukket: { event: lukket } - transitions: - open: [utbedret, lukket] - utbedret: [lukket] - -desk: - - group: prosjektledere - bucket: henvendelser - transitions: - open: [avtale, tapt] - avtale: [tilbud, tapt] - tilbud: [vunnet, tapt] - - group: prosjektledere - bucket: underentreprenører - transitions: - open: [sjekk, avslått] - sjekk: [godkjent, avslått] - - group: prosjektledere - bucket: jobbansøkninger - transitions: - open: [samtale, takk-nei] - samtale: [ansatt, takk-nei] - - group: hms-ansvarlig - bucket: avvik - transitions: - open: [utbedret, lukket] - utbedret: [lukket] -<<><<>> -needs: - - id: henvendelse-til-byggr - who: styreleder i borettslag eller sameie, eller privat huseier - wants: at noen skal se på et problem med bygget - enters: / - lands_in: henvendelser - handled_by: prosjektledere - done_when: - - vunnet - - tapt - max_steps: 1 - max_fields: 4 - success: [vunnet] - stages: [open, avtale, tilbud, vunnet, tapt] - personas: - - id: styreleder-hus - need: henvendelse-til-byggr - text: > - Vi har et problem med huset vårt og trenger at dere kommer og ser på det. - - id: huseier-vedtatt - need: henvendelse-til-byggr - text: > - Jeg vet nøyaktig hva jeg vil bygge eller endre, og trenger tegninger, søknad til kommunen og en pris. - - id: håndverksfirma - need: henvendelse-til-byggr - text: > - Vi lurer på om Dere trenger folk på arbeidsplassen deres. - - - id: underentreprenor-anmeldelse - who: underentreprenør (tømrer, murer, lærling) - wants: å melde seg på listen over underentreprenører - enters: / - lands_in: underentreprenører - handled_by: prosjektledere - done_when: [godkjent, avslått] - max_steps: 1 - max_fields: 3 - success: [godkjent] - stages: [open, sjekk, godkjent, avslått] - personas: - - id: tømrer-anmeldelse - need: underentreprenor-anmeldelse - text: > - Jeg er tømrer og vil jobbe med Dere. - - id: murer-anmeldelse - need: underentreprenor-anmeldelse - text: > - Jeg er murer og har papirene i orden. - - id: lærling-uklar - need: underentreprenor-anmeldelse - text: > - Jeg er lærling og har ikke fått sertifisert alt enda. - - - id: jobbansøker - who: person som søker jobb som tømrer, murer eller lærling - wants: å bli ansatt som håndverker - enters: / - lands_in: jobbansøkninger - handled_by: prosjektledere - done_when: [ansatt, takk-nei] - max_steps: 2 - max_fields: 5 - success: [ansatt] - stages: [open, samtale, ansatt, takk-nei] - personas: - - id: jobb-søker-energisk - need: jobbansøker - text: > - Jeg er en energisk håndverker som lurer på om Dere har plasser ledige. - - id: jobb-søker-rolig - need: jobbansøker - text: > - Jeg jobber allerede men vil skifte arbeidsplass til en bedre atmosfære. - - - id: avvik-og-ulykke - who: HMS-ansvarlig på byggeplassen, eller ansatt/underentreprenør som melder fra - wants: å rapportere avvik eller uønsket hendelse - enters: / - lands_in: avvik - handled_by: hms-ansvarlig - done_when: [lukket] - max_steps: 1 - max_fields: 3 - success: [lukket] - stages: [open, utbedret, lukket] - personas: - - id: hms-ansvarlig-rapport - need: avvik-og-ulykke - text: > - Det skjedde en hendelse på byggeplassen som krever oppmærksomhet. - - id: tømrer-ukjent - need: avvik-og-ulykke - text: > - Noe gikk galt i jobbingen i dag, men det er løst nå. - - id: maskinoperatør-rolig - need: avvik-og-ulykke - text: > - Vi klarte å løse problemet selv uten at noe brøt. - -aggregates: - - bucket: henvendelser - initial: open - states: - open: { event: received } - avtale: { event: avtale } - tilbud: { event: tilbud } - vunnet: { event: vunnet } - tapt: { event: tapt } - transitions: - open: [avtale, tapt] - avtale: [tilbud, tapt] - tilbud: [vunnet, tapt] - - bucket: underentreprenører - initial: open - states: - open: { event: meldt } - sjekk: { event: sjekket } - godkjent: { event: godkjent } - avslått: { event: avslått } - transitions: - open: [sjekk, avslått] - sjekk: [godkjent, avslått] - - bucket: jobbansøkninger - initial: open - states: - open: { event: mottatt } - samtale: { event: samtale } - ansatt: { event: ansett } - takk-nei: { event: takk_nei } - transitions: - open: [samtale, takk-nei] - samtale: [ansatt, takk-nei] - - bucket: avvik - initial: open - states: - open: { event: meldt } - utbedret: { event: utbedret } - lukket: { event: lukket } - transitions: - open: [utbedret, lukket] - utbedret: [lukket] - -desk: - - group: prosjektledere - bucket: henvendelser - transitions: - open: [avtale, tapt] - avtale: [tilbud, tapt] - tilbud: [vunnet, tapt] - - group: prosjektledere - bucket: underentreprenører - transitions: - open: [sjekk, avslått] - sjekk: [godkjent, avslått] - - group: prosjektledere - bucket: jobbansøkninger - transitions: - open: [samtale, takk-nei] - samtale: [ansatt, takk-nei] - - group: hms-ansvarlig - bucket: avvik - transitions: - open: [utbedret, lukket] - utbedret: [lukket] -<<> diff --git a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/04-reply.md b/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/04-reply.md deleted file mode 100644 index 5522834..0000000 --- a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/04-reply.md +++ /dev/null @@ -1,84 +0,0 @@ -<<>> -needs: - - id: leads - who: styreledere i borettslag og sameier, private huseiere - wants: at noen skal se på et problem med bygget - enters: / - lands_in: leads - handled_by: prosjektledere - done_when: [won, lost] - max_steps: 1 - max_fields: 4 - success: [won] - stages: [open, quoted, won, lost] - - id: subcontractors - who: underentreprenører (tømrere, murere, lærlinger) - wants: å bli godkjent som fast leverandør - enters: / - lands_in: subcontractors - handled_by: prosjektledere - done_when: [approved, rejected] - max_steps: 1 - max_fields: 3 - success: [approved] - stages: [open, approved, rejected] - - id: job_applications - who: personer som søker jobb - wants: å bli ansatt som tømrer, murer eller lærling - enters: / - lands_in: job_applications - handled_by: prosjektledere - done_when: [hired, rejected] - max_steps: 2 - max_fields: 6 - success: [hired] - stages: [open, interviewed, hired, rejected] - - id: incident_reports - who: HMS-ansvarlig, mandskap på byggeplass - wants: å rapportere avvik og uønskede hendelser - enters: / - lands_in: incident_reports - handled_by: HMS-ansvarlig - done_when: [closed] - max_steps: 1 - max_fields: 3 - success: [closed] - stages: [open, closed] - - id: internal_referral - who: prosjektledere - wants: anbefalinger av kvalifisert mandskap - enters: / - lands_in: internal_referral - handled_by: prosjektledere - done_when: [referred] - max_steps: 1 - max_fields: 2 - success: [referred] - stages: [open, referred] - -personas: - - id: hus_eier_med_problem - need: leads - text: > - Har et problem med huset mitt, enten det leaker, sitter losse eller trenger renovering. Trenger noen som ser på det og gir et tilbud. - - id: borettslag_styre - need: leads - text: > - Ansvarlig for fellesareal og byggestandard i borettslaget. Vil at en fagmann skal kartlegge tilstand og anbefale tiltak. - - id: underentreprenor - need: subcontractors - text: > - Har fagbrev og HKH-kort, men mangler alltid tid for å sende papirene inn. Søker om å bli fast leverandør på prosjekter. - - id: jobb_soker - need: job_applications - text: > - Lurer på om det finnes jobb som tømrer eller murer. Har fagbrev og lyst til å jobbe praktisk. - - id: hms_ansvarlig - need: incident_reports - text: > - Har sett noe på byggeplassen som ikke er greit: feil materialer, nestenulykke eller avvik fra planen. Må rapporteres rett opp og ned. - - id: prosjektleder_anbefaling - need: internal_referral - text: > - Kjenner på noen som skulle passa godt på laget vårt, enten det gjelder fagfolk eller underentreprenører. -<<>> diff --git a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/05-reply.md b/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/05-reply.md deleted file mode 100644 index 22aa178..0000000 --- a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/05-reply.md +++ /dev/null @@ -1,462 +0,0 @@ -<<>> -title: Åsrud Bygg og Rehabilitering AS -lang: no -<<>> - -<<>> -needs: - - id: leads - who: styreledere i borettslag og sameier, private huseiere - wants: at noen skal se på et problem med bygget - enters: / - lands_in: leads - handled_by: prosjektledere - done_when: [won, lost] - max_steps: 1 - max_fields: 4 - success: [won] - stages: [open, quoted, won, lost] - - id: subcontractors - who: underentreprenører (tømrere, murere, lærlinger) - wants: å bli godkjent som fast leverandør - enters: / - lands_in: subcontractors - handled_by: prosjektledere - done_when: [approved, rejected] - max_steps: 1 - max_fields: 3 - success: [approved] - stages: [open, approved, rejected] - - id: job_applications - who: personer som søker jobb - wants: å bli ansatt som tømrer, murer eller lærling - enters: / - lands_in: job_applications - handled_by: prosjektledere - done_when: [hired, rejected] - max_steps: 2 - max_fields: 6 - success: [hired] - stages: [open, interviewed, hired, rejected] - - id: incident_reports - who: HMS-ansvarlig, mandskap på byggeplass - wants: å rapportere avvik og uønskede hendelser - enters: / - lands_in: incident_reports - handled_by: HMS-ansvarlig - done_when: [closed] - max_steps: 1 - max_fields: 3 - success: [closed] - stages: [open, closed] - - id: internal_referral - who: prosjektledere - wants: anbefalinger av kvalifisert mandskap - enters: / - lands_in: internal_referral - handled_by: prosjektledere - done_when: [referred] - max_steps: 1 - max_fields: 2 - success: [referred] - stages: [open, referred] -<<>> - -<<>> -aggregates: - - bucket: leads - initial: open - states: - open: { event: received } - quoted: { event: quoted } - won: { event: won } - lost: { event: lost } - transitions: - open: [quoted, lost] - quoted: [won, lost] - - bucket: subcontractors - initial: open - states: - open: { event: received } - approved: { event: approved } - rejected: { event: rejected } - transitions: - open: [approved, rejected] - approved: [] - rejected: [] - - bucket: job_applications - initial: open - states: - open: { event: received } - interviewed: { event: interviewed } - hired: { event: hired } - rejected: { event: rejected } - transitions: - open: [interviewed] - interviewed: [hired, rejected] - hired: [] - rejected: [] - - bucket: incident_reports - initial: open - states: - open: { event: reported } - closed: { event: closed } - transitions: - open: [closed] - closed: [] - - bucket: internal_referral - initial: open - states: - open: { event: referred } - referred: { event: referred } - transitions: - open: [referred] - referred: [] -<< - -<<>> -name: Hva hjelper du på? -description: > - Vi hjelper med tilstandsrapporter, prosjektering, byggesøknad og jobb. -responsible: { name: Marte Åsrud, email: marte@asrudbygg.example } -alternatives: - - name: Melding om problem med bygget - description: > - action: /leads - consequence: [Send] - record_as: leads - - name: Melding om underentreprenør - description: > - action: /subcontractors - consequence: [Send] - record_as: subcontractors - - name: Søk jobb - description: > - action: /job_applications - consequence: [Send] - record_as: job_applications - - name: Melding om avvik på byggeplass - description: > - action: /incident_reports - consequence: [Send] - record_as: incident_reports - - name: Anbefaling av kompetanse - description: > - action: /internal_referral - consequence: [Send] - record_as: internal_referral -<< - -<<>> -name: Hva problemet gjelder -description: > - Fortell kort hva som trenger å gjøres med bygget ditt. -responsible: { name: Marte Åsrud, email: marte@asrudbygg.example } -alternatives: - - name: Send tilbud - description: > - action: /leads/quoted - consequence: [Send] - record_as: leads - features: - - name: E-post - description: > - requirements: - - { name: email, label: E-post, type: email } - - { name: problem, label: Hva er problemet, type: textarea } - - { name: urgency, label: Hvor snart, type: select, options: [I denne uken, I denne måneden, Ikke akutt] } - - { name: address, label: Adresse, optional: true } - - name: Avslå - description: > - action: /leads/lost - consequence: [Send] - record_as: leads -<< - -<<>> -name: Tilbud sendt -description: > - Vi sender et tilbud på arbeidet. -responsible: { name: Marte Åsrud, email: marte@asrudbygg.example } -alternatives: - - name: Aksepter tilbudet - description: > - action: /leads/won - consequence: [Godkjenn] - record_as: leads - - name: Trekke tilbudet - description: > - action: /leads/lost - consequence: [Avslå] - record_as: leads -<< - -<<>> -name: Melding om underentreprenør -description: > - Fortell kort hvem du er og hva du kan. -responsible: { name: Marte Åsrud, email: marte@asrudbygg.example } -alternatives: - - name: Godkjenn - description: > - action: /subcontractors/approved - consequence: [Godkjenn] - record_as: subcontractors - features: - - name: Organisasjonsnummer - description: > - requirements: - - { name: org_number, label: Organisasjonsnummer, type: text } - - { name: hms_kort, label: HMS-kort, type: select, options: [Har, Ikke har] } - - { name: insurance, label: Forsikring, type: select, options: [OK, Mangler] } - - { name: availability, label: Tilgjengelighet, type: select, options: [Normalt, Begrenset] } - - name: Avslå - description: > - action: /subcontractors/rejected - consequence: [Avslå] - record_as: subcontractors -<< - -<<>> -name: Godkjent som leverandør -description: > - Underentreprenøren er godkjent. -responsible: { name: Marte Åsrud, email: marte@asrudbygg.example } -alternatives: - - name: Gå tilbake til hovedmeny - description: > - action: / - consequence: [Tilbake] - record_as: subcontractors -<< - -<<>> -name: Ikke kvalifisert -description: > - Underentreprenøren blir ikke godkjent nå. -responsible: { name: Marte Åsrud, email: marte@asrudbygg.example } -alternatives: - - name: Gå tilbake til hovedmeny - description: > - action: / - consequence: [Tilbake] - record_as: subcontractors -<< - -<<>> -name: Stillingsansøkning -description: > - Fortell kort hvem du er og hva du kan. -responsible: { name: Marte Åsrud, email: marte@asrudbygg.example } -alternatives: - - name: Send påmelding - description: > - action: /job_applications/interviewed - consequence: [Send] - record_as: job_applications - features: - - name: Navn - description: > - requirements: - - { name: name, label: Navn, type: text } - - { name: phone, label: Telefon, type: tel } - - { name: email, label: E-post, type: email } - - { name: experience, label: Erfaring, type: textarea } - - name: Avslå påmelding - description: > - action: /job_applications/rejected - consequence: [Avslå] - record_as: job_applications -<< - -<<>> -name: Intervju -description: > - Vi kaller deg til intervju. -responsible: { name: Marte Åsrud, email: marte@asrudbygg.example } -alternatives: - - name: Ansett - description: > - action: /job_applications/hired - consequence: [Ansett] - record_as: job_applications - - name: Takk nei - description: > - action: /job_applications/rejected - consequence: [Avslå] - record_as: job_applications -<< - -<<>> -name: Ansett -description: > - Du blir ansatt som tømrer, murer eller lærling. -responsible: { name: Marte Åsrud, email: marte@asrudbygg.example } -alternatives: - - name: Gå tilbake til hovedmeny - description: > - action: / - consequence: [Tilbake] - record_as: job_applications -<< - -<<>> -name: Takk nei -description: > - Vi takker nei til din påmelding. -responsible: { name: Marte Åsrud, email: marte@asrudbygg.example } -alternatives: - - name: Gå tilbake til hovedmeny - description: > - action: / - consequence: [Tilbake] - record_as: job_applications -<< - -<<>> -name: Rapporter avvik -description: > - Fortell kort hva som har skjedd. -responsible: { name: Marte Åsrud, email: marte@asrudbygg.example } -alternatives: - - name: Lukk saken - description: > - action: /incident_reports/closed - consequence: [Lukk] - record_as: incident_reports - features: - - name: beskrivelse - description: > - requirements: - - { name: description, label: Hva skjedde, type: textarea } - - { name: avvik_type, label: Typen avvik, type: select, options: [Løse rekkverk, Nestenulykke, Feil materialer] } - - { name: rapportert_av, label: Hvem rapporterte, type: text } - - name: Avslå å rapportere - description: > - action: /incident_reports/closed - consequence: [Avslå] - record_as: incident_reports -<< - -<<>> -name: Saken er lukket -description: > - Avviket er løst og saken lukkes. -responsible: { name: Marte Åsrud, email: marte@asrudbygg.example } -alternatives: - - name: Gå tilbake til hovedmeny - description: > - action: / - consequence: [Tilbake] - record_as: incident_reports -<< - -<<>> -name: Anbefaling av kompetanse -description: > - Fortell kort hvem du anbefaler og hvorfor. -responsible: { name: Marte Åsrud, email: marte@asrudbygg.example } -alternatives: - - name: Send anbefaling - description: > - action: /internal_referral/referred - consequence: [Send] - record_as: internal_referral - features: - - name: Navn - description: > - requirements: - - { name: name, label: Navn, type: text } - - { name: role, label: Rolle, type: text } - - { name: contact, label: Kontakt, type: email } - - name: Avslå anbefaling - description: > - action: /internal_referral/referred - consequence: [Avslå] - record_as: internal_referral -<< - -<<>> -name: Anbefaling sendt -description: > - Anbefalingen er sendt videre. -responsible: { name: Marte Åsrud, email: marte@asrudbygg.example } -alternatives: - - name: Gå tilbake til hovedmeny - description: > - action: / - consequence: [Tilbake] - record_as: internal_referral -<< - -<<>> -qualifies: prosjektledere -<< - -<<>> -name: Hva kom inn? -description: > - Henvendelser og saker som trenger handling. -responsible: { name: Marte Åsrud, email: marte@asrudbygg.example } -alternatives: - - name: Leads - description: > - action: /desk - consequence: [Confirm] - record_as: leads - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: leads } - requires_group: prosjektledere - transitions: - - { to: quoted, label: Quote sent } - - { to: lost, label: Not for us } - - { from: quoted, to: won, label: Won } - - { from: quoted, to: lost, label: Lost } - - name: Subcontractors - description: > - action: /desk - consequence: [Confirm] - record_as: subcontractors - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: subcontractors } - requires_group: prosjektledere - - name: Job applications - description: > - action: /desk - consequence: [Confirm] - record_as: job_applications - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: job_applications } - requires_group: prosjektledere - - name: Incident reports - description: > - action: /desk - consequence: [Confirm] - record_as: incident_reports - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: incident_reports } - requires_group: HMS-ansvarlig - - name: Internal referrals - description: > - action: /desk - consequence: [Confirm] - record_as: internal_referral - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: internal_referral } - requires_group: prosjektledere -<< diff --git a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/06-reply.md b/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/06-reply.md deleted file mode 100644 index 8a042cf..0000000 --- a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/06-reply.md +++ /dev/null @@ -1,310 +0,0 @@ -<<>> -name: Hva trenger du hjelp med? -description: > - Velg hva du trenger hjelp med. -responsible: { name: Åsrud Bygg og Rehabilitering AS, contact: post@asrud.no } -alternatives: - - name: Meld inn et problem - description: > - Fortell oss om det er noe galt med bygget ditt. - action: /leads - consequence: [Send] - record_as: leads - features: - - name: Om bygget - description: > - Hva slags problem opplever du? - requirements: - - { name: problem, label: Hva er problemet, type: textarea } - - { name: urgency, label: Hvor akutt, type: select, options: [Dette uken, Dette måneden, Ikke akutt] } - - { name: contact, label: Kontaktinformasjon, type: email } - - name: Bliv godkjent som leverandør - description: > - Søk om å bli fast leverandør til oss. - action: /subcontractors - consequence: [Send] - record_as: subcontractors - features: - - name: Førstehåndsinformasjon - description: > - Hvem er du og hva kan du? - requirements: - - { name: company, label: Bedriftsnavn, type: text } - - { name: contact, label: Kontaktinformasjon, type: email } - - { name: experience, label: Erfaring, type: textarea } - - name: Søk jobb - description: > - Søk om jobb som tømrer, murer eller lærling. - action: /job_applications - consequence: [Send] - record_as: job_applications - features: - - name: Faglig profil - description: > - Hvilken stilling søker du? - requirements: - - { name: role, label: Stillingsnavn, type: select, options: [Tømrer, Murer, Lærling] } - - { name: contact, label: Kontaktinformasjon, type: email } - - { name: experience, label: Erfaring, type: textarea } - - name: Rapporter avvik - description: > - Rapporter uønskede hendelser eller avvik på byggeplassen. - action: /incident_reports - consequence: [Send] - record_as: incident_reports - features: - - name: Avviksinformasjon - description: > - Hva skjedde? - requirements: - - { name: incident, label: Hva skjedde, type: textarea } - - { name: severity, label: Alvorlighetsgrad, type: select, options: [Høyt, Medium, Lavt] } - - { name: reporter, label: Rapportert av, type: text } - - name: Anbefal kvalifisert mandskap - description: > - Anbefal noen vi bør snakke med. - action: /internal_referral - consequence: [Send] - record_as: internal_referral - features: - - name: Anbefaling - description: > - Hvem anbefaler du og hvorfor? - requirements: - - { name: person, label: Navn, type: text } - - { name: reason, label: Grunn, type: textarea } - - { name: contact, label: Kontaktinformasjon, type: email } -<<>> - -<<>> -name: Meld inn et problem -description: > - Fortell oss om det er noe galt med bygget ditt. -responsible: { name: prosjektledere, contact: post@asrud.no } -alternatives: - - name: Send - description: > - Send inn meldingen. - action: /received - consequence: [Send] - record_as: leads - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: leads } - requires_group: prosjektledere - transitions: - - { to: quoted, label: Quote sent } - - { to: lost, label: Not for us } - - { from: quoted, to: won, label: Won } - - { from: quoted, to: lost, label: Lost } -<< - -<<>> -name: Bliv godkjent som leverandør -description: > - Søk om å bli fast leverandør til oss. -responsible: { name: prosjektledere, contact: post@asrud.no } -alternatives: - - name: Send - description: > - Send inn søknaden. - action: /received - consequence: [Send] - record_as: subcontractors - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: subcontractors } - requires_group: prosjektledere - transitions: - - { to: approved, label: Godkjent } - - { to: rejected, label: Ikke godkjent } -<< - -<< -name: Søk jobb -description: > - Søk om jobb som tømrer, murer eller lærling. -responsible: { name: prosjektledere, contact: post@asrud.no } -alternatives: - - name: Send - description: > - Send inn søknaden. - action: /received - consequence: [Send] - record_as: job_applications - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: job_applications } - requires_group: prosjektledere - transitions: - - { to: interviewed, label: Interview requested } - - { to: rejected, label: Ikke relevant } - - { from: interviewed, to: hired, label: Hired } - - { from: interviewed, to: rejected, label: Rejected } -<< - -<< -name: Rapporter avvik -description: > - Rapporter uønskede hendelser eller avvik på byggeplassen. -responsible: { name: HMS-ansvarlig, contact: post@asrud.no } -alternatives: - - name: Send - description: > - Send inn rapporten. - action: /received - consequence: [Send] - record_as: incident_reports - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: incident_reports } - requires_group: HMS-ansvarlig - transitions: - - { to: closed, label: Closed } -<< - -<< -name: Anbefal kvalifisert mandskap -description: > - Anbefal noen vi bør snakke med. -responsible: { name: prosjektledere, contact: post@asrud.no } -alternatives: - - name: Send - description: > - Send inn anbefalingen. - action: /received - consequence: [Send] - record_as: internal_referral - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: internal_referral } - requires_group: prosjektledere - transitions: - - { to: referred, label: Referred } -<< - -<<>> -qualifies: prosjektledere -<< - -<<>> -name: Hva kom inn? -responsible: { name: prosjektledere, contact: post@asrud.no } -alternatives: - - name: Leads - description: > - Behandl innkommende meldinger. - action: /desk - consequence: [Confirm] - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: leads } - requires_group: prosjektledere - transitions: - - { to: quoted, label: Quote sent } - - { to: lost, label: Not for us } - - { from: quoted, to: won, label: Won } - - { from: quoted, to: lost, label: Lost } - - name: Subcontractors - description: > - Behandl leverandør-søknader. - action: /desk - consequence: [Confirm] - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: subcontractors } - requires_group: prosjektledere - transitions: - - { to: approved, label: Godkjent } - - { to: rejected, label: Ikke godkjent } - - name: Job applications - description: > - Behandl jobb-søknader. - action: /desk - consequence: [Confirm] - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: job_applications } - requires_group: prosjektledere - transitions: - - { to: interviewed, label: Interview requested } - - { to: rejected, label: Ikke relevant } - - { from: interviewed, to: hired, label: Hired } - - { from: interviewed, to: rejected, label: Rejected } - - name: Incident reports - description: > - Behandl avvik rapporter. - action: /desk - consequence: [Confirm] - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: incident_reports } - requires_group: HMS-ansvarlig - transitions: - - { to: closed, label: Closed } - - name: Internal referrals - description: > - Behandl anbefalinger. - action: /desk - consequence: [Confirm] - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: internal_referral } - requires_group: prosjektledere - transitions: - - { to: referred, label: Referred } -<< - -<<>> -name: Melding mottatt -description: > - Meldingen er mottatt. Hvem skal lese den og hva skjer nå? -responsible: { name: prosjektledere, contact: post@asrud.no } -alternatives: - - name: Gå tilbake - description: > - Gå tilbake til hovedmenyen. - action: / - consequence: [Gå tilbake] - followup: true -<< - -<<>> -qualifies: prosjektledere -<< - -<<>> -qualifies: prosjektledere -<< - -<<>> -qualifies: prosjektledere -<< - -<<>> -qualifies: HMS-ansvarlig -<< - -<<>> -qualifies: prosjektledere -<< diff --git a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/07-reply.md b/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/07-reply.md deleted file mode 100644 index 6661c02..0000000 --- a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/07-reply.md +++ /dev/null @@ -1,181 +0,0 @@ -<<>> -name: Hva trenger du hjelp med? -description: > - Velg hva du trenger hjelp med. -responsible: { name: Åsrud Bygg og Rehabilitering AS, contact: post@asrud.no } -alternatives: - - name: Meld inn et problem - description: > - Fortell oss om det er noe galt med bygget ditt. - action: /questions/leads - consequence: [Send] - record_as: leads - features: - - name: Om bygget - description: > - Hva slags problem opplever du? - requirements: - - { name: problem, label: Hva er problemet, type: textarea } - - { name: urgency, label: Hvor akutt, type: select, options: [Dette uken, Dette måneden, Ikke akutt] } - - { name: contact, label: Kontaktinformasjon, type: email } - - name: Bliv godkjent som leverandør - description: > - Søk om å bli fast leverandør til oss. - action: /questions/subcontractors - consequence: [Send] - record_as: subcontractors - features: - - name: Førstehåndsinformasjon - description: > - Hvem er du og hva kan du? - requirements: - - { name: company, label: Bedriftsnavn, type: text } - - { name: contact, label: Kontaktinformasjon, type: email } - - { name: experience, label: Erfaring, type: textarea } - - name: Søk jobb - description: > - Søk om jobb som tømrer, murer eller lærling. - action: /questions/job_applications - consequence: [Send] - record_as: job_applications - features: - - name: Faglig profil - description: > - Hvilken stilling søker du? - requirements: - - { name: role, label: Stillingsnavn, type: select, options: [Tømrer, Murer, Lærling] } - - { name: contact, label: Kontaktinformasjon, type: email } - - { name: experience, label: Erfaring, type: textarea } - - name: Rapporter avvik - description: > - Rapporter uønskede hendelser eller avvik på byggeplassen. - action: /questions/incident_reports - consequence: [Send] - record_as: incident_reports - features: - - name: Avviksinformasjon - description: > - Hva skjedde? - requirements: - - { name: incident, label: Hva skjedde, type: textarea } - - { name: severity, label: Alvorlighetsgrad, type: select, options: [Høyt, Medium, Lavt] } - - { name: reporter, label: Rapportert av, type: text } - - name: Anbefal kvalifisert mandskap - description: > - Anbefal noen vi bør snakke med. - action: /questions/internal_referral - consequence: [Send] - record_as: internal_referral - features: - - name: Anbefaling - description: > - Hvem anbefaler du og hvorfor? - requirements: - - { name: person, label: Navn, type: text } - - { name: reason, label: Grunn, type: textarea } - - { name: contact, label: Kontaktinformasjon, type: email } -<<>> - -<<>> -name: Meld inn et problem -description: > - Fortell oss om det er noe galt med bygget ditt. -responsible: { name: prosjektledere, contact: post@asrud.no } -alternatives: - - name: Send - consequence: [Send] - record_as: leads - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: leads } - requires_group: prosjektledere - transitions: - - { to: quoted, label: Quote sent } - - { to: lost, label: Not for us } - - { from: quoted, to: won, label: Won } - - { from: quoted, to: lost, label: Lost } -``` - -<<>> -name: Bliv godkjent som leverandør -description: > - Søk om å bli fast leverandør til oss. -responsible: { name: prosjektledere, contact: post@asrud.no } -alternatives: - - name: Send - consequence: [Send] - record_as: subcontractors - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: subcontractors } - requires_group: prosjektledere - transitions: - - { to: approved, label: Godkjent } - - { to: rejected, label: Ikke godkjent } -``` - -<<>> -name: Søk jobb -description: > - Søk om jobb som tømrer, murer eller lærling. -responsible: { name: prosjektledere, contact: post@asrud.no } -alternatives: - - name: Send - consequence: [Send] - record_as: job_applications - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: job_applications } - requires_group: prosjektledere - transitions: - - { to: interviewed, label: Interview } - - { to: rejected, label: Ikke den rette } - - { from: interviewed, to: hired, label: Hired } - - { from: interviewed, to: rejected, label: Ikke den rette } -``` - -<<> -name: Rapporter avvik -description: > - Rapporter uønskede hendelser eller avvik på byggeplassen. -responsible: { name: HMS-ansvarlig, contact: post@asrud.no } -alternatives: - - name: Send - consequence: [Send] - record_as: incident_reports - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: incident_reports } - requires_group: HMS-ansvarlig - transitions: - - { to: closed, label: Lukket } -``` - -<<>> -name: Anbefal kvalifisert mandskap -description: > - Anbefal noen vi bør snakke med. -responsible: { name: prosjektledere, contact: post@asrud.no } -alternatives: - - name: Send - consequence: [Send] - record_as: internal_referral - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: internal_referral } - requires_group: prosjektledere - transitions: - - { to: referred, label: Anbefalt } -``` - -<<>> diff --git a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/08-reply.md b/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/08-reply.md deleted file mode 100644 index 19b8b46..0000000 --- a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/08-reply.md +++ /dev/null @@ -1,93 +0,0 @@ -<<>> -name: Anbefal kvalifisert mandskap -description: > - Anbefal noen vi bør snakke med. -responsible: { name: prosjektledere, contact: post@asrud.no } -alternatives: - - name: Send - consequence: [Send] - record_as: internal_referral - features: - - name: Anbefaling - description: > - Hvem anbefaler du og hvorfor? - requirements: - - { name: person, label: Navn, type: text } - - { name: reason, label: Grunn, type: textarea } - - { name: contact, label: Kontaktinformasjon, type: email } -<<>> - -<<>> -qualifies: prosjektledere -<<> - -<<>> -name: What came in? -responsible: { name: ..., contact: ... } -alternatives: - - name: Leads - description: One line on what to do with them. - action: /desk - consequence: [Confirm] - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: leads } - requires_group: project_managers - transitions: - - { to: quoted, label: Quote sent } - - { to: lost, label: Not for us } - - { from: quoted, to: won, label: Won } - - { from: quoted, to: lost, label: Lost } -``` - -<<>> - -Wait, I need to check the verifier output again. The error is about `questions/internal_referral.yaml` having a parsing error at line 17. Let me look at the file content that was provided. - -The file `questions/internal_referral.yaml` ends with: -``` - transitions: - - { to: referred, label: Anbefalt } -``` - -It seems like the file is truncated or has a syntax error. The YAML structure seems incomplete. There's no closing brackets for the `features` list or the `alternatives` list or the resource block. - -Looking at the original file that was rejected: -``` -name: Anbefal kvalifisert mandskap -description: > - Anbefal noen vi bør snakke med. -responsible: { name: prosjektledere, contact: post@asrud.no } -alternatives: - - name: Send - consequence: [Send] - record_as: internal_referral - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: internal_referral } - requires_group: prosjektledere - transitions: - - { to: referred, label: Anbefalt } -``` - -The file seems to be missing closing brackets. The `features` list has one item, but the list isn't closed. The `alternatives` list has one item, but isn't closed. The YAML document itself might not have the proper closing. - -Actually, looking more carefully, the error message says: "found character that cannot start any token at line 17 column 1, while scanning for the next token". This typically means there's an issue with indentation or unexpected characters. - -But wait, the user says: "The verifier rejected the repo below. Fix it." and provides the verifier output. The current files include `questions/internal_referral.yaml` which appears to be truncated or malformed. - -Let me also check the other files. There's `questions/desk/_section.yaml` and `questions/desk/index.yaml` but they seem to have issues too. The `questions/desk/index.yaml` has `responsible: { name: ..., contact: ... }` with ellipsis which might not be valid, and it references `project_managers` but the need says `handled_by: prosjektledere`. - -Actually, re-reading the task: "Return only the files you change, each complete. To remove a file, return it with the single line DELETE. needs.yaml is frozen; do not return it." - -So I need to fix the parsing error in `questions/internal_referral.yaml`. The error is at line 17 column 1. Looking at the file content, it seems like the file was cut off. I need to provide a complete valid YAML file. - -Let me construct the complete `questions/internal_referral.yaml` file based on the pattern from other files and the needs specification. - -From `needs.yaml`, the `internal_referral` need has: -- id: internal_referral -- who: \ No newline at end of file diff --git a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/09-reply.md b/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/09-reply.md deleted file mode 100644 index 5792c18..0000000 --- a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/09-reply.md +++ /dev/null @@ -1,64 +0,0 @@ -<<>> -name: Anbefal kvalifisert mandskap -description: > - Anbefal noen vi bør snakke med. -responsible: { name: prosjektledere, contact: post@asrud.no } -alternatives: - - name: Send - consequence: [Send] - record_as: internal_referral - features: - - name: Anbefaling - description: > - Hvem anbefaler du og hvorfor? - requirements: - - { name: person, label: Navn, type: text } - - { name: reason, label: Grunn, type: textarea } - - { name: contact, label: Kontaktinformasjon, type: email } -<<>> - -<<>> -title: Åsrud Bygg og Rehabilitering AS -lang: no -<<>> - -<<>> -name: What came in? -responsible: { name: ..., contact: ... } -alternatives: - - name: Leads - description: One line on what to do with them. - action: /desk - consequence: [Confirm] - features: - - name: "" - description: "" - resource: - source: { kind: kv, bucket: leads } - requires_group: project_managers - transitions: - - { to: quoted, label: Quote sent } - - { to: lost, label: Not for us } - - { from: quoted, to: won, label: Won } - - { from: quoted, to: lost, label: Lost } -<<><<>> -name: Hva trenger du hjelp med? -description: > - Velg hva du trenger hjelp med. -responsible: { name: Åsrud Bygg og Rehabilitering AS, contact: post@asrud.no } -alternatives: - - name: Meld inn et problem - description: > - Fortell oss om det er noe galt med bygget ditt. - action: /questions/leads - consequence: [Send] - record_as: leads - features: - - name: Om bygget - description: > - Hva slags problem opplever du? - requirements: - - { name: problem, label: Hva er problemet, type: textarea } - - { name: urgency, label: Hvor akutt, type: select, options: [Dette uken, Dette måneden, Ikke akutt] } - - { name: contact, label: Kontaktinformasjon, type: email } -<<>> diff --git a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/10-reply.md b/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/10-reply.md deleted file mode 100644 index 81e8f23..0000000 --- a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/replies/10-reply.md +++ /dev/null @@ -1,24 +0,0 @@ -<<>> -name: Anbefal kvalifisert mandskap -description: > - Anbefal noen vi bør snakke med. -responsible: { name: prosjektledere, contact: post@asrud.no } -alternatives: - - name: Send - consequence: [Send] - record_as: internal_referral - features: - - name: Anbefaling - description: > - Hvem anbefaler du og hvorfor? - requirements: - - { name: person, label: Navn, type: text } - - { name: reason, label: Grunn, type: textarea } - - { name: contact, label: Kontaktinformasjon, type: email } -<<>> - -<<>> -title: Åsrud Bygg og Rehabilitering AS -lang: no -<<>> -``` diff --git a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/verifier-last.log b/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/verifier-last.log deleted file mode 100644 index 466ae0e..0000000 --- a/vendor/trainer/runs/rehab-entreprenor-no-2026-09-21/verifier-last.log +++ /dev/null @@ -1,9 +0,0 @@ -needs: parsed in round 4 -structure round 1: ok=false fails=11 -structure round 2: ok=false fails=1 -structure round 3: ok=false fails=0 -structure round 4: ok=false fails=0 -structure round 5: ok=false fails=0 -structure round 6: ok=false fails=0 - -Error: parsing desk/index.yaml: could not find expected ':' at line 20 column 1, while scanning a simple key at line 19 column 1 diff --git a/vendor/trainer/runs/spread.sh b/vendor/trainer/runs/spread.sh deleted file mode 100755 index c43dc8c..0000000 --- a/vendor/trainer/runs/spread.sh +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/sh -# The noise floor: answer one run's tasks with several seeds and print -# each seed's score, so a change can be told from the visitor's mood. -# runs/spread.sh runs/ [seeds...] (default seeds: 1 2 3) -set -eu -run=${1:?usage: spread.sh runs/ [seeds...]}; shift -seeds=${*:-1 2 3} -IRIS=/var/local/cargo-target/release/iris -T=/var/local/cargo-target/release/portal-trainer -LLM="MODEL=qwen3:8b $(cd "$(dirname "$0")/.." && pwd)/engines/ollama.sh" -cd "$run" -for mode in full skim; do - skim=""; [ "$mode" = skim ] && skim="--skim" - for s in $seeds; do - $T answer --tasks tasks-$mode.jsonl --repo site --llm "$LLM" --seed "$s" > answers-$mode-seed$s.jsonl - printf "%s seed %s: " "$mode" "$s" - $IRIS check --path site/questions --needs-tasks tasks-$mode.jsonl $skim --needs-score answers-$mode-seed$s.jsonl 2>&1 | grep -E "^wording:" - done -done diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/README.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/README.md deleted file mode 100644 index 0d6f1f3..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/README.md +++ /dev/null @@ -1,50 +0,0 @@ -# Tomter Vel, the whole card worded, scored by a visitor who reads the whole card - -Same plan as the day before (`plans/tomtervel.yaml`, 11 needs behind -four doors, with nabohjelp), rebuilt after the builder learned to -fill every part of a card and the scorers learned to read it. Claude -Sonnet writing the words, 294 s for 27 pages, verifier green by -construction. Visitor: qwen3:8b, one task per call, shown each option -as portal renders it. This build is what vel.klingenbergbygg.no -serves from 2026-09-23. - -| Visitor could read | 2026-09-22 build (heading + description) | This build (whole card) | -|---|---|---| -| Headings and descriptions | 30 of 40 | 32 of 40 | -| Headings only | 28 of 40 | 29 of 40 | - -Two more routed right with descriptions, one more on headings alone. -Not a large move, and the headings-only figure says why: the front -door's four door headings still do most of the damage. "Si din mening -eller gi en hånd" took two traffic reports, two playground reports, a -member with a new email and a waffle volunteer on headings alone. The -card cannot help a visitor who only reads the heading, and the door -headings are the plan's weakest words. - -What the card does do shows in `rate`: with the whole card shown, -"where" (do you know where you are, who this is for, and what the -button does) is 2 of 2 on every page, and "asked" is 2 of 2 on every -form page. The two context sections the plan supplies, "Hva skjer -videre" and "Hvem ser dette", are what makes "next" 2 of 2 on the -form pages. - -One instrument note: "where" fails its control on three pages, where -the gutted twin (which keeps the page's question) still got a yes. A -question like "Hva har du sett i nabolaget som ikke er som det skal?" -tells a visitor where they are on its own. Fair, and it means "where" -is partly a property of the page question, not only the cards. - -A card, as built (playground report, `/melde-fra`): - -- Få fikset noe som er ødelagt: Er noe på lekeplassen eller stien - ødelagt eller farlig? Fortell oss hvor og hva, så tar - lekeplasskomiteen tak i det. -- Button: Meld fra. Det holder med noen få ord, så ser komiteen på det - så fort de kan. -- [wrench] Hva skjer videre: Meldingen går til lekeplasskomiteen, som - tar tak i saken og utbedrer skaden. -- [hammer] Hvem ser dette: Lekeplasskomiteen leser det du sender inn; - til det haster kan du nå styret på post@tomtervel.no. -- [construction] Meld fra om skade: Beskriv hva du så og hvor det er. - Asks for: Hvor er det?; Hva har du sett? e.g. Løs planke i - klatrestativet. diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/aggregates.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/aggregates.yaml deleted file mode 100644 index 73a8eaa..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/aggregates.yaml +++ /dev/null @@ -1,162 +0,0 @@ -aggregates: -- bucket: anleggsfeil - initial: open - states: - open: - event: received - tatt_tak_i: - event: tatt_tak_i - utbedret: - event: utbedret - transitions: - open: - - tatt_tak_i - tatt_tak_i: - - utbedret -- bucket: frivillige - initial: open - states: - kontaktet: - event: kontaktet - open: - event: received - satt_opp: - event: satt_opp - takket_nei: - event: takket_nei - transitions: - kontaktet: - - satt_opp - - takket_nei - open: - - kontaktet - - takket_nei -- bucket: hjelpebehov - initial: open - states: - formidlet: - event: formidlet - ikke_lost: - event: ikke_lost - open: - event: received - ordnet: - event: ordnet - transitions: - formidlet: - - ordnet - - ikke_lost - open: - - formidlet - - ikke_lost -- bucket: hjelpere - initial: open - states: - open: - event: received - registrert: - event: registrert - trukket: - event: trukket - transitions: - open: - - registrert - - trukket -- bucket: husstander - initial: open - states: - betalt: - event: betalt - open: - event: received - utmeldt: - event: utmeldt - transitions: - open: - - betalt - - utmeldt -- bucket: innspill - initial: open - states: - ikke_tatt_med: - event: ikke_tatt_med - open: - event: received - tatt_med: - event: tatt_med - transitions: - open: - - tatt_med - - ikke_tatt_med -- bucket: komitesoknader - initial: open - states: - avslatt: - event: avslatt - open: - event: received - plassert: - event: plassert - transitions: - open: - - plassert - - avslatt -- bucket: medlemsendringer - initial: open - states: - open: - event: received - oppdatert: - event: oppdatert - transitions: - open: - - oppdatert -- bucket: oppslag - initial: open - states: - lagt_ut: - event: lagt_ut - open: - event: received - tatt_ned: - event: tatt_ned - transitions: - open: - - lagt_ut - - tatt_ned -- bucket: trafikkmeldinger - initial: open - states: - avvist: - event: avvist - open: - event: received - ordnet: - event: ordnet - tatt_opp: - event: tatt_opp - transitions: - open: - - tatt_opp - - avvist - tatt_opp: - - ordnet - - avvist -- bucket: utlegg - initial: open - states: - avvist: - event: avvist - godkjent: - event: godkjent - open: - event: received - utbetalt: - event: utbetalt - transitions: - godkjent: - - utbetalt - - avvist - open: - - godkjent - - avvist diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/answers-full.jsonl b/vendor/trainer/runs/tomtervel-cards-2026-09-23/answers-full.jsonl deleted file mode 100644 index 48ecc71..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/answers-full.jsonl +++ /dev/null @@ -1,40 +0,0 @@ -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"nyinnflyttet@/"} -{"choice":"Bli medlem av velet","confidence":0.95,"id":"nyinnflyttet@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"glemte-a-betale@/"} -{"choice":"Bli medlem av velet","confidence":0.95,"id":"glemte-a-betale@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"ny-epost@/"} -{"choice":"Oppdater opplysningene dine","confidence":0.95,"id":"ny-epost@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"flytter@/"} -{"choice":"Oppdater opplysningene dine","confidence":0.95,"id":"flytter@/medlem"} -{"choice":"Meld fra om noe som ikke er som det skal","confidence":0.95,"id":"skolevei@/"} -{"choice":"Gjør trafikken tryggere der du bor","confidence":0.95,"id":"skolevei@/melde-fra"} -{"choice":"Få hjelp fra naboer, eller gi en hånd","confidence":0.95,"id":"busslomme@/"} -{"choice":"Gjør trafikken tryggere der du bor","confidence":0.95,"id":"busslomme@/melde-fra"} -{"choice":"Meld fra om noe som ikke er som det skal","confidence":0.95,"id":"huske@/"} -{"choice":"Få fikset noe som er ødelagt","confidence":0.95,"id":"huske@/melde-fra"} -{"choice":"Meld fra om noe som ikke er som det skal","confidence":0.95,"id":"bru@/"} -{"choice":"Gjør trafikken tryggere der du bor","confidence":0.95,"id":"bru@/melde-fra"} -{"choice":"Si din mening eller gi en hånd","confidence":0.95,"id":"blokker@/"} -{"choice":"Få din mening med i velets høringssvar","confidence":0.95,"id":"blokker@/bidra"} -{"choice":"Si din mening eller gi en hånd","confidence":0.95,"id":"togtider@/"} -{"choice":"Få din mening med i velets høringssvar","confidence":0.95,"id":"togtider@/bidra"} -{"choice":"Til naboer","confidence":0.95,"id":"vafler@/"} -{"choice":"Bli med på et arrangement eller en dugnad","confidence":0.95,"id":"vafler@/bidra"} -{"choice":"Få hjelp fra naboer, eller gi en hånd","confidence":0.85,"id":"motorsag@/"} -{"choice":"Bli med på et arrangement eller en dugnad","confidence":0.95,"id":"motorsag@/bidra"} -{"choice":"Si din mening eller gi en hånd","confidence":0.95,"id":"pendler@/"} -{"choice":"Få en plass i komiteen du brenner for","confidence":0.95,"id":"pendler@/bidra"} -{"choice":"Bidra","confidence":0.95,"id":"planlegger@/"} -{"choice":"Få din mening med i velets høringssvar","confidence":0.95,"id":"planlegger@/bidra"} -{"choice":"Få hjelp fra naboer, eller gi en hånd","confidence":0.95,"id":"tilhenger@/"} -{"choice":"Lån ut eller lån det naboene trenger","confidence":0.95,"id":"tilhenger@/naboer"} -{"choice":"Få hjelp fra naboer, eller gi en hånd","confidence":0.95,"id":"stige@/"} -{"choice":"Lån ut eller lån det naboene trenger","confidence":0.95,"id":"stige@/naboer"} -{"choice":"Få hjelp fra naboer, eller gi en hånd","confidence":0.95,"id":"snomaking@/"} -{"choice":"Be om nabohjelp","confidence":0.95,"id":"snomaking@/naboer"} -{"choice":"Få hjelp fra naboer, eller gi en hånd","confidence":0.85,"id":"nyoperert@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"nyoperert@/naboer"} -{"choice":"Få hjelp fra naboer, eller gi en hånd","confidence":0.95,"id":"hjemmekontor@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"hjemmekontor@/naboer"} -{"choice":"Få hjelp fra naboer, eller gi en hånd","confidence":0.95,"id":"pensjonert-elektriker@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"pensjonert-elektriker@/naboer"} diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/answers-skim.jsonl b/vendor/trainer/runs/tomtervel-cards-2026-09-23/answers-skim.jsonl deleted file mode 100644 index 755866e..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/answers-skim.jsonl +++ /dev/null @@ -1,40 +0,0 @@ -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.85,"id":"nyinnflyttet@/"} -{"choice":"Bli medlem av velet","confidence":0.95,"id":"nyinnflyttet@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"glemte-a-betale@/"} -{"choice":"Bli medlem av velet","confidence":0.95,"id":"glemte-a-betale@/medlem"} -{"choice":"Si din mening eller gi en hånd","confidence":0.85,"id":"ny-epost@/"} -{"choice":"Oppdater opplysningene dine","confidence":0.95,"id":"ny-epost@/medlem"} -{"choice":"Meld fra om noe som ikke er som det skal","confidence":0.95,"id":"flytter@/"} -{"choice":"Oppdater opplysningene dine","confidence":0.95,"id":"flytter@/medlem"} -{"choice":"Si din mening eller gi en hånd","confidence":0.85,"id":"skolevei@/"} -{"choice":"Gjør trafikken tryggere der du bor","confidence":0.95,"id":"skolevei@/melde-fra"} -{"choice":"Si din mening eller gi en hånd","confidence":0.85,"id":"busslomme@/"} -{"choice":"Gjør trafikken tryggere der du bor","confidence":0.95,"id":"busslomme@/melde-fra"} -{"choice":"Si din mening eller gi en hånd","confidence":0.85,"id":"huske@/"} -{"choice":"Få fikset noe som er ødelagt","confidence":0.95,"id":"huske@/melde-fra"} -{"choice":"Si din mening eller gi en hånd","confidence":0.85,"id":"bru@/"} -{"choice":"Få fikset noe som er ødelagt","confidence":0.95,"id":"bru@/melde-fra"} -{"choice":"Si din mening eller gi en hånd","confidence":0.95,"id":"blokker@/"} -{"choice":"Få din mening med i velets høringssvar","confidence":0.95,"id":"blokker@/bidra"} -{"choice":"Meld fra om noe som ikke er som det skal","confidence":0.95,"id":"togtider@/"} -{"choice":"Få din mening med i velets høringssvar","confidence":0.95,"id":"togtider@/bidra"} -{"choice":"Få hjelp fra naboer, eller gi en hånd","confidence":0.85,"id":"vafler@/"} -{"choice":"Bli med på et arrangement eller en dugnad","confidence":0.95,"id":"vafler@/bidra"} -{"choice":"Si din mening eller gi en hånd","confidence":0.85,"id":"motorsag@/"} -{"choice":"Bli med på et arrangement eller en dugnad","confidence":0.95,"id":"motorsag@/bidra"} -{"choice":"Si din mening eller gi en hånd","confidence":0.85,"id":"pendler@/"} -{"choice":"Få en plass i komiteen du brenner for","confidence":0.95,"id":"pendler@/bidra"} -{"choice":"Si din mening eller gi en hånd","confidence":0.85,"id":"planlegger@/"} -{"choice":"Få din mening med i velets høringssvar","confidence":0.95,"id":"planlegger@/bidra"} -{"choice":"Få hjelp fra naboer, eller gi en hånd","confidence":0.95,"id":"tilhenger@/"} -{"choice":"Lån ut eller lån det naboene trenger","confidence":0.95,"id":"tilhenger@/naboer"} -{"choice":"Få hjelp fra naboer, eller gi en hånd","confidence":0.95,"id":"stige@/"} -{"choice":"Lån ut eller lån det naboene trenger","confidence":0.95,"id":"stige@/naboer"} -{"choice":"Få hjelp fra naboer, eller gi en hånd","confidence":0.95,"id":"snomaking@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"snomaking@/naboer"} -{"choice":"Få hjelp fra naboer, eller gi en hånd","confidence":0.95,"id":"nyoperert@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"nyoperert@/naboer"} -{"choice":"Gi en hånd","confidence":0.95,"id":"hjemmekontor@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"hjemmekontor@/naboer"} -{"choice":"Få hjelp fra naboer, eller gi en hånd","confidence":0.95,"id":"pensjonert-elektriker@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"pensjonert-elektriker@/naboer"} diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/build.log b/vendor/trainer/runs/tomtervel-cards-2026-09-23/build.log deleted file mode 100644 index e3c22fb..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/build.log +++ /dev/null @@ -1,41 +0,0 @@ -words: questions/arrangementskomite/index.yaml -words: questions/bidra/index.yaml -words: questions/decide/dele-utstyr.yaml -words: questions/decide/kan-hjelpe.yaml -words: questions/decide/trenger-hjelp.yaml -words: questions/index.yaml -words: questions/kasserer/index.yaml -words: questions/komiteer/index.yaml -words: questions/komiteer/utlegg-sent.yaml -words: questions/komiteer/utlegg.yaml -words: questions/lekeplasskomite/index.yaml -words: questions/medlem/index.yaml -words: questions/melde-fra/index.yaml -words: questions/naboer/index.yaml -words: questions/nabohjelp/index.yaml -words: questions/received/anleggsfeil.yaml -words: questions/received/bli-medlem.yaml -words: questions/received/dele-utstyr.yaml -words: questions/received/endre-medlemskap.yaml -words: questions/received/hjelpe-til.yaml -words: questions/received/horingsinnspill.yaml -words: questions/received/kan-hjelpe.yaml -words: questions/received/komite.yaml -words: questions/received/trafikkfare.yaml -words: questions/received/trenger-hjelp.yaml -words: questions/styret/index.yaml -words: questions/trafikkomite/index.yaml -content repo written to runs/tomtervel-cards-2026-09-23 -OK: 27 question(s), 12 aggregate(s) valid -need "bli-medlem": / [Bli medlem eller endre opplysningene dine] -> /medlem [Bli medlem av velet] -> "husstander" -need "endre-medlemskap": / [Bli medlem eller endre opplysningene dine] -> /medlem [Oppdater opplysningene dine] -> "medlemsendringer" -need "trafikkfare": / [Meld fra om noe som ikke er som det skal] -> /melde-fra [Gjør trafikken tryggere der du bor] -> "trafikkmeldinger" -need "anleggsfeil": / [Meld fra om noe som ikke er som det skal] -> /melde-fra [Få fikset noe som er ødelagt] -> "anleggsfeil" -need "horingsinnspill": / [Si din mening eller gi en hånd] -> /bidra [Få din mening med i velets høringssvar] -> "innspill" -need "hjelpe-til": / [Si din mening eller gi en hånd] -> /bidra [Bli med på et arrangement eller en dugnad] -> "frivillige" -need "komite": / [Si din mening eller gi en hånd] -> /bidra [Få en plass i komiteen du brenner for] -> "komitesoknader" -need "trenger-hjelp": / [Få hjelp fra naboer, eller gi en hånd] -> /naboer [Få en nabo til å stille opp] -> "hjelpebehov" -need "kan-hjelpe": / [Få hjelp fra naboer, eller gi en hånd] -> /naboer [Bli spurt når en nabo trenger en hånd] -> "hjelpere" -need "dele-utstyr": / [Få hjelp fra naboer, eller gi en hånd] -> /naboer [Lån ut eller lån det naboene trenger] -> "oppslag" -need "utlegg": /komiteer/utlegg [Få tilbake det du har lagt ut] -> "utlegg" -OK: 11 need(s) structurally met, 0 planned, 21 persona(s) diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/01-questions_arrangementskomite_index.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/01-questions_arrangementskomite_index.yaml.md deleted file mode 100644 index 050ef9f..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/01-questions_arrangementskomite_index.yaml.md +++ /dev/null @@ -1,80 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/arrangementskomite/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "frivillige": { - "description": "", - "heading": "", - "moves": { - "kontaktet->satt_opp": "satt_opp>", - "kontaktet->takket_nei": "takket_nei>", - "open->kontaktet": "kontaktet>", - "open->takket_nei": "takket_nei>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "frivillige": { - "description": "Alle som har sagt de vil hjelpe til på et arrangement eller en dugnad, og hvor langt du har kommet med å sette dem opp.", - "heading": "Frivillige som venter på oppgave", - "moves": { - "kontaktet->satt_opp": "Sett opp på oppgave", - "kontaktet->takket_nei": "Meld takket nei", - "open->kontaktet": "Merk som kontaktet", - "open->takket_nei": "Meld takket nei" - } - } - }, - "confirm": "Lagre", - "description": "Her holder du oversikt over alle som har meldt seg som frivillige, og setter dem opp på det som trengs.", - "links": {}, - "question": "Hvem kan jeg sette i sving nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/02-questions_bidra_index.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/02-questions_bidra_index.yaml.md deleted file mode 100644 index c795589..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/02-questions_bidra_index.yaml.md +++ /dev/null @@ -1,206 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/bidra/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "hjelpe-til": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "hva": "", - "navn": "", - "telefon": "" - }, - "icon": "", - "labels": { - "hva": "", - "navn": "", - "telefon": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "horingsinnspill": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "innspill": "", - "navn": "", - "sak": "" - }, - "icon": "", - "labels": { - "innspill": "", - "navn": "", - "sak": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "komite": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "epost": "", - "komite": "", - "navn": "" - }, - "icon": "", - "labels": { - "epost": "", - "komite": "", - "navn": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Har du en time å gi, eller en mening om noe kommunen skal bestemme? Her finner du veien inn.", - "needs": { - "hjelpe-til": { - "button": "Meld deg", - "description": "Vi trenger folk på 17. mai, dugnader og andre arrangementer i løpet av året.", - "encouragement": "Bare si fra – vi finner noe som passer deg.", - "form_description": "Kort om hva du kan tenke deg å bidra med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli med på et arrangement eller en dugnad", - "hints": { - "hva": "F.eks. rigge til 17. mai, kjøre bord på dugnad", - "navn": "Ola Nordmann", - "telefon": "123 45 678" - }, - "icon": "hand-helping", - "labels": { - "hva": "Hva vil du hjelpe til med?", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Arrangementskomiteen tar kontakt med deg og setter deg opp på noe som passer. Passer det ikke akkurat da, sier du bare ifra.", - "road_icon": "calendar", - "road_title": "Slik går det videre", - "who_description": "Arrangementskomiteen leser dette, men du kan også nå styret på post@tomtervel.no i mellomtiden.", - "who_icon": "users", - "who_title": "Hvem leser dette" - }, - "horingsinnspill": { - "button": "Send innspill", - "description": "Har kommunen en sak på høring du mener noe om? Send det til oss, så tar vi det med i vårt svar.", - "encouragement": "Alle innspill blir lest før styret skriver høringssvaret.", - "form_description": "Skriv gjerne kort hvilken sak det gjelder og hva du mener.", - "form_title": "Send inn ditt innspill", - "heading": "Få din mening med i velets høringssvar", - "hints": { - "innspill": "F.eks. flere fartsdumper, bevare turstien", - "navn": "Ola Nordmann", - "sak": "F.eks. reguleringsplan for Tomterveien" - }, - "icon": "scale", - "labels": { - "innspill": "Hva mener du?", - "navn": "Navn", - "sak": "Hvilken sak gjelder det?" - }, - "road_description": "Styret samler innspillene og vurderer dem opp mot fristen for høringssvaret. Det som passer inn blir tatt med, resten blir ikke det.", - "road_icon": "file-text", - "road_title": "Slik går det videre", - "who_description": "Styret leser innspillet ditt, og du når dem på post@tomtervel.no om du lurer på noe.", - "who_icon": "users", - "who_title": "Hvem leser dette" - }, - "komite": { - "button": "Meld interesse", - "description": "Velet drives av sju komiteer på fritida. Er det noe du brenner for, er det plass til deg.", - "encouragement": "Vi tar kontakt for en prat om hva komiteen driver med.", - "form_description": "Fortell hvilken komité du har lyst til å være med i.", - "form_title": "Meld deg til en komité", - "heading": "Få en plass i komiteen du brenner for", - "hints": { - "epost": "ola@eksempel.no", - "komite": "F.eks. elvestien, lekeplassene, trafikk", - "navn": "Ola Nordmann" - }, - "icon": "users", - "labels": { - "epost": "E-post", - "komite": "Hvilken komité?", - "navn": "Navn" - }, - "road_description": "Styret tar kontakt og finner ut om det er plass i komiteen du ønsker deg til. Blir det ikke plass akkurat nå, får du beskjed om det også.", - "road_icon": "handshake", - "road_title": "Slik går det videre", - "who_description": "Styret leser meldingen din, og du når dem på post@tomtervel.no i mellomtiden.", - "who_icon": "users", - "who_title": "Hvem leser dette" - } - }, - "question": "Hvordan vil du bidra?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/03-questions_decide_dele-utstyr.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/03-questions_decide_dele-utstyr.yaml.md deleted file mode 100644 index 21c5246..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/03-questions_decide_dele-utstyr.yaml.md +++ /dev/null @@ -1,66 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/decide/dele-utstyr.yaml -It is a page the person who sent a form reaches later, through a private link, to make a decision that is theirs: under `moves`, each entry is one thing they can decide. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "moves": { - "tatt_ned": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Utstyret er lånt ut, og oppslaget kan tas bort fra siden.", - "moves": { - "tatt_ned": { - "button": "Ta ned oppslaget", - "description": "Oppslaget forsvinner fra siden med det samme.", - "heading": "Fjern oppslaget når det er ordnet" - } - }, - "question": "Skal oppslaget tas ned?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/04-questions_decide_kan-hjelpe.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/04-questions_decide_kan-hjelpe.yaml.md deleted file mode 100644 index 3d0de4a..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/04-questions_decide_kan-hjelpe.yaml.md +++ /dev/null @@ -1,66 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/decide/kan-hjelpe.yaml -It is a page the person who sent a form reaches later, through a private link, to make a decision that is theirs: under `moves`, each entry is one thing they can decide. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "moves": { - "trukket": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "En nabo har meldt seg som kan-hjelpe. Her kan de trekke seg fra listen når de ikke lenger har anledning.", - "moves": { - "trukket": { - "button": "Trekk meg fra listen", - "description": "Du blir ikke spurt om å hjelpe til lenger. Du kan melde deg på igjen når som helst.", - "heading": "Ta deg av listen over de som kan hjelpe" - } - }, - "question": "Vil du fortsatt stå på listen over naboer som kan hjelpe?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/05-questions_decide_trenger-hjelp.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/05-questions_decide_trenger-hjelp.yaml.md deleted file mode 100644 index 337d8cf..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/05-questions_decide_trenger-hjelp.yaml.md +++ /dev/null @@ -1,66 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/decide/trenger-hjelp.yaml -It is a page the person who sent a form reaches later, through a private link, to make a decision that is theirs: under `moves`, each entry is one thing they can decide. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "moves": { - "ordnet": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Her sier du fra om at naboen fikk hjelp, slik at saken kan avsluttes.", - "moves": { - "ordnet": { - "button": "Meld ordnet", - "description": "Da vet vi at hjelpen kom fram, og saken lukkes.", - "heading": "Fikk du hjelpen du trengte?" - } - }, - "question": "Ble hjelpen ordnet?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/06-questions_index.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/06-questions_index.yaml.md deleted file mode 100644 index 6a577d5..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/06-questions_index.yaml.md +++ /dev/null @@ -1,114 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/index.yaml -It is the front door: the first page any visitor sees. `question` is the page's one question. Under `doors`, each entry is one alternative that leads to a page of its own for one kind of visitor: its heading must let that visitor recognise themselves from the heading alone. Under `needs`, each entry is one alternative with a form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "doors": { - "bidra": { - "button": "", - "description": "", - "for_whom": "", - "heading": "", - "icon": "" - }, - "medlem": { - "button": "", - "description": "", - "for_whom": "", - "heading": "", - "icon": "" - }, - "melde-fra": { - "button": "", - "description": "", - "for_whom": "", - "heading": "", - "icon": "" - }, - "naboer": { - "button": "", - "description": "", - "for_whom": "", - "heading": "", - "icon": "" - } - }, - "needs": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Tomter Vel er velforeningen for alle husstander i Tomter. Finn ut hva du trenger her.", - "doors": { - "bidra": { - "button": "Bidra", - "description": "Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg.", - "for_whom": "for deg som vil gjøre en innsats", - "heading": "Si din mening eller gi en hånd", - "icon": "hand-helping" - }, - "medlem": { - "button": "Bli medlem", - "description": "Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.", - "for_whom": "for deg som bor i Tomter", - "heading": "Bli medlem eller endre opplysningene dine", - "icon": "users" - }, - "melde-fra": { - "button": "Meld fra", - "description": "Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.", - "for_whom": "for deg som har sett noe i nabolaget", - "heading": "Meld fra om noe som ikke er som det skal", - "icon": "alert-triangle" - }, - "naboer": { - "button": "Til naboer", - "description": "Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.", - "for_whom": "for deg som vil hjelpe eller trenger hjelp", - "heading": "Få hjelp fra naboer, eller gi en hånd", - "icon": "heart-handshake" - } - }, - "needs": {}, - "question": "Hva vil du gjøre i dag?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/07-questions_kasserer_index.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/07-questions_kasserer_index.yaml.md deleted file mode 100644 index 67dfc82..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/07-questions_kasserer_index.yaml.md +++ /dev/null @@ -1,110 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/kasserer/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "husstander": { - "description": "", - "heading": "", - "moves": { - "open->betalt": "betalt>", - "open->utmeldt": "utmeldt>" - } - }, - "medlemsendringer": { - "description": "", - "heading": "", - "moves": { - "open->oppdatert": "oppdatert>" - } - }, - "utlegg": { - "description": "", - "heading": "", - "moves": { - "godkjent->avvist": "avvist>", - "godkjent->utbetalt": "utbetalt>", - "open->avvist": "avvist>", - "open->godkjent": "godkjent>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "husstander": { - "description": "Husstander som har meldt seg inn og venter på at kontingenten blir registrert.", - "heading": "Husstander som skal bli medlemmer", - "moves": { - "open->betalt": "Merk som betalt", - "open->utmeldt": "Meld ut" - } - }, - "medlemsendringer": { - "description": "Medlemmer som har flyttet, byttet e-post eller vil ut av velet.", - "heading": "Opplysninger som skal oppdateres", - "moves": { - "open->oppdatert": "Merk som oppdatert" - } - }, - "utlegg": { - "description": "Utlegg fra komiteene som venter på godkjenning eller utbetaling.", - "heading": "Utlegg som skal gjøres opp", - "moves": { - "godkjent->avvist": "Avvis likevel", - "godkjent->utbetalt": "Merk som utbetalt", - "open->avvist": "Avvis utlegget", - "open->godkjent": "Godkjenn utlegget" - } - } - }, - "confirm": "Lagre", - "description": "Her holder du oversikt over husstandene, medlemsendringene og utleggene som venter på deg som kasserer.", - "links": {}, - "question": "Hva står for tur hos kassereren?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/08-questions_komiteer_index.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/08-questions_komiteer_index.yaml.md deleted file mode 100644 index 4469ace..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/08-questions_komiteer_index.yaml.md +++ /dev/null @@ -1,70 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/komiteer/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": {}, - "confirm": "", - "description": "", - "links": { - "utlegg": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": {}, - "confirm": "Registrer", - "description": "Her har komiteen sine saker samlet, sortert etter hvor de står i behandlingen.", - "links": { - "utlegg": { - "button": "Send utlegg", - "description": "Har du lagt ut for noe til komiteen? Send det inn og få pengene tilbake fra kasserer.", - "heading": "Få tilbake det du har lagt ut for" - } - }, - "question": "Hvor står sakene komiteen har ansvar for?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/09-questions_komiteer_utlegg-sent.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/09-questions_komiteer_utlegg-sent.yaml.md deleted file mode 100644 index 871b4b0..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/09-questions_komiteer_utlegg-sent.yaml.md +++ /dev/null @@ -1,58 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/komiteer/utlegg-sent.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake til forsiden", - "description": "Takk for at du sender inn utlegget. Kasserer får beskjed og tar det videre.", - "next_description": "Kasserer ser gjennom bilag og kontonummer, og setter i gang utbetalingen når det er godkjent.", - "next_heading": "Kasserer sjekker og betaler ut", - "question": "Hva skjer med utlegget mitt nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/10-questions_komiteer_utlegg.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/10-questions_komiteer_utlegg.yaml.md deleted file mode 100644 index 89d51cd..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/10-questions_komiteer_utlegg.yaml.md +++ /dev/null @@ -1,98 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/komiteer/utlegg.yaml -It is a page only one role inside the business can open, holding one form. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "belop": "", - "hva": "", - "navn": "" - }, - "icon": "", - "labels": { - "belop": "", - "hva": "", - "navn": "" - }, - "page_description": "", - "question": "", - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "button": "Send utlegg", - "description": "Har du lagt ut for noe til et arrangement, dugnad eller annet i regi av velet? Send inn så får du pengene tilbake.", - "encouragement": "Kasserer ser gjennom det og betaler ut så snart det er godkjent.", - "form_description": "Ha gjerne kvittering eller bilag klart, så går utbetalingen raskere.", - "form_title": "Legg ut for utgift", - "heading": "Få tilbake det du har lagt ut", - "hints": { - "belop": "450 kr", - "hva": "Kaffe og kaker til dugnaden på lekeplassen", - "navn": "Kari Nordmann" - }, - "icon": "receipt", - "labels": { - "belop": "Beløp", - "hva": "Hva gjaldt det", - "navn": "Navn" - }, - "page_description": "Har du betalt noe av egen lomme for en komité i Tomter Vel? Her melder du inn utlegget, så ordner kasserer resten.", - "question": "Har du lagt ut penger for velet som du skal ha tilbake?", - "road_description": "Utlegget går til kasserer, som godkjenner det og betaler ut. Skulle det ikke la seg godkjenne, får du beskjed om det også.", - "road_icon": "coins", - "road_title": "Fra melding til utbetaling", - "who_description": "Kasserer i Tomter Vel leser meldingen og kan nås på post@tomtervel.no i mellomtiden.", - "who_icon": "wallet", - "who_title": "Kasserer har saken" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/11-questions_lekeplasskomite_index.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/11-questions_lekeplasskomite_index.yaml.md deleted file mode 100644 index 881882f..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/11-questions_lekeplasskomite_index.yaml.md +++ /dev/null @@ -1,76 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/lekeplasskomite/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "anleggsfeil": { - "description": "", - "heading": "", - "moves": { - "open->tatt_tak_i": "tatt_tak_i>", - "tatt_tak_i->utbedret": "utbedret>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "anleggsfeil": { - "description": "Meldinger om noe som er ødelagt på lekeplassen eller stien, og som bør fikses før noen skader seg.", - "heading": "Meldinger om lekeplass og sti", - "moves": { - "open->tatt_tak_i": "Ta tak i saken", - "tatt_tak_i->utbedret": "Merk som utbedret" - } - } - }, - "confirm": "Lagre", - "description": "Her holder du oversikt over meldinger om lekeplassene og stien, og følger dem opp til de er utbedret.", - "links": {}, - "question": "Hva må fikses på lekeplassene og stien nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/12-questions_medlem_index.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/12-questions_medlem_index.yaml.md deleted file mode 100644 index 0ceac95..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/12-questions_medlem_index.yaml.md +++ /dev/null @@ -1,160 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/medlem/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "bli-medlem": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "adresse": "", - "epost": "", - "navn": "", - "telefon": "" - }, - "icon": "", - "labels": { - "adresse": "", - "epost": "", - "navn": "", - "telefon": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "endre-medlemskap": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "adresse": "", - "hva_er_nytt": "", - "navn": "" - }, - "icon": "", - "labels": { - "adresse": "", - "hva_er_nytt": "", - "navn": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Bli medlem, eller endre opplysningene dine hvis du allerede er det.", - "needs": { - "bli-medlem": { - "button": "Meld meg inn", - "description": "Meld deg inn i Tomter Vel, så tar vi vare på nabolaget sammen. Du får en giro på kontingenten når vi har registrert deg.", - "encouragement": "Det tar bare et minutt, resten ordner vi.", - "form_description": "Fyll ut det du vet, så gjør kasserer resten.", - "form_title": "Bli medlem", - "heading": "Bli medlem av velet", - "hints": { - "adresse": "Tomterveien 12", - "epost": "ola@eksempel.no", - "navn": "Ola Nordmann", - "telefon": "912 34 567" - }, - "icon": "user-plus", - "labels": { - "adresse": "Adresse", - "epost": "E-post", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Vi registrerer deg og sender deg kontingenten. Når den er betalt, er du fullverdig medlem.", - "road_icon": "coins", - "road_title": "Fra innmelding til medlem", - "who_description": "Kasserer i styret leser dette og ordner giroen; du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "mail", - "who_title": "Hvem leser dette" - }, - "endre-medlemskap": { - "button": "Send endring", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Si fra her, så retter vi opp i listene våre.", - "encouragement": "Vi oppdaterer registeret så snart vi ser meldingen.", - "form_description": "Skriv hva som er nytt, så finner vi deg i registeret.", - "form_title": "Endre medlemskap", - "heading": "Oppdater opplysningene dine", - "hints": { - "adresse": "Tomterveien 12", - "hva_er_nytt": "Ny e-post, flyttet, eller vil melde meg ut", - "navn": "Ola Nordmann" - }, - "icon": "pencil", - "labels": { - "adresse": "Adresse", - "hva_er_nytt": "Hva vil du endre?", - "navn": "Navn" - }, - "road_description": "Vi retter opp i medlemslisten så fort meldingen kommer inn.", - "road_icon": "refresh-cw", - "road_title": "Slik oppdaterer vi", - "who_description": "Kasserer i styret leser dette og oppdaterer registeret; du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "mail", - "who_title": "Hvem leser dette" - } - }, - "question": "Vil du bli medlem, eller endre opplysningene dine?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/13-questions_melde-fra_index.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/13-questions_melde-fra_index.yaml.md deleted file mode 100644 index cca2039..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/13-questions_melde-fra_index.yaml.md +++ /dev/null @@ -1,152 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/melde-fra/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "anleggsfeil": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "hva": "", - "hvor": "" - }, - "icon": "", - "labels": { - "hva": "", - "hvor": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "trafikkfare": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "epost": "", - "hva": "", - "hvor": "" - }, - "icon": "", - "labels": { - "epost": "", - "hva": "", - "hvor": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Sett du noe i nabolaget som ikke er som det skal? Gi oss beskjed, så følger vi det opp.", - "needs": { - "anleggsfeil": { - "button": "Meld fra", - "description": "Er noe på lekeplassen eller stien ødelagt eller farlig? Fortell oss hvor og hva, så tar lekeplasskomiteen tak i det.", - "encouragement": "Det holder med noen få ord, så ser komiteen på det så fort de kan.", - "form_description": "Beskriv hva du så og hvor det er, så finner vi det raskt.", - "form_title": "Meld fra om skade", - "heading": "Få fikset noe som er ødelagt", - "hints": { - "hva": "Løs planke i klatrestativet", - "hvor": "Lekeplassen ved Solbakken" - }, - "icon": "construction", - "labels": { - "hva": "Hva har du sett?", - "hvor": "Hvor er det?" - }, - "road_description": "Meldingen går til lekeplasskomiteen, som tar tak i saken og utbedrer skaden.", - "road_icon": "wrench", - "road_title": "Hva skjer videre", - "who_description": "Lekeplasskomiteen leser det du sender inn; til det haster kan du nå styret på post@tomtervel.no.", - "who_icon": "hammer", - "who_title": "Hvem ser dette" - }, - "trafikkfare": { - "button": "Meld fra", - "description": "Har du sett et farlig sted i trafikken, som dårlig sikt eller en vei uten fortau? Fortell oss om det, så tar vi det videre med kommunen.", - "encouragement": "Det tar bare et minutt, og trafikkomiteen ser på alle meldinger som kommer inn.", - "form_description": "Fortell hva du har sett og hvor, så vi kan finne stedet.", - "form_title": "Meld fra om trafikkfare", - "heading": "Gjør trafikken tryggere der du bor", - "hints": { - "epost": "navn@epost.no", - "hva": "Dårlig sikt i krysset, mange kjører fort", - "hvor": "Krysset ved Tomterveien og Kirkeveien" - }, - "icon": "alert-triangle", - "labels": { - "epost": "E-post", - "hva": "Hva har du sett?", - "hvor": "Hvor er det?" - }, - "road_description": "Trafikkomiteen tar saken opp med kommunen eller den som eier veien, og følger den til den er ordnet eller avvist.", - "road_icon": "route", - "road_title": "Hva skjer videre", - "who_description": "Trafikkomiteen leser det du sender inn, og kan svare deg på e-posten du oppgir.", - "who_icon": "car", - "who_title": "Hvem ser dette" - } - }, - "question": "Har du sett noe i nabolaget som bør meldes fra om?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/14-questions_naboer_index.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/14-questions_naboer_index.yaml.md deleted file mode 100644 index 9b35b8c..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/14-questions_naboer_index.yaml.md +++ /dev/null @@ -1,222 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/naboer/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "dele-utstyr": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "har_eller_trenger": "", - "hva": "", - "navn": "" - }, - "icon": "", - "labels": { - "email": "", - "har_eller_trenger": "", - "hva": "", - "navn": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "kan-hjelpe": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "kan": "", - "navn": "", - "telefon": "" - }, - "icon": "", - "labels": { - "email": "", - "kan": "", - "navn": "", - "telefon": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "trenger-hjelp": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "adresse": "", - "email": "", - "hva": "", - "navn": "", - "telefon": "" - }, - "icon": "", - "labels": { - "adresse": "", - "email": "", - "hva": "", - "navn": "", - "telefon": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Naboer stiller opp for hverandre – med snømåking, handling, skyss eller utlån av det du har for mye av.", - "needs": { - "dele-utstyr": { - "button": "Legg ut", - "description": "Har du noe naboene kan låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre i Tomter det.", - "encouragement": "Oppslaget legges ut for naboene med det samme.", - "form_description": "Fortell kort hva det gjelder, så tar vi det videre.", - "form_title": "Lån eller utlån", - "heading": "Lån ut eller lån det naboene trenger", - "hints": { - "email": "ola@eksempel.no", - "har_eller_trenger": "Har til utlån", - "hva": "Hengerlaget, står ledig i helgene", - "navn": "Ola Nordmann" - }, - "icon": "package", - "labels": { - "email": "E-post", - "har_eller_trenger": "Har du, eller trenger du?", - "hva": "Hva gjelder det?", - "navn": "Navn" - }, - "road_description": "Styret legger oppslaget ut for naboene. Når det du lånte bort er levert tilbake, eller du har fått låne det du trengte, tar vi det ned igjen.", - "road_icon": "list", - "road_title": "Slik går det videre", - "who_description": "Styret i Tomter Vel legger ut oppslaget, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "users", - "who_title": "Hvem leser dette" - }, - "kan-hjelpe": { - "button": "Meld deg", - "description": "Meld deg som nabohjelp, så blir du spurt når noen i nærheten trenger en hånd.", - "encouragement": "Du blir bare spurt når det faktisk passer, og kan trekke deg når som helst.", - "form_description": "Si litt om hva du kan bidra med, så finner vi ut når det passer.", - "form_title": "Meld deg som nabohjelp", - "heading": "Bli spurt når en nabo trenger en hånd", - "hints": { - "email": "kari@eksempel.no", - "kan": "Måke snø, handle, kjøre noen et sted", - "navn": "Kari Nordmann", - "telefon": "912 34 567" - }, - "icon": "hand-helping", - "labels": { - "email": "E-post", - "kan": "Hva kan du hjelpe med?", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Du blir registrert som nabohjelp, og nabohjelpkomiteen tar kontakt når det dukker opp noe som passer deg. Vil du trekke deg, er det bare å si fra.", - "road_icon": "user-check", - "road_title": "Slik går det videre", - "who_description": "Nabohjelp-komiteen holder oversikten, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "heart-handshake", - "who_title": "Hvem leser dette" - }, - "trenger-hjelp": { - "button": "Be om hjelp", - "description": "Får du ikke til snømåking, handling eller en skyss akkurat nå? Si fra, så finner vi en nabo som kan stille opp.", - "encouragement": "Nabohjelpen ser på dette raskt og finner noen som kan hjelpe.", - "form_description": "Skriv hva du trenger hjelp med og når, så finner vi en nabo som passer.", - "form_title": "Be om nabohjelp", - "heading": "Få en nabo til å stille opp", - "hints": { - "adresse": "Tomterveien 12", - "email": "kari@eksempel.no", - "hva": "Trenger hjelp til å måke inngangspartiet", - "navn": "Kari Nordmann", - "telefon": "912 34 567" - }, - "icon": "hand-helping", - "labels": { - "adresse": "Adresse", - "email": "E-post", - "hva": "Hva trenger du hjelp til?", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Nabohjelpen finner en nabo som kan stille opp, og setter dere i kontakt. Får dere ikke løst det, gir vi beskjed om det også.", - "road_icon": "handshake", - "road_title": "Slik går det videre", - "who_description": "Nabohjelp-komiteen leser dette og finner en nabo, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "heart-handshake", - "who_title": "Hvem leser dette" - } - }, - "question": "Trenger du en hånd, eller kan du stille opp for en nabo?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/15-questions_nabohjelp_index.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/15-questions_nabohjelp_index.yaml.md deleted file mode 100644 index 9a9efbf..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/15-questions_nabohjelp_index.yaml.md +++ /dev/null @@ -1,96 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/nabohjelp/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "hjelpebehov": { - "description": "", - "heading": "", - "moves": { - "formidlet->ikke_lost": "ikke_lost>", - "formidlet->ordnet": "ordnet>", - "open->formidlet": "formidlet>", - "open->ikke_lost": "ikke_lost>" - } - }, - "hjelpere": { - "description": "", - "heading": "", - "moves": { - "open->registrert": "registrert>", - "open->trukket": "trukket>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "hjelpebehov": { - "description": "Her ser du hvem som trenger en hånd, og kan sette dem i kontakt med en nabo som stiller opp.", - "heading": "Naboer som trenger en hånd", - "moves": { - "formidlet->ikke_lost": "Fant ingen løsning", - "formidlet->ordnet": "Marker som ordnet", - "open->formidlet": "Sett i kontakt med nabo", - "open->ikke_lost": "Fant ingen løsning" - } - }, - "hjelpere": { - "description": "Her ser du naboene som har sagt de kan stille opp, klare til å spørres når noen trenger hjelp.", - "heading": "Naboer som kan stille opp", - "moves": { - "open->registrert": "Registrer som hjelper", - "open->trukket": "Fjern fra listen" - } - } - }, - "confirm": "Lagre", - "description": "Sett naboer som trenger en hånd i kontakt med naboer som kan gi en.", - "links": {}, - "question": "Hvem trenger hjelp, og hvem kan gi en?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/16-questions_received_anleggsfeil.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/16-questions_received_anleggsfeil.yaml.md deleted file mode 100644 index e842006..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/16-questions_received_anleggsfeil.yaml.md +++ /dev/null @@ -1,58 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/anleggsfeil.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Til forsiden", - "description": "Meldingen din om skaden er sendt til lekeplasskomiteen.", - "next_description": "Komiteen ser på meldingen og avtaler hvem som tar tak i det.", - "next_heading": "Komiteen ser på saken", - "question": "Hva skjer med meldingen min nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/17-questions_received_bli-medlem.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/17-questions_received_bli-medlem.yaml.md deleted file mode 100644 index 78a9068..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/17-questions_received_bli-medlem.yaml.md +++ /dev/null @@ -1,58 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/bli-medlem.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Til forsiden", - "description": "Takk for at du melder deg inn i Tomter Vel. Vi har mottatt søknaden din.", - "next_description": "Kasserer går gjennom innmeldinger fortløpende og sender deg kontingenten på e-post.", - "next_heading": "Du hører fra kasserer", - "question": "Hva skjer nå som jeg har meldt meg inn?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/18-questions_received_dele-utstyr.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/18-questions_received_dele-utstyr.yaml.md deleted file mode 100644 index 654cba5..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/18-questions_received_dele-utstyr.yaml.md +++ /dev/null @@ -1,58 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/dele-utstyr.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake til forsiden", - "description": "Takk for at du la ut noe til utlån eller ba om å låne noe. Styret legger det ut så naboene kan se det.", - "next_description": "Styret ser gjennom oppslaget og legger det ut på nabolagssiden. Tar det litt tid, kan de ta kontakt for å sjekke noe før det legges ut.", - "next_heading": "Oppslaget legges ut for naboene", - "question": "Hva skjer nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/19-questions_received_endre-medlemskap.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/19-questions_received_endre-medlemskap.yaml.md deleted file mode 100644 index 9ee09ea..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/19-questions_received_endre-medlemskap.yaml.md +++ /dev/null @@ -1,50 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/endre-medlemskap.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{"back": "Tilbake til forsiden", "description": "Meldingen om endringen er sendt til kassereren.", "next_description": "Kassereren oppdaterer medlemslista og bekrefter på e-post at det er gjort.", "next_heading": "Opplysningene blir oppdatert", "question": "Er endringen registrert?"} diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/20-questions_received_hjelpe-til.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/20-questions_received_hjelpe-til.yaml.md deleted file mode 100644 index 1876580..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/20-questions_received_hjelpe-til.yaml.md +++ /dev/null @@ -1,56 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/hjelpe-til.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Tilbake til forsiden", - "description": "Takk for at du vil bidra! Arrangementskomiteen har fått beskjed og finner ut hvor du passer best inn.", - "next_description": "Noen fra arrangementskomiteen tar kontakt før neste arrangement eller dugnad, og avtaler nærmere hva du kan hjelpe til med.", - "next_heading": "Komiteen tar kontakt med deg", - "question": "Hva skjer nå som jeg har meldt meg?" -} diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/21-questions_received_horingsinnspill.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/21-questions_received_horingsinnspill.yaml.md deleted file mode 100644 index e88e29e..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/21-questions_received_horingsinnspill.yaml.md +++ /dev/null @@ -1,58 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/horingsinnspill.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake til forsiden", - "description": "Innspillet ditt er sendt til styret i Tomter Vel.", - "next_description": "Styret samler innspill fra beboerne og tar dem med når vi svarer kommunen i høringen.", - "next_heading": "Innspillet blir del av høringssvaret", - "question": "Hva skjer med innspillet mitt nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/22-questions_received_kan-hjelpe.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/22-questions_received_kan-hjelpe.yaml.md deleted file mode 100644 index 2453c29..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/22-questions_received_kan-hjelpe.yaml.md +++ /dev/null @@ -1,58 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/kan-hjelpe.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake til forsiden", - "description": "Takk for at du stiller opp som nabohjelp. Vi har notert deg, så vet vi om deg når noen trenger en hånd.", - "next_description": "Vi tar kontakt når det dukker opp noe som passer for deg – det kan gå litt tid før det skjer.", - "next_heading": "Vi kontakter deg ved behov", - "question": "Hva skjer nå som jeg har meldt meg som nabohjelp?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/23-questions_received_komite.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/23-questions_received_komite.yaml.md deleted file mode 100644 index 846fda3..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/23-questions_received_komite.yaml.md +++ /dev/null @@ -1,58 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/komite.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Til forsiden", - "description": "Du har sagt at du vil sitte i en komité. Styret tar kontakt om plass i den komiteen som passer deg.", - "next_description": "Styret ser på ønsket ditt og svarer så snart de har funnet en plass, eller kan si at komiteen er full akkurat nå.", - "next_heading": "Styret finner deg en plass", - "question": "Hva skjer nå som jeg har meldt interesse for en komité?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/24-questions_received_trafikkfare.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/24-questions_received_trafikkfare.yaml.md deleted file mode 100644 index 7957e4c..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/24-questions_received_trafikkfare.yaml.md +++ /dev/null @@ -1,58 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/trafikkfare.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake til forsiden", - "description": "Meldingen om trafikkfaren er sendt til trafikkomiteen.", - "next_description": "Trafikkomiteen ser på meldingen og tar den videre med kommunen eller den som eier veien, om det trengs.", - "next_heading": "Trafikkomiteen tar det videre", - "question": "Hva skjer nå med det jeg meldte fra om?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/25-questions_received_trenger-hjelp.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/25-questions_received_trenger-hjelp.yaml.md deleted file mode 100644 index 67b0d3f..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/25-questions_received_trenger-hjelp.yaml.md +++ /dev/null @@ -1,58 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/trenger-hjelp.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake til forsiden", - "description": "Meldingen din er sendt til nabohjelpen. Vi finner en nabo som kan stille opp.", - "next_description": "Nabohjelpen ser på henvendelser fortløpende og tar kontakt så snart noen kan hjelpe.", - "next_heading": "Vi finner noen som kan hjelpe deg", - "question": "Hva skjer nå med det jeg trenger hjelp til?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/26-questions_styret_index.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/26-questions_styret_index.yaml.md deleted file mode 100644 index 8010c33..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/26-questions_styret_index.yaml.md +++ /dev/null @@ -1,118 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/styret/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "innspill": { - "description": "", - "heading": "", - "moves": { - "open->ikke_tatt_med": "ikke_tatt_med>", - "open->tatt_med": "tatt_med>" - } - }, - "komitesoknader": { - "description": "", - "heading": "", - "moves": { - "open->avslatt": "avslatt>", - "open->plassert": "plassert>" - } - }, - "oppslag": { - "description": "", - "heading": "", - "moves": { - "open->lagt_ut": "lagt_ut>", - "open->tatt_ned": "tatt_ned>" - } - }, - "trafikkmeldinger": { - "description": "", - "heading": "", - "moves": {} - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "innspill": { - "description": "Se hva naboer mener om saker kommunen har på høring, og ta det med i høringssvaret.", - "heading": "Innspill til høringssvar", - "moves": { - "open->ikke_tatt_med": "Ikke ta med", - "open->tatt_med": "Ta med i svaret" - } - }, - "komitesoknader": { - "description": "Se hvem som vil sitte i en komité, og sett dem i en som passer.", - "heading": "Søknader til komiteene", - "moves": { - "open->avslatt": "Avslå søknaden", - "open->plassert": "Plasser i komité" - } - }, - "oppslag": { - "description": "Se hva naboer vil dele ut eller låne, og legg oppslaget ut for alle.", - "heading": "Oppslag om å dele utstyr", - "moves": { - "open->lagt_ut": "Legg ut oppslag", - "open->tatt_ned": "Ta ned oppslag" - } - }, - "trafikkmeldinger": { - "description": "Se hva naboer har meldt om farlige steder i trafikken.", - "heading": "Meldinger om trafikkfarer", - "moves": {} - } - }, - "confirm": "Lagre", - "description": "Her har styret oversikt over høringsinnspill, komitésøknader, oppslag og trafikkmeldinger fra naboene.", - "links": {}, - "question": "Hva venter på styret akkurat nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/27-questions_trafikkomite_index.yaml.md b/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/27-questions_trafikkomite_index.yaml.md deleted file mode 100644 index e138f8a..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/llm/27-questions_trafikkomite_index.yaml.md +++ /dev/null @@ -1,80 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/trafikkomite/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "trafikkmeldinger": { - "description": "", - "heading": "", - "moves": { - "open->avvist": "avvist>", - "open->tatt_opp": "tatt_opp>", - "tatt_opp->avvist": "avvist>", - "tatt_opp->ordnet": "ordnet>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "trafikkmeldinger": { - "description": "Meldinger fra naboer om farlige steder i trafikken, klare til å tas videre.", - "heading": "Trafikkfarer meldt av naboer", - "moves": { - "open->avvist": "Avvis meldingen", - "open->tatt_opp": "Ta opp med kommunen", - "tatt_opp->avvist": "Avvis saken", - "tatt_opp->ordnet": "Meld som ordnet" - } - } - }, - "confirm": "Lagre", - "description": "Her følger trafikkomiteen opp meldinger om farlige steder i trafikken.", - "links": {}, - "question": "Hvilke trafikkfarer må vi følge opp nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/model.json b/vendor/trainer/runs/tomtervel-cards-2026-09-23/model.json deleted file mode 100644 index 22bdc8f..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/model.json +++ /dev/null @@ -1,1467 +0,0 @@ -{ - "buckets": { - "anleggsfeil": { - "desks": [ - { - "group": "lekeplasskomite", - "moves": [ - { - "from": "open", - "label": "Ta tak i saken", - "to": "tatt_tak_i" - }, - { - "from": "tatt_tak_i", - "label": "Merk som utbedret", - "to": "utbedret" - } - ], - "page": "/lekeplasskomite" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "tatt_tak_i" - ], - "tatt_tak_i": [ - "utbedret" - ] - } - }, - "frivillige": { - "desks": [ - { - "group": "arrangementskomite", - "moves": [ - { - "from": "kontaktet", - "label": "Sett opp på oppgave", - "to": "satt_opp" - }, - { - "from": "kontaktet", - "label": "Meld takket nei", - "to": "takket_nei" - }, - { - "from": "open", - "label": "Merk som kontaktet", - "to": "kontaktet" - }, - { - "from": "open", - "label": "Meld takket nei", - "to": "takket_nei" - } - ], - "page": "/arrangementskomite" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "kontaktet": [ - "satt_opp", - "takket_nei" - ], - "open": [ - "kontaktet", - "takket_nei" - ] - } - }, - "hjelpebehov": { - "desks": [ - { - "group": "nabohjelp", - "moves": [ - { - "from": "formidlet", - "label": "Marker som ordnet", - "to": "ordnet" - }, - { - "from": "formidlet", - "label": "Fant ingen løsning", - "to": "ikke_lost" - }, - { - "from": "open", - "label": "Sett i kontakt med nabo", - "to": "formidlet" - }, - { - "from": "open", - "label": "Fant ingen løsning", - "to": "ikke_lost" - } - ], - "page": "/nabohjelp" - } - ], - "initial": "open", - "self_moves": [ - "ordnet" - ], - "transitions": { - "formidlet": [ - "ordnet", - "ikke_lost" - ], - "open": [ - "formidlet", - "ikke_lost" - ] - } - }, - "hjelpere": { - "desks": [ - { - "group": "nabohjelp", - "moves": [ - { - "from": "open", - "label": "Registrer som hjelper", - "to": "registrert" - }, - { - "from": "open", - "label": "Fjern fra listen", - "to": "trukket" - } - ], - "page": "/nabohjelp" - } - ], - "initial": "open", - "self_moves": [ - "trukket" - ], - "transitions": { - "open": [ - "registrert", - "trukket" - ] - } - }, - "husstander": { - "desks": [ - { - "group": "kasserer", - "moves": [ - { - "from": "open", - "label": "Merk som betalt", - "to": "betalt" - }, - { - "from": "open", - "label": "Meld ut", - "to": "utmeldt" - } - ], - "page": "/kasserer" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "betalt", - "utmeldt" - ] - } - }, - "innspill": { - "desks": [ - { - "group": "styret", - "moves": [ - { - "from": "open", - "label": "Ta med i svaret", - "to": "tatt_med" - }, - { - "from": "open", - "label": "Ikke ta med", - "to": "ikke_tatt_med" - } - ], - "page": "/styret" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "tatt_med", - "ikke_tatt_med" - ] - } - }, - "komitesoknader": { - "desks": [ - { - "group": "styret", - "moves": [ - { - "from": "open", - "label": "Plasser i komité", - "to": "plassert" - }, - { - "from": "open", - "label": "Avslå søknaden", - "to": "avslatt" - } - ], - "page": "/styret" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "plassert", - "avslatt" - ] - } - }, - "medlemsendringer": { - "desks": [ - { - "group": "kasserer", - "moves": [ - { - "from": "open", - "label": "Merk som oppdatert", - "to": "oppdatert" - } - ], - "page": "/kasserer" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "oppdatert" - ] - } - }, - "oppslag": { - "desks": [ - { - "group": "styret", - "moves": [ - { - "from": "open", - "label": "Legg ut oppslag", - "to": "lagt_ut" - }, - { - "from": "open", - "label": "Ta ned oppslag", - "to": "tatt_ned" - } - ], - "page": "/styret" - } - ], - "initial": "open", - "self_moves": [ - "tatt_ned" - ], - "transitions": { - "open": [ - "lagt_ut", - "tatt_ned" - ] - } - }, - "trafikkmeldinger": { - "desks": [ - { - "group": "styret", - "moves": [], - "page": "/styret" - }, - { - "group": "trafikkomite", - "moves": [ - { - "from": "open", - "label": "Ta opp med kommunen", - "to": "tatt_opp" - }, - { - "from": "open", - "label": "Avvis meldingen", - "to": "avvist" - }, - { - "from": "tatt_opp", - "label": "Meld som ordnet", - "to": "ordnet" - }, - { - "from": "tatt_opp", - "label": "Avvis saken", - "to": "avvist" - } - ], - "page": "/trafikkomite" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "tatt_opp", - "avvist" - ], - "tatt_opp": [ - "ordnet", - "avvist" - ] - } - }, - "utlegg": { - "desks": [ - { - "group": "kasserer", - "moves": [ - { - "from": "godkjent", - "label": "Merk som utbetalt", - "to": "utbetalt" - }, - { - "from": "godkjent", - "label": "Avvis likevel", - "to": "avvist" - }, - { - "from": "open", - "label": "Godkjenn utlegget", - "to": "godkjent" - }, - { - "from": "open", - "label": "Avvis utlegget", - "to": "avvist" - } - ], - "page": "/kasserer" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "godkjent": [ - "utbetalt", - "avvist" - ], - "open": [ - "godkjent", - "avvist" - ] - } - } - }, - "needs": [ - { - "done_when": [ - "betalt", - "utmeldt" - ], - "enters_as": null, - "handled_by": "kasserer", - "id": "bli-medlem", - "lands_in": "husstander", - "steps": [ - { - "alternative": "Bli medlem eller endre opplysningene dine", - "expect": [ - "Bli medlem eller endre opplysningene dine" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.", - "name": "Bli medlem eller endre opplysningene dine" - }, - { - "description": "Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.", - "name": "Meld fra om noe som ikke er som det skal" - }, - { - "description": "Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg.", - "name": "Si din mening eller gi en hånd" - }, - { - "description": "Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.", - "name": "Få hjelp fra naboer, eller gi en hånd" - } - ], - "page": "/", - "question": "Hva vil du gjøre i dag?" - }, - { - "alternative": "Bli medlem av velet", - "expect": [ - "Bli medlem av velet" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Adresse", - "name": "adresse", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "E-post", - "name": "epost", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Telefon", - "name": "telefon", - "optional": true, - "options": [], - "type": "tel" - } - ], - "options": [ - { - "description": "Meld deg inn i Tomter Vel, så tar vi vare på nabolaget sammen. Du får en giro på kontingenten når vi har registrert deg.", - "name": "Bli medlem av velet" - }, - { - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Si fra her, så retter vi opp i listene våre.", - "name": "Oppdater opplysningene dine" - } - ], - "page": "/medlem", - "question": "Vil du bli medlem, eller endre opplysningene dine?" - } - ], - "success": [ - "betalt" - ], - "wants": "å bli medlem og få betalt kontingenten", - "who": "en husstand i Tomter" - }, - { - "done_when": [ - "oppdatert" - ], - "enters_as": null, - "handled_by": "kasserer", - "id": "endre-medlemskap", - "lands_in": "medlemsendringer", - "steps": [ - { - "alternative": "Bli medlem eller endre opplysningene dine", - "expect": [ - "Bli medlem eller endre opplysningene dine" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.", - "name": "Bli medlem eller endre opplysningene dine" - }, - { - "description": "Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.", - "name": "Meld fra om noe som ikke er som det skal" - }, - { - "description": "Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg.", - "name": "Si din mening eller gi en hånd" - }, - { - "description": "Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.", - "name": "Få hjelp fra naboer, eller gi en hånd" - } - ], - "page": "/", - "question": "Hva vil du gjøre i dag?" - }, - { - "alternative": "Oppdater opplysningene dine", - "expect": [ - "Oppdater opplysningene dine" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Adresse", - "name": "adresse", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hva vil du endre?", - "name": "hva_er_nytt", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Meld deg inn i Tomter Vel, så tar vi vare på nabolaget sammen. Du får en giro på kontingenten når vi har registrert deg.", - "name": "Bli medlem av velet" - }, - { - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Si fra her, så retter vi opp i listene våre.", - "name": "Oppdater opplysningene dine" - } - ], - "page": "/medlem", - "question": "Vil du bli medlem, eller endre opplysningene dine?" - } - ], - "success": [ - "oppdatert" - ], - "wants": "at velet har riktige opplysninger om dem", - "who": "et medlem som har flyttet, byttet e-post eller vil melde seg ut" - }, - { - "done_when": [ - "ordnet", - "avvist" - ], - "enters_as": null, - "handled_by": "trafikkomite", - "id": "trafikkfare", - "lands_in": "trafikkmeldinger", - "steps": [ - { - "alternative": "Meld fra om noe som ikke er som det skal", - "expect": [ - "Meld fra om noe som ikke er som det skal" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.", - "name": "Bli medlem eller endre opplysningene dine" - }, - { - "description": "Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.", - "name": "Meld fra om noe som ikke er som det skal" - }, - { - "description": "Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg.", - "name": "Si din mening eller gi en hånd" - }, - { - "description": "Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.", - "name": "Få hjelp fra naboer, eller gi en hånd" - } - ], - "page": "/", - "question": "Hva vil du gjøre i dag?" - }, - { - "alternative": "Gjør trafikken tryggere der du bor", - "expect": [ - "Gjør trafikken tryggere der du bor" - ], - "fields": [ - { - "label": "Hvor er det?", - "name": "hvor", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hva har du sett?", - "name": "hva", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "E-post", - "name": "epost", - "optional": true, - "options": [], - "type": "email" - } - ], - "options": [ - { - "description": "Har du sett et farlig sted i trafikken, som dårlig sikt eller en vei uten fortau? Fortell oss om det, så tar vi det videre med kommunen.", - "name": "Gjør trafikken tryggere der du bor" - }, - { - "description": "Er noe på lekeplassen eller stien ødelagt eller farlig? Fortell oss hvor og hva, så tar lekeplasskomiteen tak i det.", - "name": "Få fikset noe som er ødelagt" - } - ], - "page": "/melde-fra", - "question": "Har du sett noe i nabolaget som bør meldes fra om?" - } - ], - "success": [ - "ordnet" - ], - "wants": "at velet tar det opp med kommunen eller den som eier veien", - "who": "en som har sett et farlig sted i trafikken" - }, - { - "done_when": [ - "utbedret" - ], - "enters_as": null, - "handled_by": "lekeplasskomite", - "id": "anleggsfeil", - "lands_in": "anleggsfeil", - "steps": [ - { - "alternative": "Meld fra om noe som ikke er som det skal", - "expect": [ - "Meld fra om noe som ikke er som det skal" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.", - "name": "Bli medlem eller endre opplysningene dine" - }, - { - "description": "Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.", - "name": "Meld fra om noe som ikke er som det skal" - }, - { - "description": "Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg.", - "name": "Si din mening eller gi en hånd" - }, - { - "description": "Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.", - "name": "Få hjelp fra naboer, eller gi en hånd" - } - ], - "page": "/", - "question": "Hva vil du gjøre i dag?" - }, - { - "alternative": "Få fikset noe som er ødelagt", - "expect": [ - "Få fikset noe som er ødelagt" - ], - "fields": [ - { - "label": "Hvor er det?", - "name": "hvor", - "optional": false, - "options": [ - "Lekeplassen", - "Elvestien", - "Skøytebanen", - "Et annet sted" - ], - "type": "select" - }, - { - "label": "Hva har du sett?", - "name": "hva", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Har du sett et farlig sted i trafikken, som dårlig sikt eller en vei uten fortau? Fortell oss om det, så tar vi det videre med kommunen.", - "name": "Gjør trafikken tryggere der du bor" - }, - { - "description": "Er noe på lekeplassen eller stien ødelagt eller farlig? Fortell oss hvor og hva, så tar lekeplasskomiteen tak i det.", - "name": "Få fikset noe som er ødelagt" - } - ], - "page": "/melde-fra", - "question": "Har du sett noe i nabolaget som bør meldes fra om?" - } - ], - "success": [ - "utbedret" - ], - "wants": "at det blir fikset før noen skader seg", - "who": "en som ser at noe på lekeplassen eller stien er ødelagt" - }, - { - "done_when": [ - "tatt_med", - "ikke_tatt_med" - ], - "enters_as": null, - "handled_by": "styret", - "id": "horingsinnspill", - "lands_in": "innspill", - "steps": [ - { - "alternative": "Si din mening eller gi en hånd", - "expect": [ - "Si din mening eller gi en hånd" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.", - "name": "Bli medlem eller endre opplysningene dine" - }, - { - "description": "Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.", - "name": "Meld fra om noe som ikke er som det skal" - }, - { - "description": "Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg.", - "name": "Si din mening eller gi en hånd" - }, - { - "description": "Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.", - "name": "Få hjelp fra naboer, eller gi en hånd" - } - ], - "page": "/", - "question": "Hva vil du gjøre i dag?" - }, - { - "alternative": "Få din mening med i velets høringssvar", - "expect": [ - "Få din mening med i velets høringssvar" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hvilken sak gjelder det?", - "name": "sak", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hva mener du?", - "name": "innspill", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Har kommunen en sak på høring du mener noe om? Send det til oss, så tar vi det med i vårt svar.", - "name": "Få din mening med i velets høringssvar" - }, - { - "description": "Vi trenger folk på 17. mai, dugnader og andre arrangementer i løpet av året.", - "name": "Bli med på et arrangement eller en dugnad" - }, - { - "description": "Velet drives av sju komiteer på fritida. Er det noe du brenner for, er det plass til deg.", - "name": "Få en plass i komiteen du brenner for" - } - ], - "page": "/bidra", - "question": "Hvordan vil du bidra?" - } - ], - "success": [ - "tatt_med" - ], - "wants": "at velet tar det med i sitt svar", - "who": "en beboer som har en mening om en sak kommunen har på høring" - }, - { - "done_when": [ - "satt_opp", - "takket_nei" - ], - "enters_as": null, - "handled_by": "arrangementskomite", - "id": "hjelpe-til", - "lands_in": "frivillige", - "steps": [ - { - "alternative": "Si din mening eller gi en hånd", - "expect": [ - "Si din mening eller gi en hånd" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.", - "name": "Bli medlem eller endre opplysningene dine" - }, - { - "description": "Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.", - "name": "Meld fra om noe som ikke er som det skal" - }, - { - "description": "Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg.", - "name": "Si din mening eller gi en hånd" - }, - { - "description": "Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.", - "name": "Få hjelp fra naboer, eller gi en hånd" - } - ], - "page": "/", - "question": "Hva vil du gjøre i dag?" - }, - { - "alternative": "Bli med på et arrangement eller en dugnad", - "expect": [ - "Bli med på et arrangement eller en dugnad" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Telefon", - "name": "telefon", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "Hva vil du hjelpe til med?", - "name": "hva", - "optional": false, - "options": [ - "17. mai", - "Juletregranstenning", - "Skøytedag", - "Dugnad på elvestien", - "Det som trengs" - ], - "type": "select" - } - ], - "options": [ - { - "description": "Har kommunen en sak på høring du mener noe om? Send det til oss, så tar vi det med i vårt svar.", - "name": "Få din mening med i velets høringssvar" - }, - { - "description": "Vi trenger folk på 17. mai, dugnader og andre arrangementer i løpet av året.", - "name": "Bli med på et arrangement eller en dugnad" - }, - { - "description": "Velet drives av sju komiteer på fritida. Er det noe du brenner for, er det plass til deg.", - "name": "Få en plass i komiteen du brenner for" - } - ], - "page": "/bidra", - "question": "Hvordan vil du bidra?" - } - ], - "success": [ - "satt_opp" - ], - "wants": "å bli satt opp på noe som passer dem", - "who": "en som vil hjelpe til på et arrangement eller en dugnad" - }, - { - "done_when": [ - "plassert", - "avslatt" - ], - "enters_as": null, - "handled_by": "styret", - "id": "komite", - "lands_in": "komitesoknader", - "steps": [ - { - "alternative": "Si din mening eller gi en hånd", - "expect": [ - "Si din mening eller gi en hånd" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.", - "name": "Bli medlem eller endre opplysningene dine" - }, - { - "description": "Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.", - "name": "Meld fra om noe som ikke er som det skal" - }, - { - "description": "Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg.", - "name": "Si din mening eller gi en hånd" - }, - { - "description": "Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.", - "name": "Få hjelp fra naboer, eller gi en hånd" - } - ], - "page": "/", - "question": "Hva vil du gjøre i dag?" - }, - { - "alternative": "Få en plass i komiteen du brenner for", - "expect": [ - "Få en plass i komiteen du brenner for" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "E-post", - "name": "epost", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Hvilken komité?", - "name": "komite", - "optional": false, - "options": [ - "Arrangementer", - "Elvesti", - "Høringsinstans", - "Leke- og møteplasser", - "Miljøgate", - "Pendlerforhold", - "Trafikkforhold" - ], - "type": "select" - } - ], - "options": [ - { - "description": "Har kommunen en sak på høring du mener noe om? Send det til oss, så tar vi det med i vårt svar.", - "name": "Få din mening med i velets høringssvar" - }, - { - "description": "Vi trenger folk på 17. mai, dugnader og andre arrangementer i løpet av året.", - "name": "Bli med på et arrangement eller en dugnad" - }, - { - "description": "Velet drives av sju komiteer på fritida. Er det noe du brenner for, er det plass til deg.", - "name": "Få en plass i komiteen du brenner for" - } - ], - "page": "/bidra", - "question": "Hvordan vil du bidra?" - } - ], - "success": [ - "plassert" - ], - "wants": "en plass i den komiteen som driver med det de bryr seg om", - "who": "en som vil sitte i en komité" - }, - { - "done_when": [ - "ordnet", - "ikke_lost" - ], - "enters_as": null, - "handled_by": "nabohjelp", - "id": "trenger-hjelp", - "lands_in": "hjelpebehov", - "steps": [ - { - "alternative": "Få hjelp fra naboer, eller gi en hånd", - "expect": [ - "Få hjelp fra naboer, eller gi en hånd" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.", - "name": "Bli medlem eller endre opplysningene dine" - }, - { - "description": "Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.", - "name": "Meld fra om noe som ikke er som det skal" - }, - { - "description": "Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg.", - "name": "Si din mening eller gi en hånd" - }, - { - "description": "Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.", - "name": "Få hjelp fra naboer, eller gi en hånd" - } - ], - "page": "/", - "question": "Hva vil du gjøre i dag?" - }, - { - "alternative": "Få en nabo til å stille opp", - "expect": [ - "Få en nabo til å stille opp" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "E-post", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Adresse", - "name": "adresse", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hva trenger du hjelp til?", - "name": "hva", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "Telefon", - "name": "telefon", - "optional": true, - "options": [], - "type": "tel" - } - ], - "options": [ - { - "description": "Får du ikke til snømåking, handling eller en skyss akkurat nå? Si fra, så finner vi en nabo som kan stille opp.", - "name": "Få en nabo til å stille opp" - }, - { - "description": "Meld deg som nabohjelp, så blir du spurt når noen i nærheten trenger en hånd.", - "name": "Bli spurt når en nabo trenger en hånd" - }, - { - "description": "Har du noe naboene kan låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre i Tomter det.", - "name": "Lån ut eller lån det naboene trenger" - } - ], - "page": "/naboer", - "question": "Trenger du en hånd, eller kan du stille opp for en nabo?" - } - ], - "success": [ - "ordnet" - ], - "wants": "at en nabo stiller opp", - "who": "en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss" - }, - { - "done_when": [ - "registrert", - "trukket" - ], - "enters_as": null, - "handled_by": "nabohjelp", - "id": "kan-hjelpe", - "lands_in": "hjelpere", - "steps": [ - { - "alternative": "Få hjelp fra naboer, eller gi en hånd", - "expect": [ - "Få hjelp fra naboer, eller gi en hånd" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.", - "name": "Bli medlem eller endre opplysningene dine" - }, - { - "description": "Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.", - "name": "Meld fra om noe som ikke er som det skal" - }, - { - "description": "Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg.", - "name": "Si din mening eller gi en hånd" - }, - { - "description": "Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.", - "name": "Få hjelp fra naboer, eller gi en hånd" - } - ], - "page": "/", - "question": "Hva vil du gjøre i dag?" - }, - { - "alternative": "Bli spurt når en nabo trenger en hånd", - "expect": [ - "Bli spurt når en nabo trenger en hånd" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "E-post", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Telefon", - "name": "telefon", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "Hva kan du hjelpe med?", - "name": "kan", - "optional": false, - "options": [ - "Snømåking", - "Handling", - "Kjøring", - "Småfiks i huset", - "En prat og litt selskap", - "Det som trengs" - ], - "type": "select" - } - ], - "options": [ - { - "description": "Får du ikke til snømåking, handling eller en skyss akkurat nå? Si fra, så finner vi en nabo som kan stille opp.", - "name": "Få en nabo til å stille opp" - }, - { - "description": "Meld deg som nabohjelp, så blir du spurt når noen i nærheten trenger en hånd.", - "name": "Bli spurt når en nabo trenger en hånd" - }, - { - "description": "Har du noe naboene kan låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre i Tomter det.", - "name": "Lån ut eller lån det naboene trenger" - } - ], - "page": "/naboer", - "question": "Trenger du en hånd, eller kan du stille opp for en nabo?" - } - ], - "success": [ - "registrert" - ], - "wants": "å bli spurt når det passer", - "who": "en nabo som kan stille opp når noen trenger det" - }, - { - "done_when": [ - "lagt_ut", - "tatt_ned" - ], - "enters_as": null, - "handled_by": "styret", - "id": "dele-utstyr", - "lands_in": "oppslag", - "steps": [ - { - "alternative": "Få hjelp fra naboer, eller gi en hånd", - "expect": [ - "Få hjelp fra naboer, eller gi en hånd" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.", - "name": "Bli medlem eller endre opplysningene dine" - }, - { - "description": "Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.", - "name": "Meld fra om noe som ikke er som det skal" - }, - { - "description": "Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg.", - "name": "Si din mening eller gi en hånd" - }, - { - "description": "Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.", - "name": "Få hjelp fra naboer, eller gi en hånd" - } - ], - "page": "/", - "question": "Hva vil du gjøre i dag?" - }, - { - "alternative": "Lån ut eller lån det naboene trenger", - "expect": [ - "Lån ut eller lån det naboene trenger" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "E-post", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Har du, eller trenger du?", - "name": "har_eller_trenger", - "optional": false, - "options": [ - "Jeg har noe å låne ut", - "Jeg trenger å låne noe" - ], - "type": "select" - }, - { - "label": "Hva gjelder det?", - "name": "hva", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Får du ikke til snømåking, handling eller en skyss akkurat nå? Si fra, så finner vi en nabo som kan stille opp.", - "name": "Få en nabo til å stille opp" - }, - { - "description": "Meld deg som nabohjelp, så blir du spurt når noen i nærheten trenger en hånd.", - "name": "Bli spurt når en nabo trenger en hånd" - }, - { - "description": "Har du noe naboene kan låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre i Tomter det.", - "name": "Lån ut eller lån det naboene trenger" - } - ], - "page": "/naboer", - "question": "Trenger du en hånd, eller kan du stille opp for en nabo?" - } - ], - "success": [ - "lagt_ut" - ], - "wants": "et oppslag som naboene ser", - "who": "en nabo som har noe å låne ut, eller trenger å låne noe" - }, - { - "done_when": [ - "utbetalt", - "avvist" - ], - "enters_as": "komiteer", - "handled_by": "kasserer", - "id": "utlegg", - "lands_in": "utlegg", - "steps": [ - { - "alternative": "Få tilbake det du har lagt ut", - "expect": [ - "Få tilbake det du har lagt ut" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Beløp", - "name": "belop", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hva gjaldt det", - "name": "hva", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Har du lagt ut for noe til et arrangement, dugnad eller annet i regi av velet? Send inn så får du pengene tilbake.", - "name": "Få tilbake det du har lagt ut" - } - ], - "page": "/komiteer/utlegg", - "question": "Har du lagt ut penger for velet som du skal ha tilbake?" - } - ], - "success": [ - "utbetalt" - ], - "wants": "pengene tilbake", - "who": "en i en komité som har lagt ut for noe" - } - ], - "personas": [ - { - "id": "nyinnflyttet", - "need": "bli-medlem", - "text": "Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?" - }, - { - "id": "glemte-a-betale", - "need": "bli-medlem", - "text": "Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?" - }, - { - "id": "ny-epost", - "need": "endre-medlemskap", - "text": "Vi har byttet e-postadresse og får ikke lenger noe fra dere." - }, - { - "id": "flytter", - "need": "endre-medlemskap", - "text": "Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista." - }, - { - "id": "skolevei", - "need": "trafikkfare", - "text": "Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går." - }, - { - "id": "busslomme", - "need": "trafikkfare", - "text": "Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy." - }, - { - "id": "huske", - "need": "anleggsfeil", - "text": "Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt." - }, - { - "id": "bru", - "need": "anleggsfeil", - "text": "Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom." - }, - { - "id": "blokker", - "need": "horingsinnspill", - "text": "Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?" - }, - { - "id": "togtider", - "need": "horingsinnspill", - "text": "Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det." - }, - { - "id": "vafler", - "need": "hjelpe-til", - "text": "Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk." - }, - { - "id": "motorsag", - "need": "hjelpe-til", - "text": "Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad." - }, - { - "id": "pendler", - "need": "komite", - "text": "Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det." - }, - { - "id": "planlegger", - "need": "komite", - "text": "Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring." - }, - { - "id": "tilhenger", - "need": "dele-utstyr", - "text": "Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp." - }, - { - "id": "stige", - "need": "dele-utstyr", - "text": "Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?" - }, - { - "id": "snomaking", - "need": "trenger-hjelp", - "text": "Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?" - }, - { - "id": "nyoperert", - "need": "trenger-hjelp", - "text": "Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?" - }, - { - "id": "hjemmekontor", - "need": "kan-hjelpe", - "text": "Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv." - }, - { - "id": "pensjonert-elektriker", - "need": "kan-hjelpe", - "text": "Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting." - }, - { - "id": "kvittering", - "need": "utlegg", - "text": "Jeg kjøpte pølser og kakao til skøytedagen for 1 840 kroner, her er kvitteringa, vil ha det igjen." - } - ] -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/needs.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/needs.yaml deleted file mode 100644 index 9ffb3ed..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/needs.yaml +++ /dev/null @@ -1,265 +0,0 @@ -needs: -- done_when: - - betalt - - utmeldt - enters: / - handled_by: kasserer - id: bli-medlem - lands_in: husstander - max_fields: 3 - max_steps: 2 - stages: - - open - - betalt - - utmeldt - success: - - betalt - via: Bli medlem eller endre opplysningene dine - wants: å bli medlem og få betalt kontingenten - who: en husstand i Tomter -- done_when: - - oppdatert - enters: / - handled_by: kasserer - id: endre-medlemskap - lands_in: medlemsendringer - max_fields: 3 - max_steps: 2 - stages: - - open - - oppdatert - success: - - oppdatert - via: Bli medlem eller endre opplysningene dine - wants: at velet har riktige opplysninger om dem - who: et medlem som har flyttet, byttet e-post eller vil melde seg ut -- done_when: - - ordnet - - avvist - enters: / - handled_by: trafikkomite - id: trafikkfare - lands_in: trafikkmeldinger - max_fields: 2 - max_steps: 2 - stages: - - open - - tatt_opp - - ordnet - - avvist - success: - - ordnet - via: Meld fra om noe som ikke er som det skal - wants: at velet tar det opp med kommunen eller den som eier veien - who: en som har sett et farlig sted i trafikken -- done_when: - - utbedret - enters: / - handled_by: lekeplasskomite - id: anleggsfeil - lands_in: anleggsfeil - max_fields: 2 - max_steps: 2 - stages: - - open - - tatt_tak_i - - utbedret - success: - - utbedret - via: Meld fra om noe som ikke er som det skal - wants: at det blir fikset før noen skader seg - who: en som ser at noe på lekeplassen eller stien er ødelagt -- done_when: - - tatt_med - - ikke_tatt_med - enters: / - handled_by: styret - id: horingsinnspill - lands_in: innspill - max_fields: 3 - max_steps: 2 - stages: - - open - - tatt_med - - ikke_tatt_med - success: - - tatt_med - via: Si din mening eller gi en hånd - wants: at velet tar det med i sitt svar - who: en beboer som har en mening om en sak kommunen har på høring -- done_when: - - satt_opp - - takket_nei - enters: / - handled_by: arrangementskomite - id: hjelpe-til - lands_in: frivillige - max_fields: 3 - max_steps: 2 - stages: - - open - - kontaktet - - satt_opp - - takket_nei - success: - - satt_opp - via: Si din mening eller gi en hånd - wants: å bli satt opp på noe som passer dem - who: en som vil hjelpe til på et arrangement eller en dugnad -- done_when: - - plassert - - avslatt - enters: / - handled_by: styret - id: komite - lands_in: komitesoknader - max_fields: 3 - max_steps: 2 - stages: - - open - - plassert - - avslatt - success: - - plassert - via: Si din mening eller gi en hånd - wants: en plass i den komiteen som driver med det de bryr seg om - who: en som vil sitte i en komité -- done_when: - - ordnet - - ikke_lost - enters: / - handled_by: nabohjelp - id: trenger-hjelp - lands_in: hjelpebehov - max_fields: 4 - max_steps: 2 - stages: - - open - - formidlet - - ordnet - - ikke_lost - success: - - ordnet - via: Få hjelp fra naboer, eller gi en hånd - wants: at en nabo stiller opp - who: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss -- done_when: - - registrert - - trukket - enters: / - handled_by: nabohjelp - id: kan-hjelpe - lands_in: hjelpere - max_fields: 4 - max_steps: 2 - stages: - - open - - registrert - - trukket - success: - - registrert - via: Få hjelp fra naboer, eller gi en hånd - wants: å bli spurt når det passer - who: en nabo som kan stille opp når noen trenger det -- done_when: - - lagt_ut - - tatt_ned - enters: / - handled_by: styret - id: dele-utstyr - lands_in: oppslag - max_fields: 4 - max_steps: 2 - stages: - - open - - lagt_ut - - tatt_ned - success: - - lagt_ut - via: Få hjelp fra naboer, eller gi en hånd - wants: et oppslag som naboene ser - who: en nabo som har noe å låne ut, eller trenger å låne noe -- done_when: - - utbetalt - - avvist - enters: /komiteer/utlegg - enters_as: komiteer - handled_by: kasserer - id: utlegg - lands_in: utlegg - max_fields: 3 - max_steps: 1 - stages: - - open - - godkjent - - utbetalt - - avvist - success: - - utbetalt - via: Få tilbake det du har lagt ut - wants: pengene tilbake - who: en i en komité som har lagt ut for noe -personas: -- id: nyinnflyttet - need: bli-medlem - text: Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det? -- id: glemte-a-betale - need: bli-medlem - text: Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem? -- id: ny-epost - need: endre-medlemskap - text: Vi har byttet e-postadresse og får ikke lenger noe fra dere. -- id: flytter - need: endre-medlemskap - text: Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista. -- id: skolevei - need: trafikkfare - text: Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går. -- id: busslomme - need: trafikkfare - text: Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy. -- id: huske - need: anleggsfeil - text: Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt. -- id: bru - need: anleggsfeil - text: Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom. -- id: blokker - need: horingsinnspill - text: Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra? -- id: togtider - need: horingsinnspill - text: Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det. -- id: vafler - need: hjelpe-til - text: Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk. -- id: motorsag - need: hjelpe-til - text: Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad. -- id: pendler - need: komite - text: Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det. -- id: planlegger - need: komite - text: Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring. -- id: tilhenger - need: dele-utstyr - text: Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp. -- id: stige - need: dele-utstyr - text: Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har? -- id: snomaking - need: trenger-hjelp - text: Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør? -- id: nyoperert - need: trenger-hjelp - text: Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg? -- id: hjemmekontor - need: kan-hjelpe - text: Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv. -- id: pensjonert-elektriker - need: kan-hjelpe - text: Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting. -- id: kvittering - need: utlegg - text: Jeg kjøpte pølser og kakao til skøytedagen for 1 840 kroner, her er kvitteringa, vil ha det igjen. diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/arrangementskomite/_section.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/arrangementskomite/_section.yaml deleted file mode 100644 index 7c3b4ae..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/arrangementskomite/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: arrangementskomite diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/arrangementskomite/index.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/arrangementskomite/index.yaml deleted file mode 100644 index c0c2be3..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/arrangementskomite/index.yaml +++ /dev/null @@ -1,32 +0,0 @@ -alternatives: -- action: /arrangementskomite - consequence: - - Lagre - description: Alle som har sagt de vil hjelpe til på et arrangement eller en dugnad, og hvor langt du har kommet med å sette dem opp. - features: - - description: '' - name: '' - resource: - requires_group: arrangementskomite - source: - bucket: frivillige - kind: kv - transitions: - - from: kontaktet - label: Sett opp på oppgave - to: satt_opp - - from: kontaktet - label: Meld takket nei - to: takket_nei - - from: open - label: Merk som kontaktet - to: kontaktet - - from: open - label: Meld takket nei - to: takket_nei - name: Frivillige som venter på oppgave -description: Her holder du oversikt over alle som har meldt seg som frivillige, og setter dem opp på det som trengs. -name: Hvem kan jeg sette i sving nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/bidra/index.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/bidra/index.yaml deleted file mode 100644 index 767ed6d..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/bidra/index.yaml +++ /dev/null @@ -1,111 +0,0 @@ -alternatives: -- action: /received/horingsinnspill - consequence: - - Send innspill - description: Har kommunen en sak på høring du mener noe om? Send det til oss, så tar vi det med i vårt svar. - encouragements: - - Alle innspill blir lest før styret skriver høringssvaret. - features: - - description: Styret samler innspillene og vurderer dem opp mot fristen for høringssvaret. Det som passer inn blir tatt med, resten blir ikke det. - icon: lucide:file-text - name: Slik går det videre - - description: Styret leser innspillet ditt, og du når dem på post@tomtervel.no om du lurer på noe. - icon: lucide:users - name: Hvem leser dette - - description: Skriv gjerne kort hvilken sak det gjelder og hva du mener. - icon: lucide:scale - name: Send inn ditt innspill - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: Hvilken sak gjelder det? - name: sak - placeholder: F.eks. reguleringsplan for Tomterveien - type: text - - label: Hva mener du? - name: innspill - placeholder: F.eks. flere fartsdumper, bevare turstien - type: textarea - name: Få din mening med i velets høringssvar - record_as: innspill -- action: /received/hjelpe-til - consequence: - - Meld deg - description: Vi trenger folk på 17. mai, dugnader og andre arrangementer i løpet av året. - encouragements: - - Bare si fra – vi finner noe som passer deg. - features: - - description: Arrangementskomiteen tar kontakt med deg og setter deg opp på noe som passer. Passer det ikke akkurat da, sier du bare ifra. - icon: lucide:calendar - name: Slik går det videre - - description: Arrangementskomiteen leser dette, men du kan også nå styret på post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem leser dette - - description: Kort om hva du kan tenke deg å bidra med. - icon: lucide:hand-helping - name: Meld deg som hjelper - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: Telefon - name: telefon - placeholder: 123 45 678 - type: tel - - label: Hva vil du hjelpe til med? - name: hva - options: - - 17. mai - - Juletregranstenning - - Skøytedag - - Dugnad på elvestien - - Det som trengs - type: select - name: Bli med på et arrangement eller en dugnad - record_as: frivillige -- action: /received/komite - consequence: - - Meld interesse - description: Velet drives av sju komiteer på fritida. Er det noe du brenner for, er det plass til deg. - encouragements: - - Vi tar kontakt for en prat om hva komiteen driver med. - features: - - description: Styret tar kontakt og finner ut om det er plass i komiteen du ønsker deg til. Blir det ikke plass akkurat nå, får du beskjed om det også. - icon: lucide:handshake - name: Slik går det videre - - description: Styret leser meldingen din, og du når dem på post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem leser dette - - description: Fortell hvilken komité du har lyst til å være med i. - icon: lucide:users - name: Meld deg til en komité - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: E-post - name: epost - placeholder: ola@eksempel.no - type: email - - label: Hvilken komité? - name: komite - options: - - Arrangementer - - Elvesti - - Høringsinstans - - Leke- og møteplasser - - Miljøgate - - Pendlerforhold - - Trafikkforhold - type: select - name: Få en plass i komiteen du brenner for - record_as: komitesoknader -description: Har du en time å gi, eller en mening om noe kommunen skal bestemme? Her finner du veien inn. -name: Hvordan vil du bidra? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/decide/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/decide/dele-utstyr.yaml deleted file mode 100644 index a66950c..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/decide/dele-utstyr.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Oppslaget forsvinner fra siden med det samme. - name: Fjern oppslaget når det er ordnet - self_transition: - bucket: oppslag - label: Ta ned oppslaget - to: tatt_ned -description: Utstyret er lånt ut, og oppslaget kan tas bort fra siden. -name: Skal oppslaget tas ned? diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/decide/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/decide/kan-hjelpe.yaml deleted file mode 100644 index 9fb349d..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/decide/kan-hjelpe.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Du blir ikke spurt om å hjelpe til lenger. Du kan melde deg på igjen når som helst. - name: Ta deg av listen over de som kan hjelpe - self_transition: - bucket: hjelpere - label: Trekk meg fra listen - to: trukket -description: En nabo har meldt seg som kan-hjelpe. Her kan de trekke seg fra listen når de ikke lenger har anledning. -name: Vil du fortsatt stå på listen over naboer som kan hjelpe? diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/decide/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/decide/trenger-hjelp.yaml deleted file mode 100644 index 38b033e..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/decide/trenger-hjelp.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Da vet vi at hjelpen kom fram, og saken lukkes. - name: Fikk du hjelpen du trengte? - self_transition: - bucket: hjelpebehov - label: Meld ordnet - to: ordnet -description: Her sier du fra om at naboen fikk hjelp, slik at saken kan avsluttes. -name: Ble hjelpen ordnet? diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/index.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/index.yaml deleted file mode 100644 index 09b2648..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/index.yaml +++ /dev/null @@ -1,42 +0,0 @@ -alternatives: -- action: /medlem - consequence: - - Bli medlem - description: Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg. - features: - - description: '' - icon: lucide:users - name: for deg som bor i Tomter - name: Bli medlem eller endre opplysningene dine -- action: /melde-fra - consequence: - - Meld fra - description: Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed. - features: - - description: '' - icon: lucide:alert-triangle - name: for deg som har sett noe i nabolaget - name: Meld fra om noe som ikke er som det skal -- action: /bidra - consequence: - - Bidra - description: Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg. - features: - - description: '' - icon: lucide:hand-helping - name: for deg som vil gjøre en innsats - name: Si din mening eller gi en hånd -- action: /naboer - consequence: - - Til naboer - description: Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer. - features: - - description: '' - icon: lucide:heart-handshake - name: for deg som vil hjelpe eller trenger hjelp - name: Få hjelp fra naboer, eller gi en hånd -description: Tomter Vel er velforeningen for alle husstander i Tomter. Finn ut hva du trenger her. -name: Hva vil du gjøre i dag? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/kasserer/_section.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/kasserer/_section.yaml deleted file mode 100644 index 2f8af2f..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/kasserer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: kasserer diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/kasserer/index.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/kasserer/index.yaml deleted file mode 100644 index 7a53189..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/kasserer/index.yaml +++ /dev/null @@ -1,69 +0,0 @@ -alternatives: -- action: /kasserer - consequence: - - Lagre - description: Husstander som har meldt seg inn og venter på at kontingenten blir registrert. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: husstander - kind: kv - transitions: - - from: open - label: Merk som betalt - to: betalt - - from: open - label: Meld ut - to: utmeldt - name: Husstander som skal bli medlemmer -- action: /kasserer - consequence: - - Lagre - description: Medlemmer som har flyttet, byttet e-post eller vil ut av velet. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: medlemsendringer - kind: kv - transitions: - - from: open - label: Merk som oppdatert - to: oppdatert - name: Opplysninger som skal oppdateres -- action: /kasserer - consequence: - - Lagre - description: Utlegg fra komiteene som venter på godkjenning eller utbetaling. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: utlegg - kind: kv - transitions: - - from: godkjent - label: Merk som utbetalt - to: utbetalt - - from: godkjent - label: Avvis likevel - to: avvist - - from: open - label: Godkjenn utlegget - to: godkjent - - from: open - label: Avvis utlegget - to: avvist - name: Utlegg som skal gjøres opp -description: Her holder du oversikt over husstandene, medlemsendringene og utleggene som venter på deg som kasserer. -name: Hva står for tur hos kassereren? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/komiteer/_section.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/komiteer/_section.yaml deleted file mode 100644 index 57e3295..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/komiteer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: komiteer diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/komiteer/index.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/komiteer/index.yaml deleted file mode 100644 index 9511642..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/komiteer/index.yaml +++ /dev/null @@ -1,11 +0,0 @@ -alternatives: -- action: /komiteer/utlegg - consequence: - - Send utlegg - description: Har du lagt ut for noe til komiteen? Send det inn og få pengene tilbake fra kasserer. - name: Få tilbake det du har lagt ut for -description: Her har komiteen sine saker samlet, sortert etter hvor de står i behandlingen. -name: Hvor står sakene komiteen har ansvar for? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/komiteer/utlegg-sent.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/komiteer/utlegg-sent.yaml deleted file mode 100644 index 65b1822..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/komiteer/utlegg-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer ser gjennom bilag og kontonummer, og setter i gang utbetalingen når det er godkjent. - name: Kasserer sjekker og betaler ut -- action: /komiteer - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du sender inn utlegget. Kasserer får beskjed og tar det videre. -name: Hva skjer med utlegget mitt nå? diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/komiteer/utlegg.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/komiteer/utlegg.yaml deleted file mode 100644 index 518e4de..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/komiteer/utlegg.yaml +++ /dev/null @@ -1,38 +0,0 @@ -alternatives: -- action: /komiteer/utlegg-sent - consequence: - - Send utlegg - description: Har du lagt ut for noe til et arrangement, dugnad eller annet i regi av velet? Send inn så får du pengene tilbake. - encouragements: - - Kasserer ser gjennom det og betaler ut så snart det er godkjent. - features: - - description: Utlegget går til kasserer, som godkjenner det og betaler ut. Skulle det ikke la seg godkjenne, får du beskjed om det også. - icon: lucide:coins - name: Fra melding til utbetaling - - description: Kasserer i Tomter Vel leser meldingen og kan nås på post@tomtervel.no i mellomtiden. - icon: lucide:wallet - name: Kasserer har saken - - description: Ha gjerne kvittering eller bilag klart, så går utbetalingen raskere. - icon: lucide:receipt - name: Legg ut for utgift - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: Beløp - name: belop - placeholder: 450 kr - type: text - - label: Hva gjaldt det - name: hva - placeholder: Kaffe og kaker til dugnaden på lekeplassen - type: textarea - name: Få tilbake det du har lagt ut - record_as: utlegg -description: Har du betalt noe av egen lomme for en komité i Tomter Vel? Her melder du inn utlegget, så ordner kasserer resten. -followup: false -name: Har du lagt ut penger for velet som du skal ha tilbake? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/lekeplasskomite/_section.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/lekeplasskomite/_section.yaml deleted file mode 100644 index ca64c92..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/lekeplasskomite/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: lekeplasskomite diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/lekeplasskomite/index.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/lekeplasskomite/index.yaml deleted file mode 100644 index cb17e59..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/lekeplasskomite/index.yaml +++ /dev/null @@ -1,26 +0,0 @@ -alternatives: -- action: /lekeplasskomite - consequence: - - Lagre - description: Meldinger om noe som er ødelagt på lekeplassen eller stien, og som bør fikses før noen skader seg. - features: - - description: '' - name: '' - resource: - requires_group: lekeplasskomite - source: - bucket: anleggsfeil - kind: kv - transitions: - - from: open - label: Ta tak i saken - to: tatt_tak_i - - from: tatt_tak_i - label: Merk som utbedret - to: utbedret - name: Meldinger om lekeplass og sti -description: Her holder du oversikt over meldinger om lekeplassene og stien, og følger dem opp til de er utbedret. -name: Hva må fikses på lekeplassene og stien nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/medlem/index.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/medlem/index.yaml deleted file mode 100644 index 9e5fdc4..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/medlem/index.yaml +++ /dev/null @@ -1,73 +0,0 @@ -alternatives: -- action: /received/bli-medlem - consequence: - - Meld meg inn - description: Meld deg inn i Tomter Vel, så tar vi vare på nabolaget sammen. Du får en giro på kontingenten når vi har registrert deg. - encouragements: - - Det tar bare et minutt, resten ordner vi. - features: - - description: Vi registrerer deg og sender deg kontingenten. Når den er betalt, er du fullverdig medlem. - icon: lucide:coins - name: Fra innmelding til medlem - - description: Kasserer i styret leser dette og ordner giroen; du kan nå oss på post@tomtervel.no i mellomtiden. - icon: lucide:mail - name: Hvem leser dette - - description: Fyll ut det du vet, så gjør kasserer resten. - icon: lucide:user-plus - name: Bli medlem - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: Adresse - name: adresse - placeholder: Tomterveien 12 - type: text - - label: E-post - name: epost - placeholder: ola@eksempel.no - type: email - - label: Telefon - name: telefon - optional: true - placeholder: 912 34 567 - type: tel - name: Bli medlem av velet - record_as: husstander -- action: /received/endre-medlemskap - consequence: - - Send endring - description: Har du flyttet, byttet e-post eller vil melde deg ut? Si fra her, så retter vi opp i listene våre. - encouragements: - - Vi oppdaterer registeret så snart vi ser meldingen. - features: - - description: Vi retter opp i medlemslisten så fort meldingen kommer inn. - icon: lucide:refresh-cw - name: Slik oppdaterer vi - - description: Kasserer i styret leser dette og oppdaterer registeret; du kan nå oss på post@tomtervel.no i mellomtiden. - icon: lucide:mail - name: Hvem leser dette - - description: Skriv hva som er nytt, så finner vi deg i registeret. - icon: lucide:pencil - name: Endre medlemskap - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: Adresse - name: adresse - placeholder: Tomterveien 12 - type: text - - label: Hva vil du endre? - name: hva_er_nytt - placeholder: Ny e-post, flyttet, eller vil melde meg ut - type: textarea - name: Oppdater opplysningene dine - record_as: medlemsendringer -description: Bli medlem, eller endre opplysningene dine hvis du allerede er det. -name: Vil du bli medlem, eller endre opplysningene dine? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/melde-fra/index.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/melde-fra/index.yaml deleted file mode 100644 index 5a14973..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/melde-fra/index.yaml +++ /dev/null @@ -1,69 +0,0 @@ -alternatives: -- action: /received/trafikkfare - consequence: - - Meld fra - description: Har du sett et farlig sted i trafikken, som dårlig sikt eller en vei uten fortau? Fortell oss om det, så tar vi det videre med kommunen. - encouragements: - - Det tar bare et minutt, og trafikkomiteen ser på alle meldinger som kommer inn. - features: - - description: Trafikkomiteen tar saken opp med kommunen eller den som eier veien, og følger den til den er ordnet eller avvist. - icon: lucide:route - name: Hva skjer videre - - description: Trafikkomiteen leser det du sender inn, og kan svare deg på e-posten du oppgir. - icon: lucide:car - name: Hvem ser dette - - description: Fortell hva du har sett og hvor, så vi kan finne stedet. - icon: lucide:alert-triangle - name: Meld fra om trafikkfare - requirements: - - label: Hvor er det? - name: hvor - placeholder: Krysset ved Tomterveien og Kirkeveien - type: text - - label: Hva har du sett? - name: hva - placeholder: Dårlig sikt i krysset, mange kjører fort - type: textarea - - label: E-post - name: epost - optional: true - placeholder: navn@epost.no - type: email - name: Gjør trafikken tryggere der du bor - record_as: trafikkmeldinger -- action: /received/anleggsfeil - consequence: - - Meld fra - description: Er noe på lekeplassen eller stien ødelagt eller farlig? Fortell oss hvor og hva, så tar lekeplasskomiteen tak i det. - encouragements: - - Det holder med noen få ord, så ser komiteen på det så fort de kan. - features: - - description: Meldingen går til lekeplasskomiteen, som tar tak i saken og utbedrer skaden. - icon: lucide:wrench - name: Hva skjer videre - - description: Lekeplasskomiteen leser det du sender inn; til det haster kan du nå styret på post@tomtervel.no. - icon: lucide:hammer - name: Hvem ser dette - - description: Beskriv hva du så og hvor det er, så finner vi det raskt. - icon: lucide:construction - name: Meld fra om skade - requirements: - - label: Hvor er det? - name: hvor - options: - - Lekeplassen - - Elvestien - - Skøytebanen - - Et annet sted - type: select - - label: Hva har du sett? - name: hva - placeholder: Løs planke i klatrestativet - type: textarea - name: Få fikset noe som er ødelagt - record_as: anleggsfeil -description: Sett du noe i nabolaget som ikke er som det skal? Gi oss beskjed, så følger vi det opp. -name: Har du sett noe i nabolaget som bør meldes fra om? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/naboer/index.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/naboer/index.yaml deleted file mode 100644 index 65c3b37..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/naboer/index.yaml +++ /dev/null @@ -1,124 +0,0 @@ -alternatives: -- action: /received/trenger-hjelp - consequence: - - Be om hjelp - description: Får du ikke til snømåking, handling eller en skyss akkurat nå? Si fra, så finner vi en nabo som kan stille opp. - encouragements: - - Nabohjelpen ser på dette raskt og finner noen som kan hjelpe. - features: - - description: Nabohjelpen finner en nabo som kan stille opp, og setter dere i kontakt. Får dere ikke løst det, gir vi beskjed om det også. - icon: lucide:handshake - name: Slik går det videre - - description: Nabohjelp-komiteen leser dette og finner en nabo, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:heart-handshake - name: Hvem leser dette - - description: Skriv hva du trenger hjelp med og når, så finner vi en nabo som passer. - icon: lucide:hand-helping - name: Be om nabohjelp - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: email - placeholder: kari@eksempel.no - type: email - - label: Adresse - name: adresse - placeholder: Tomterveien 12 - type: text - - label: Hva trenger du hjelp til? - name: hva - placeholder: Trenger hjelp til å måke inngangspartiet - type: textarea - - label: Telefon - name: telefon - optional: true - placeholder: 912 34 567 - type: tel - name: Få en nabo til å stille opp - record_as: hjelpebehov -- action: /received/kan-hjelpe - consequence: - - Meld deg - description: Meld deg som nabohjelp, så blir du spurt når noen i nærheten trenger en hånd. - encouragements: - - Du blir bare spurt når det faktisk passer, og kan trekke deg når som helst. - features: - - description: Du blir registrert som nabohjelp, og nabohjelpkomiteen tar kontakt når det dukker opp noe som passer deg. Vil du trekke deg, er det bare å si fra. - icon: lucide:user-check - name: Slik går det videre - - description: Nabohjelp-komiteen holder oversikten, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:heart-handshake - name: Hvem leser dette - - description: Si litt om hva du kan bidra med, så finner vi ut når det passer. - icon: lucide:hand-helping - name: Meld deg som nabohjelp - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: email - placeholder: kari@eksempel.no - type: email - - label: Telefon - name: telefon - placeholder: 912 34 567 - type: tel - - label: Hva kan du hjelpe med? - name: kan - options: - - Snømåking - - Handling - - Kjøring - - Småfiks i huset - - En prat og litt selskap - - Det som trengs - type: select - name: Bli spurt når en nabo trenger en hånd - record_as: hjelpere -- action: /received/dele-utstyr - consequence: - - Legg ut - description: Har du noe naboene kan låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre i Tomter det. - encouragements: - - Oppslaget legges ut for naboene med det samme. - features: - - description: Styret legger oppslaget ut for naboene. Når det du lånte bort er levert tilbake, eller du har fått låne det du trengte, tar vi det ned igjen. - icon: lucide:list - name: Slik går det videre - - description: Styret i Tomter Vel legger ut oppslaget, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem leser dette - - description: Fortell kort hva det gjelder, så tar vi det videre. - icon: lucide:package - name: Lån eller utlån - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: E-post - name: email - placeholder: ola@eksempel.no - type: email - - label: Har du, eller trenger du? - name: har_eller_trenger - options: - - Jeg har noe å låne ut - - Jeg trenger å låne noe - type: select - - label: Hva gjelder det? - name: hva - placeholder: Hengerlaget, står ledig i helgene - type: textarea - name: Lån ut eller lån det naboene trenger - record_as: oppslag -description: Naboer stiller opp for hverandre – med snømåking, handling, skyss eller utlån av det du har for mye av. -name: Trenger du en hånd, eller kan du stille opp for en nabo? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/nabohjelp/_section.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/nabohjelp/_section.yaml deleted file mode 100644 index 5b3a2ad..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/nabohjelp/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: nabohjelp diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/nabohjelp/index.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/nabohjelp/index.yaml deleted file mode 100644 index ce2a3c1..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/nabohjelp/index.yaml +++ /dev/null @@ -1,52 +0,0 @@ -alternatives: -- action: /nabohjelp - consequence: - - Lagre - description: Her ser du hvem som trenger en hånd, og kan sette dem i kontakt med en nabo som stiller opp. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: hjelpebehov - kind: kv - transitions: - - from: formidlet - label: Marker som ordnet - to: ordnet - - from: formidlet - label: Fant ingen løsning - to: ikke_lost - - from: open - label: Sett i kontakt med nabo - to: formidlet - - from: open - label: Fant ingen løsning - to: ikke_lost - name: Naboer som trenger en hånd -- action: /nabohjelp - consequence: - - Lagre - description: Her ser du naboene som har sagt de kan stille opp, klare til å spørres når noen trenger hjelp. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: hjelpere - kind: kv - transitions: - - from: open - label: Registrer som hjelper - to: registrert - - from: open - label: Fjern fra listen - to: trukket - name: Naboer som kan stille opp -description: Sett naboer som trenger en hånd i kontakt med naboer som kan gi en. -name: Hvem trenger hjelp, og hvem kan gi en? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/anleggsfeil.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/anleggsfeil.yaml deleted file mode 100644 index bb10fb8..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/anleggsfeil.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Komiteen ser på meldingen og avtaler hvem som tar tak i det. - name: Komiteen ser på saken -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Meldingen din om skaden er sendt til lekeplasskomiteen. -name: Hva skjer med meldingen min nå? diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/bli-medlem.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/bli-medlem.yaml deleted file mode 100644 index 16b0fd5..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/bli-medlem.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer går gjennom innmeldinger fortløpende og sender deg kontingenten på e-post. - name: Du hører fra kasserer -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Takk for at du melder deg inn i Tomter Vel. Vi har mottatt søknaden din. -name: Hva skjer nå som jeg har meldt meg inn? diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/dele-utstyr.yaml deleted file mode 100644 index 1586adf..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/dele-utstyr.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Styret ser gjennom oppslaget og legger det ut på nabolagssiden. Tar det litt tid, kan de ta kontakt for å sjekke noe før det legges ut. - name: Oppslaget legges ut for naboene -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du la ut noe til utlån eller ba om å låne noe. Styret legger det ut så naboene kan se det. -name: Hva skjer nå? diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/endre-medlemskap.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/endre-medlemskap.yaml deleted file mode 100644 index 743dbe7..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/endre-medlemskap.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kassereren oppdaterer medlemslista og bekrefter på e-post at det er gjort. - name: Opplysningene blir oppdatert -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Meldingen om endringen er sendt til kassereren. -name: Er endringen registrert? diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/hjelpe-til.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/hjelpe-til.yaml deleted file mode 100644 index f2949f9..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/hjelpe-til.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Noen fra arrangementskomiteen tar kontakt før neste arrangement eller dugnad, og avtaler nærmere hva du kan hjelpe til med. - name: Komiteen tar kontakt med deg -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du vil bidra! Arrangementskomiteen har fått beskjed og finner ut hvor du passer best inn. -name: Hva skjer nå som jeg har meldt meg? diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/horingsinnspill.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/horingsinnspill.yaml deleted file mode 100644 index 31b18b2..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/horingsinnspill.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Styret samler innspill fra beboerne og tar dem med når vi svarer kommunen i høringen. - name: Innspillet blir del av høringssvaret -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Innspillet ditt er sendt til styret i Tomter Vel. -name: Hva skjer med innspillet mitt nå? diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/kan-hjelpe.yaml deleted file mode 100644 index 430371e..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/kan-hjelpe.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Vi tar kontakt når det dukker opp noe som passer for deg – det kan gå litt tid før det skjer. - name: Vi kontakter deg ved behov -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du stiller opp som nabohjelp. Vi har notert deg, så vet vi om deg når noen trenger en hånd. -name: Hva skjer nå som jeg har meldt meg som nabohjelp? diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/komite.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/komite.yaml deleted file mode 100644 index 79fd8b8..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/komite.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Styret ser på ønsket ditt og svarer så snart de har funnet en plass, eller kan si at komiteen er full akkurat nå. - name: Styret finner deg en plass -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Du har sagt at du vil sitte i en komité. Styret tar kontakt om plass i den komiteen som passer deg. -name: Hva skjer nå som jeg har meldt interesse for en komité? diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/trafikkfare.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/trafikkfare.yaml deleted file mode 100644 index 52aad3f..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/trafikkfare.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Trafikkomiteen ser på meldingen og tar den videre med kommunen eller den som eier veien, om det trengs. - name: Trafikkomiteen tar det videre -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Meldingen om trafikkfaren er sendt til trafikkomiteen. -name: Hva skjer nå med det jeg meldte fra om? diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/trenger-hjelp.yaml deleted file mode 100644 index 4e3fed4..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/received/trenger-hjelp.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Nabohjelpen ser på henvendelser fortløpende og tar kontakt så snart noen kan hjelpe. - name: Vi finner noen som kan hjelpe deg -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Meldingen din er sendt til nabohjelpen. Vi finner en nabo som kan stille opp. -name: Hva skjer nå med det jeg trenger hjelp til? diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/styret/_section.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/styret/_section.yaml deleted file mode 100644 index 5a34160..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/styret/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: styret diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/styret/index.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/styret/index.yaml deleted file mode 100644 index bdca581..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/styret/index.yaml +++ /dev/null @@ -1,80 +0,0 @@ -alternatives: -- action: /styret - consequence: - - Lagre - description: Se hva naboer mener om saker kommunen har på høring, og ta det med i høringssvaret. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: innspill - kind: kv - transitions: - - from: open - label: Ta med i svaret - to: tatt_med - - from: open - label: Ikke ta med - to: ikke_tatt_med - name: Innspill til høringssvar -- action: /styret - consequence: - - Lagre - description: Se hvem som vil sitte i en komité, og sett dem i en som passer. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: komitesoknader - kind: kv - transitions: - - from: open - label: Plasser i komité - to: plassert - - from: open - label: Avslå søknaden - to: avslatt - name: Søknader til komiteene -- action: /styret - consequence: - - Lagre - description: Se hva naboer vil dele ut eller låne, og legg oppslaget ut for alle. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: oppslag - kind: kv - transitions: - - from: open - label: Legg ut oppslag - to: lagt_ut - - from: open - label: Ta ned oppslag - to: tatt_ned - name: Oppslag om å dele utstyr -- action: /styret - consequence: - - Lagre - description: Se hva naboer har meldt om farlige steder i trafikken. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: trafikkmeldinger - kind: kv - transitions: [] - name: Meldinger om trafikkfarer -description: Her har styret oversikt over høringsinnspill, komitésøknader, oppslag og trafikkmeldinger fra naboene. -name: Hva venter på styret akkurat nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/trafikkomite/_section.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/trafikkomite/_section.yaml deleted file mode 100644 index bf946ea..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/trafikkomite/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: trafikkomite diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/trafikkomite/index.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/trafikkomite/index.yaml deleted file mode 100644 index 1f43cf0..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/questions/trafikkomite/index.yaml +++ /dev/null @@ -1,32 +0,0 @@ -alternatives: -- action: /trafikkomite - consequence: - - Lagre - description: Meldinger fra naboer om farlige steder i trafikken, klare til å tas videre. - features: - - description: '' - name: '' - resource: - requires_group: trafikkomite - source: - bucket: trafikkmeldinger - kind: kv - transitions: - - from: open - label: Ta opp med kommunen - to: tatt_opp - - from: open - label: Avvis meldingen - to: avvist - - from: tatt_opp - label: Meld som ordnet - to: ordnet - - from: tatt_opp - label: Avvis saken - to: avvist - name: Trafikkfarer meldt av naboer -description: Her følger trafikkomiteen opp meldinger om farlige steder i trafikken. -name: Hvilke trafikkfarer må vi følge opp nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/rate.json b/vendor/trainer/runs/tomtervel-cards-2026-09-23/rate.json deleted file mode 100644 index 6f65cfb..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/rate.json +++ /dev/null @@ -1,519 +0,0 @@ -{ - "anleggsfeil": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 18.860294117647058, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 27.80952380952381, - "options": 2, - "overloaded": false, - "page": "/melde-fra", - "personas": 2, - "required_fields": 2, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "bli-medlem": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 18.860294117647058, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 1, - "next": null, - "where": 2, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 26.416666666666668, - "options": 2, - "overloaded": false, - "page": "/medlem", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "dele-utstyr": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 18.860294117647058, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "where": 2, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 24.495121951219513, - "options": 3, - "overloaded": false, - "page": "/naboer", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "endre-medlemskap": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 18.860294117647058, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 1, - "next": null, - "where": 2, - "which": 0 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 28.571428571428573, - "options": 2, - "overloaded": false, - "page": "/medlem", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "hjelpe-til": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 18.860294117647058, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 1, - "next": null, - "where": 2, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 25.357446808510637, - "options": 3, - "overloaded": false, - "page": "/bidra", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "horingsinnspill": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 18.860294117647058, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "where": 2, - "which": 0 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 25.049382716049383, - "options": 3, - "overloaded": false, - "page": "/bidra", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 1 - } - } - ], - "steps": 2 - }, - "kan-hjelpe": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 18.860294117647058, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 1, - "next": null, - "where": 2, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 2, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 24.95169082125604, - "options": 3, - "overloaded": false, - "page": "/naboer", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "komite": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 18.860294117647058, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 1, - "next": null, - "where": 2, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 1, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 21.98118811881188, - "options": 3, - "overloaded": false, - "page": "/bidra", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "trafikkfare": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 18.860294117647058, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 28.72461273666093, - "options": 2, - "overloaded": false, - "page": "/melde-fra", - "personas": 2, - "required_fields": 2, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "trenger-hjelp": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 18.860294117647058, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "where": 2, - "which": 0 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 1, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 27.11111111111111, - "options": 3, - "overloaded": false, - "page": "/naboer", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "utlegg": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 29.416666666666664, - "options": 1, - "overloaded": false, - "page": "/komiteer/utlegg", - "personas": 1, - "required_fields": 3, - "understanding": { - "asked": 1, - "next": 1, - "where": 1, - "which": 1 - } - } - ], - "steps": 1 - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/rate.txt b/vendor/trainer/runs/tomtervel-cards-2026-09-23/rate.txt deleted file mode 100644 index 0c08588..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/rate.txt +++ /dev/null @@ -1,22 +0,0 @@ -need LIX which where asked next gutted twin says page load -bli-medlem @/ 19 very easy 1/2 2/2 1/2 - 0/0/0/- ok 4 options, 0 required -bli-medlem @/medlem 26 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 3 required -endre-medlemskap @/ 19 very easy 0/2 2/2 1/2 - 0/0/0/- ok 4 options, 0 required -endre-medlemskap @/medlem 29 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 3 required -trafikkfare @/ 19 very easy 2/2 2/2 2/2 - 0/0/0/- ok 4 options, 0 required -trafikkfare @/melde-fra 29 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 2 required -anleggsfeil @/ 19 very easy 2/2 2/2 2/2 - 0/0/0/- ok 4 options, 0 required -anleggsfeil @/melde-fra 28 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 2 required -horingsinnspill @/ 19 very easy 0/2 2/2 0/2 - 0/0/0/- ok 4 options, 0 required -horingsinnspill @/bidra 25 very easy 1/2 2/2 2/2 2/2 0/0/0/0 ok 3 options, 3 required -hjelpe-til @/ 19 very easy 1/2 2/2 1/2 - 0/0/0/- ok 4 options, 0 required -hjelpe-til @/bidra 25 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 3 options, 3 required -komite @/ 19 very easy 1/2 2/2 1/2 - 0/0/0/- ok 4 options, 0 required -komite @/bidra 22 very easy 2/2 2/2 2/2 2/2 0/1/0/0 FAILED: where 3 options, 3 required -trenger-hjelp @/ 19 very easy 0/2 2/2 0/2 - 0/0/0/- ok 4 options, 0 required -trenger-hjelp @/naboer 27 very easy 2/2 2/2 2/2 2/2 0/1/0/0 FAILED: where 3 options, 4 required -kan-hjelpe @/ 19 very easy 2/2 2/2 1/2 - 0/0/0/- ok 4 options, 0 required -kan-hjelpe @/naboer 25 very easy 2/2 2/2 2/2 2/2 0/2/0/0 FAILED: where 3 options, 4 required -dele-utstyr @/ 19 very easy 1/2 2/2 0/2 - 0/0/0/- ok 4 options, 0 required -dele-utstyr @/naboer 24 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 3 options, 4 required -utlegg 29 very easy 1/1 1/1 1/1 1/1 0/0/0/0 ok 1 options, 3 required diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/score-full.txt b/vendor/trainer/runs/tomtervel-cards-2026-09-23/score-full.txt deleted file mode 100644 index 961a903..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/score-full.txt +++ /dev/null @@ -1,9 +0,0 @@ -MISROUTE: busslomme@/: picked "Få hjelp fra naboer, eller gi en hånd" (0.95), the need is met by ["Meld fra om noe som ikke er som det skal"] -MISROUTE: bru@/melde-fra: picked "Gjør trafikken tryggere der du bor" (0.95), the need is met by ["Få fikset noe som er ødelagt"] -MISROUTE: vafler@/: picked "Til naboer" (0.95), the need is met by ["Si din mening eller gi en hånd"] -MISROUTE: motorsag@/: picked "Få hjelp fra naboer, eller gi en hånd" (0.85), the need is met by ["Si din mening eller gi en hånd"] -MISROUTE: planlegger@/: picked "Bidra" (0.95), the need is met by ["Si din mening eller gi en hånd"] -MISROUTE: planlegger@/bidra: picked "Få din mening med i velets høringssvar" (0.95), the need is met by ["Få en plass i komiteen du brenner for"] -MISROUTE: snomaking@/naboer: picked "Be om nabohjelp" (0.95), the need is met by ["Få en nabo til å stille opp"] -MISROUTE: hjemmekontor@/naboer: picked "Få en nabo til å stille opp" (0.95), the need is met by ["Bli spurt når en nabo trenger en hånd"] -wording: 32/40 routed right (80%) diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/score-skim.txt b/vendor/trainer/runs/tomtervel-cards-2026-09-23/score-skim.txt deleted file mode 100644 index 5363fbb..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/score-skim.txt +++ /dev/null @@ -1,12 +0,0 @@ -MISROUTE: ny-epost@/: picked "Si din mening eller gi en hånd" (0.85), the need is met by ["Bli medlem eller endre opplysningene dine"] -MISROUTE: flytter@/: picked "Meld fra om noe som ikke er som det skal" (0.95), the need is met by ["Bli medlem eller endre opplysningene dine"] -MISROUTE: skolevei@/: picked "Si din mening eller gi en hånd" (0.85), the need is met by ["Meld fra om noe som ikke er som det skal"] -MISROUTE: busslomme@/: picked "Si din mening eller gi en hånd" (0.85), the need is met by ["Meld fra om noe som ikke er som det skal"] -MISROUTE: huske@/: picked "Si din mening eller gi en hånd" (0.85), the need is met by ["Meld fra om noe som ikke er som det skal"] -MISROUTE: bru@/: picked "Si din mening eller gi en hånd" (0.85), the need is met by ["Meld fra om noe som ikke er som det skal"] -MISROUTE: togtider@/: picked "Meld fra om noe som ikke er som det skal" (0.95), the need is met by ["Si din mening eller gi en hånd"] -MISROUTE: vafler@/: picked "Få hjelp fra naboer, eller gi en hånd" (0.85), the need is met by ["Si din mening eller gi en hånd"] -MISROUTE: planlegger@/bidra: picked "Få din mening med i velets høringssvar" (0.95), the need is met by ["Få en plass i komiteen du brenner for"] -MISROUTE: snomaking@/naboer: picked "Bli spurt når en nabo trenger en hånd" (0.95), the need is met by ["Få en nabo til å stille opp"] -MISROUTE: hjemmekontor@/: picked "Gi en hånd" (0.95), the need is met by ["Få hjelp fra naboer, eller gi en hånd"] -wording: 29/40 routed right (72%) diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/site.yaml b/vendor/trainer/runs/tomtervel-cards-2026-09-23/site.yaml deleted file mode 100644 index 9bdc376..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/site.yaml +++ /dev/null @@ -1,2 +0,0 @@ -lang: nb -title: Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/tasks-full.jsonl b/vendor/trainer/runs/tomtervel-cards-2026-09-23/tasks-full.jsonl deleted file mode 100644 index 51af7a0..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/tasks-full.jsonl +++ /dev/null @@ -1,40 +0,0 @@ -{"id":"nyinnflyttet@/","persona":"nyinnflyttet","need":"bli-medlem","page":"/","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.","Få hjelp fra naboer, eller gi en hånd":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.","Meld fra om noe som ikke er som det skal":"Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.","Si din mening eller gi en hånd":"Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg."}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"nyinnflyttet@/medlem","persona":"nyinnflyttet","need":"bli-medlem","page":"/medlem","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre opplysningene dine?\". Which alternative do they choose?","criteria":{"Bli medlem av velet":"Meld deg inn i Tomter Vel, så tar vi vare på nabolaget sammen. Du får en giro på kontingenten når vi har registrert deg.","Oppdater opplysningene dine":"Har du flyttet, byttet e-post eller vil melde deg ut? Si fra her, så retter vi opp i listene våre."}}},"expect":["Bli medlem av velet"]} -{"id":"glemte-a-betale@/","persona":"glemte-a-betale","need":"bli-medlem","page":"/","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.","Få hjelp fra naboer, eller gi en hånd":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.","Meld fra om noe som ikke er som det skal":"Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.","Si din mening eller gi en hånd":"Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg."}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"glemte-a-betale@/medlem","persona":"glemte-a-betale","need":"bli-medlem","page":"/medlem","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre opplysningene dine?\". Which alternative do they choose?","criteria":{"Bli medlem av velet":"Meld deg inn i Tomter Vel, så tar vi vare på nabolaget sammen. Du får en giro på kontingenten når vi har registrert deg.","Oppdater opplysningene dine":"Har du flyttet, byttet e-post eller vil melde deg ut? Si fra her, så retter vi opp i listene våre."}}},"expect":["Bli medlem av velet"]} -{"id":"ny-epost@/","persona":"ny-epost","need":"endre-medlemskap","page":"/","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.","Få hjelp fra naboer, eller gi en hånd":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.","Meld fra om noe som ikke er som det skal":"Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.","Si din mening eller gi en hånd":"Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg."}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"ny-epost@/medlem","persona":"ny-epost","need":"endre-medlemskap","page":"/medlem","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre opplysningene dine?\". Which alternative do they choose?","criteria":{"Bli medlem av velet":"Meld deg inn i Tomter Vel, så tar vi vare på nabolaget sammen. Du får en giro på kontingenten når vi har registrert deg.","Oppdater opplysningene dine":"Har du flyttet, byttet e-post eller vil melde deg ut? Si fra her, så retter vi opp i listene våre."}}},"expect":["Oppdater opplysningene dine"]} -{"id":"flytter@/","persona":"flytter","need":"endre-medlemskap","page":"/","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.","Få hjelp fra naboer, eller gi en hånd":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.","Meld fra om noe som ikke er som det skal":"Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.","Si din mening eller gi en hånd":"Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg."}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"flytter@/medlem","persona":"flytter","need":"endre-medlemskap","page":"/medlem","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre opplysningene dine?\". Which alternative do they choose?","criteria":{"Bli medlem av velet":"Meld deg inn i Tomter Vel, så tar vi vare på nabolaget sammen. Du får en giro på kontingenten når vi har registrert deg.","Oppdater opplysningene dine":"Har du flyttet, byttet e-post eller vil melde deg ut? Si fra her, så retter vi opp i listene våre."}}},"expect":["Oppdater opplysningene dine"]} -{"id":"skolevei@/","persona":"skolevei","need":"trafikkfare","page":"/","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.","Få hjelp fra naboer, eller gi en hånd":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.","Meld fra om noe som ikke er som det skal":"Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.","Si din mening eller gi en hånd":"Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg."}}},"expect":["Meld fra om noe som ikke er som det skal"]} -{"id":"skolevei@/melde-fra","persona":"skolevei","need":"trafikkfare","page":"/melde-fra","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Har du sett noe i nabolaget som bør meldes fra om?\". Which alternative do they choose?","criteria":{"Få fikset noe som er ødelagt":"Er noe på lekeplassen eller stien ødelagt eller farlig? Fortell oss hvor og hva, så tar lekeplasskomiteen tak i det.","Gjør trafikken tryggere der du bor":"Har du sett et farlig sted i trafikken, som dårlig sikt eller en vei uten fortau? Fortell oss om det, så tar vi det videre med kommunen."}}},"expect":["Gjør trafikken tryggere der du bor"]} -{"id":"busslomme@/","persona":"busslomme","need":"trafikkfare","page":"/","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.","Få hjelp fra naboer, eller gi en hånd":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.","Meld fra om noe som ikke er som det skal":"Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.","Si din mening eller gi en hånd":"Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg."}}},"expect":["Meld fra om noe som ikke er som det skal"]} -{"id":"busslomme@/melde-fra","persona":"busslomme","need":"trafikkfare","page":"/melde-fra","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Har du sett noe i nabolaget som bør meldes fra om?\". Which alternative do they choose?","criteria":{"Få fikset noe som er ødelagt":"Er noe på lekeplassen eller stien ødelagt eller farlig? Fortell oss hvor og hva, så tar lekeplasskomiteen tak i det.","Gjør trafikken tryggere der du bor":"Har du sett et farlig sted i trafikken, som dårlig sikt eller en vei uten fortau? Fortell oss om det, så tar vi det videre med kommunen."}}},"expect":["Gjør trafikken tryggere der du bor"]} -{"id":"huske@/","persona":"huske","need":"anleggsfeil","page":"/","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.","Få hjelp fra naboer, eller gi en hånd":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.","Meld fra om noe som ikke er som det skal":"Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.","Si din mening eller gi en hånd":"Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg."}}},"expect":["Meld fra om noe som ikke er som det skal"]} -{"id":"huske@/melde-fra","persona":"huske","need":"anleggsfeil","page":"/melde-fra","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Har du sett noe i nabolaget som bør meldes fra om?\". Which alternative do they choose?","criteria":{"Få fikset noe som er ødelagt":"Er noe på lekeplassen eller stien ødelagt eller farlig? Fortell oss hvor og hva, så tar lekeplasskomiteen tak i det.","Gjør trafikken tryggere der du bor":"Har du sett et farlig sted i trafikken, som dårlig sikt eller en vei uten fortau? Fortell oss om det, så tar vi det videre med kommunen."}}},"expect":["Få fikset noe som er ødelagt"]} -{"id":"bru@/","persona":"bru","need":"anleggsfeil","page":"/","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.","Få hjelp fra naboer, eller gi en hånd":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.","Meld fra om noe som ikke er som det skal":"Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.","Si din mening eller gi en hånd":"Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg."}}},"expect":["Meld fra om noe som ikke er som det skal"]} -{"id":"bru@/melde-fra","persona":"bru","need":"anleggsfeil","page":"/melde-fra","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Har du sett noe i nabolaget som bør meldes fra om?\". Which alternative do they choose?","criteria":{"Få fikset noe som er ødelagt":"Er noe på lekeplassen eller stien ødelagt eller farlig? Fortell oss hvor og hva, så tar lekeplasskomiteen tak i det.","Gjør trafikken tryggere der du bor":"Har du sett et farlig sted i trafikken, som dårlig sikt eller en vei uten fortau? Fortell oss om det, så tar vi det videre med kommunen."}}},"expect":["Få fikset noe som er ødelagt"]} -{"id":"blokker@/","persona":"blokker","need":"horingsinnspill","page":"/","state":{"body":"Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.","Få hjelp fra naboer, eller gi en hånd":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.","Meld fra om noe som ikke er som det skal":"Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.","Si din mening eller gi en hånd":"Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg."}}},"expect":["Si din mening eller gi en hånd"]} -{"id":"blokker@/bidra","persona":"blokker","need":"horingsinnspill","page":"/bidra","state":{"body":"Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hvordan vil du bidra?\". Which alternative do they choose?","criteria":{"Bli med på et arrangement eller en dugnad":"Vi trenger folk på 17. mai, dugnader og andre arrangementer i løpet av året.","Få din mening med i velets høringssvar":"Har kommunen en sak på høring du mener noe om? Send det til oss, så tar vi det med i vårt svar.","Få en plass i komiteen du brenner for":"Velet drives av sju komiteer på fritida. Er det noe du brenner for, er det plass til deg."}}},"expect":["Få din mening med i velets høringssvar"]} -{"id":"togtider@/","persona":"togtider","need":"horingsinnspill","page":"/","state":{"body":"Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.","Få hjelp fra naboer, eller gi en hånd":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.","Meld fra om noe som ikke er som det skal":"Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.","Si din mening eller gi en hånd":"Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg."}}},"expect":["Si din mening eller gi en hånd"]} -{"id":"togtider@/bidra","persona":"togtider","need":"horingsinnspill","page":"/bidra","state":{"body":"Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hvordan vil du bidra?\". Which alternative do they choose?","criteria":{"Bli med på et arrangement eller en dugnad":"Vi trenger folk på 17. mai, dugnader og andre arrangementer i løpet av året.","Få din mening med i velets høringssvar":"Har kommunen en sak på høring du mener noe om? Send det til oss, så tar vi det med i vårt svar.","Få en plass i komiteen du brenner for":"Velet drives av sju komiteer på fritida. Er det noe du brenner for, er det plass til deg."}}},"expect":["Få din mening med i velets høringssvar"]} -{"id":"vafler@/","persona":"vafler","need":"hjelpe-til","page":"/","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.","Få hjelp fra naboer, eller gi en hånd":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.","Meld fra om noe som ikke er som det skal":"Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.","Si din mening eller gi en hånd":"Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg."}}},"expect":["Si din mening eller gi en hånd"]} -{"id":"vafler@/bidra","persona":"vafler","need":"hjelpe-til","page":"/bidra","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hvordan vil du bidra?\". Which alternative do they choose?","criteria":{"Bli med på et arrangement eller en dugnad":"Vi trenger folk på 17. mai, dugnader og andre arrangementer i løpet av året.","Få din mening med i velets høringssvar":"Har kommunen en sak på høring du mener noe om? Send det til oss, så tar vi det med i vårt svar.","Få en plass i komiteen du brenner for":"Velet drives av sju komiteer på fritida. Er det noe du brenner for, er det plass til deg."}}},"expect":["Bli med på et arrangement eller en dugnad"]} -{"id":"motorsag@/","persona":"motorsag","need":"hjelpe-til","page":"/","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.","Få hjelp fra naboer, eller gi en hånd":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.","Meld fra om noe som ikke er som det skal":"Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.","Si din mening eller gi en hånd":"Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg."}}},"expect":["Si din mening eller gi en hånd"]} -{"id":"motorsag@/bidra","persona":"motorsag","need":"hjelpe-til","page":"/bidra","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hvordan vil du bidra?\". Which alternative do they choose?","criteria":{"Bli med på et arrangement eller en dugnad":"Vi trenger folk på 17. mai, dugnader og andre arrangementer i løpet av året.","Få din mening med i velets høringssvar":"Har kommunen en sak på høring du mener noe om? Send det til oss, så tar vi det med i vårt svar.","Få en plass i komiteen du brenner for":"Velet drives av sju komiteer på fritida. Er det noe du brenner for, er det plass til deg."}}},"expect":["Bli med på et arrangement eller en dugnad"]} -{"id":"pendler@/","persona":"pendler","need":"komite","page":"/","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.","Få hjelp fra naboer, eller gi en hånd":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.","Meld fra om noe som ikke er som det skal":"Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.","Si din mening eller gi en hånd":"Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg."}}},"expect":["Si din mening eller gi en hånd"]} -{"id":"pendler@/bidra","persona":"pendler","need":"komite","page":"/bidra","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hvordan vil du bidra?\". Which alternative do they choose?","criteria":{"Bli med på et arrangement eller en dugnad":"Vi trenger folk på 17. mai, dugnader og andre arrangementer i løpet av året.","Få din mening med i velets høringssvar":"Har kommunen en sak på høring du mener noe om? Send det til oss, så tar vi det med i vårt svar.","Få en plass i komiteen du brenner for":"Velet drives av sju komiteer på fritida. Er det noe du brenner for, er det plass til deg."}}},"expect":["Få en plass i komiteen du brenner for"]} -{"id":"planlegger@/","persona":"planlegger","need":"komite","page":"/","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.","Få hjelp fra naboer, eller gi en hånd":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.","Meld fra om noe som ikke er som det skal":"Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.","Si din mening eller gi en hånd":"Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg."}}},"expect":["Si din mening eller gi en hånd"]} -{"id":"planlegger@/bidra","persona":"planlegger","need":"komite","page":"/bidra","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hvordan vil du bidra?\". Which alternative do they choose?","criteria":{"Bli med på et arrangement eller en dugnad":"Vi trenger folk på 17. mai, dugnader og andre arrangementer i løpet av året.","Få din mening med i velets høringssvar":"Har kommunen en sak på høring du mener noe om? Send det til oss, så tar vi det med i vårt svar.","Få en plass i komiteen du brenner for":"Velet drives av sju komiteer på fritida. Er det noe du brenner for, er det plass til deg."}}},"expect":["Få en plass i komiteen du brenner for"]} -{"id":"tilhenger@/","persona":"tilhenger","need":"dele-utstyr","page":"/","state":{"body":"Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.","Få hjelp fra naboer, eller gi en hånd":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.","Meld fra om noe som ikke er som det skal":"Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.","Si din mening eller gi en hånd":"Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg."}}},"expect":["Få hjelp fra naboer, eller gi en hånd"]} -{"id":"tilhenger@/naboer","persona":"tilhenger","need":"dele-utstyr","page":"/naboer","state":{"body":"Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du stille opp for en nabo?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Meld deg som nabohjelp, så blir du spurt når noen i nærheten trenger en hånd.","Få en nabo til å stille opp":"Får du ikke til snømåking, handling eller en skyss akkurat nå? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån det naboene trenger":"Har du noe naboene kan låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre i Tomter det."}}},"expect":["Lån ut eller lån det naboene trenger"]} -{"id":"stige@/","persona":"stige","need":"dele-utstyr","page":"/","state":{"body":"Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.","Få hjelp fra naboer, eller gi en hånd":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.","Meld fra om noe som ikke er som det skal":"Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.","Si din mening eller gi en hånd":"Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg."}}},"expect":["Få hjelp fra naboer, eller gi en hånd"]} -{"id":"stige@/naboer","persona":"stige","need":"dele-utstyr","page":"/naboer","state":{"body":"Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du stille opp for en nabo?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Meld deg som nabohjelp, så blir du spurt når noen i nærheten trenger en hånd.","Få en nabo til å stille opp":"Får du ikke til snømåking, handling eller en skyss akkurat nå? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån det naboene trenger":"Har du noe naboene kan låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre i Tomter det."}}},"expect":["Lån ut eller lån det naboene trenger"]} -{"id":"snomaking@/","persona":"snomaking","need":"trenger-hjelp","page":"/","state":{"body":"Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.","Få hjelp fra naboer, eller gi en hånd":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.","Meld fra om noe som ikke er som det skal":"Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.","Si din mening eller gi en hånd":"Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg."}}},"expect":["Få hjelp fra naboer, eller gi en hånd"]} -{"id":"snomaking@/naboer","persona":"snomaking","need":"trenger-hjelp","page":"/naboer","state":{"body":"Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du stille opp for en nabo?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Meld deg som nabohjelp, så blir du spurt når noen i nærheten trenger en hånd.","Få en nabo til å stille opp":"Får du ikke til snømåking, handling eller en skyss akkurat nå? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån det naboene trenger":"Har du noe naboene kan låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre i Tomter det."}}},"expect":["Få en nabo til å stille opp"]} -{"id":"nyoperert@/","persona":"nyoperert","need":"trenger-hjelp","page":"/","state":{"body":"Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.","Få hjelp fra naboer, eller gi en hånd":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.","Meld fra om noe som ikke er som det skal":"Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.","Si din mening eller gi en hånd":"Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg."}}},"expect":["Få hjelp fra naboer, eller gi en hånd"]} -{"id":"nyoperert@/naboer","persona":"nyoperert","need":"trenger-hjelp","page":"/naboer","state":{"body":"Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du stille opp for en nabo?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Meld deg som nabohjelp, så blir du spurt når noen i nærheten trenger en hånd.","Få en nabo til å stille opp":"Får du ikke til snømåking, handling eller en skyss akkurat nå? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån det naboene trenger":"Har du noe naboene kan låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre i Tomter det."}}},"expect":["Få en nabo til å stille opp"]} -{"id":"hjemmekontor@/","persona":"hjemmekontor","need":"kan-hjelpe","page":"/","state":{"body":"Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.","Få hjelp fra naboer, eller gi en hånd":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.","Meld fra om noe som ikke er som det skal":"Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.","Si din mening eller gi en hånd":"Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg."}}},"expect":["Få hjelp fra naboer, eller gi en hånd"]} -{"id":"hjemmekontor@/naboer","persona":"hjemmekontor","need":"kan-hjelpe","page":"/naboer","state":{"body":"Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du stille opp for en nabo?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Meld deg som nabohjelp, så blir du spurt når noen i nærheten trenger en hånd.","Få en nabo til å stille opp":"Får du ikke til snømåking, handling eller en skyss akkurat nå? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån det naboene trenger":"Har du noe naboene kan låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre i Tomter det."}}},"expect":["Bli spurt når en nabo trenger en hånd"]} -{"id":"pensjonert-elektriker@/","persona":"pensjonert-elektriker","need":"kan-hjelpe","page":"/","state":{"body":"Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Meld deg inn i Tomter Vel, eller gi oss beskjed om noe har endret seg hos deg.","Få hjelp fra naboer, eller gi en hånd":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.","Meld fra om noe som ikke er som det skal":"Har du sett noe farlig i trafikken eller noe som er ødelagt på lekeplassen eller stien? Gi oss beskjed.","Si din mening eller gi en hånd":"Har du en mening om en sak, eller lyst til å stille opp for nabolaget? Her kan du si ifra eller melde deg."}}},"expect":["Få hjelp fra naboer, eller gi en hånd"]} -{"id":"pensjonert-elektriker@/naboer","persona":"pensjonert-elektriker","need":"kan-hjelpe","page":"/naboer","state":{"body":"Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du stille opp for en nabo?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Meld deg som nabohjelp, så blir du spurt når noen i nærheten trenger en hånd.","Få en nabo til å stille opp":"Får du ikke til snømåking, handling eller en skyss akkurat nå? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån det naboene trenger":"Har du noe naboene kan låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre i Tomter det."}}},"expect":["Bli spurt når en nabo trenger en hånd"]} diff --git a/vendor/trainer/runs/tomtervel-cards-2026-09-23/tasks-skim.jsonl b/vendor/trainer/runs/tomtervel-cards-2026-09-23/tasks-skim.jsonl deleted file mode 100644 index f394cd2..0000000 --- a/vendor/trainer/runs/tomtervel-cards-2026-09-23/tasks-skim.jsonl +++ /dev/null @@ -1,40 +0,0 @@ -{"id":"nyinnflyttet@/","persona":"nyinnflyttet","need":"bli-medlem","page":"/","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få hjelp fra naboer, eller gi en hånd":"Få hjelp fra naboer, eller gi en hånd","Meld fra om noe som ikke er som det skal":"Meld fra om noe som ikke er som det skal","Si din mening eller gi en hånd":"Si din mening eller gi en hånd"}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"nyinnflyttet@/medlem","persona":"nyinnflyttet","need":"bli-medlem","page":"/medlem","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre opplysningene dine?\". Which alternative do they choose?","criteria":{"Bli medlem av velet":"Bli medlem av velet","Oppdater opplysningene dine":"Oppdater opplysningene dine"}}},"expect":["Bli medlem av velet"]} -{"id":"glemte-a-betale@/","persona":"glemte-a-betale","need":"bli-medlem","page":"/","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få hjelp fra naboer, eller gi en hånd":"Få hjelp fra naboer, eller gi en hånd","Meld fra om noe som ikke er som det skal":"Meld fra om noe som ikke er som det skal","Si din mening eller gi en hånd":"Si din mening eller gi en hånd"}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"glemte-a-betale@/medlem","persona":"glemte-a-betale","need":"bli-medlem","page":"/medlem","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre opplysningene dine?\". Which alternative do they choose?","criteria":{"Bli medlem av velet":"Bli medlem av velet","Oppdater opplysningene dine":"Oppdater opplysningene dine"}}},"expect":["Bli medlem av velet"]} -{"id":"ny-epost@/","persona":"ny-epost","need":"endre-medlemskap","page":"/","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få hjelp fra naboer, eller gi en hånd":"Få hjelp fra naboer, eller gi en hånd","Meld fra om noe som ikke er som det skal":"Meld fra om noe som ikke er som det skal","Si din mening eller gi en hånd":"Si din mening eller gi en hånd"}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"ny-epost@/medlem","persona":"ny-epost","need":"endre-medlemskap","page":"/medlem","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre opplysningene dine?\". Which alternative do they choose?","criteria":{"Bli medlem av velet":"Bli medlem av velet","Oppdater opplysningene dine":"Oppdater opplysningene dine"}}},"expect":["Oppdater opplysningene dine"]} -{"id":"flytter@/","persona":"flytter","need":"endre-medlemskap","page":"/","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få hjelp fra naboer, eller gi en hånd":"Få hjelp fra naboer, eller gi en hånd","Meld fra om noe som ikke er som det skal":"Meld fra om noe som ikke er som det skal","Si din mening eller gi en hånd":"Si din mening eller gi en hånd"}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"flytter@/medlem","persona":"flytter","need":"endre-medlemskap","page":"/medlem","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre opplysningene dine?\". Which alternative do they choose?","criteria":{"Bli medlem av velet":"Bli medlem av velet","Oppdater opplysningene dine":"Oppdater opplysningene dine"}}},"expect":["Oppdater opplysningene dine"]} -{"id":"skolevei@/","persona":"skolevei","need":"trafikkfare","page":"/","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få hjelp fra naboer, eller gi en hånd":"Få hjelp fra naboer, eller gi en hånd","Meld fra om noe som ikke er som det skal":"Meld fra om noe som ikke er som det skal","Si din mening eller gi en hånd":"Si din mening eller gi en hånd"}}},"expect":["Meld fra om noe som ikke er som det skal"]} -{"id":"skolevei@/melde-fra","persona":"skolevei","need":"trafikkfare","page":"/melde-fra","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Har du sett noe i nabolaget som bør meldes fra om?\". Which alternative do they choose?","criteria":{"Få fikset noe som er ødelagt":"Få fikset noe som er ødelagt","Gjør trafikken tryggere der du bor":"Gjør trafikken tryggere der du bor"}}},"expect":["Gjør trafikken tryggere der du bor"]} -{"id":"busslomme@/","persona":"busslomme","need":"trafikkfare","page":"/","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få hjelp fra naboer, eller gi en hånd":"Få hjelp fra naboer, eller gi en hånd","Meld fra om noe som ikke er som det skal":"Meld fra om noe som ikke er som det skal","Si din mening eller gi en hånd":"Si din mening eller gi en hånd"}}},"expect":["Meld fra om noe som ikke er som det skal"]} -{"id":"busslomme@/melde-fra","persona":"busslomme","need":"trafikkfare","page":"/melde-fra","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Har du sett noe i nabolaget som bør meldes fra om?\". Which alternative do they choose?","criteria":{"Få fikset noe som er ødelagt":"Få fikset noe som er ødelagt","Gjør trafikken tryggere der du bor":"Gjør trafikken tryggere der du bor"}}},"expect":["Gjør trafikken tryggere der du bor"]} -{"id":"huske@/","persona":"huske","need":"anleggsfeil","page":"/","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få hjelp fra naboer, eller gi en hånd":"Få hjelp fra naboer, eller gi en hånd","Meld fra om noe som ikke er som det skal":"Meld fra om noe som ikke er som det skal","Si din mening eller gi en hånd":"Si din mening eller gi en hånd"}}},"expect":["Meld fra om noe som ikke er som det skal"]} -{"id":"huske@/melde-fra","persona":"huske","need":"anleggsfeil","page":"/melde-fra","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Har du sett noe i nabolaget som bør meldes fra om?\". Which alternative do they choose?","criteria":{"Få fikset noe som er ødelagt":"Få fikset noe som er ødelagt","Gjør trafikken tryggere der du bor":"Gjør trafikken tryggere der du bor"}}},"expect":["Få fikset noe som er ødelagt"]} -{"id":"bru@/","persona":"bru","need":"anleggsfeil","page":"/","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få hjelp fra naboer, eller gi en hånd":"Få hjelp fra naboer, eller gi en hånd","Meld fra om noe som ikke er som det skal":"Meld fra om noe som ikke er som det skal","Si din mening eller gi en hånd":"Si din mening eller gi en hånd"}}},"expect":["Meld fra om noe som ikke er som det skal"]} -{"id":"bru@/melde-fra","persona":"bru","need":"anleggsfeil","page":"/melde-fra","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Har du sett noe i nabolaget som bør meldes fra om?\". Which alternative do they choose?","criteria":{"Få fikset noe som er ødelagt":"Få fikset noe som er ødelagt","Gjør trafikken tryggere der du bor":"Gjør trafikken tryggere der du bor"}}},"expect":["Få fikset noe som er ødelagt"]} -{"id":"blokker@/","persona":"blokker","need":"horingsinnspill","page":"/","state":{"body":"Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få hjelp fra naboer, eller gi en hånd":"Få hjelp fra naboer, eller gi en hånd","Meld fra om noe som ikke er som det skal":"Meld fra om noe som ikke er som det skal","Si din mening eller gi en hånd":"Si din mening eller gi en hånd"}}},"expect":["Si din mening eller gi en hånd"]} -{"id":"blokker@/bidra","persona":"blokker","need":"horingsinnspill","page":"/bidra","state":{"body":"Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hvordan vil du bidra?\". Which alternative do they choose?","criteria":{"Bli med på et arrangement eller en dugnad":"Bli med på et arrangement eller en dugnad","Få din mening med i velets høringssvar":"Få din mening med i velets høringssvar","Få en plass i komiteen du brenner for":"Få en plass i komiteen du brenner for"}}},"expect":["Få din mening med i velets høringssvar"]} -{"id":"togtider@/","persona":"togtider","need":"horingsinnspill","page":"/","state":{"body":"Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få hjelp fra naboer, eller gi en hånd":"Få hjelp fra naboer, eller gi en hånd","Meld fra om noe som ikke er som det skal":"Meld fra om noe som ikke er som det skal","Si din mening eller gi en hånd":"Si din mening eller gi en hånd"}}},"expect":["Si din mening eller gi en hånd"]} -{"id":"togtider@/bidra","persona":"togtider","need":"horingsinnspill","page":"/bidra","state":{"body":"Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hvordan vil du bidra?\". Which alternative do they choose?","criteria":{"Bli med på et arrangement eller en dugnad":"Bli med på et arrangement eller en dugnad","Få din mening med i velets høringssvar":"Få din mening med i velets høringssvar","Få en plass i komiteen du brenner for":"Få en plass i komiteen du brenner for"}}},"expect":["Få din mening med i velets høringssvar"]} -{"id":"vafler@/","persona":"vafler","need":"hjelpe-til","page":"/","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få hjelp fra naboer, eller gi en hånd":"Få hjelp fra naboer, eller gi en hånd","Meld fra om noe som ikke er som det skal":"Meld fra om noe som ikke er som det skal","Si din mening eller gi en hånd":"Si din mening eller gi en hånd"}}},"expect":["Si din mening eller gi en hånd"]} -{"id":"vafler@/bidra","persona":"vafler","need":"hjelpe-til","page":"/bidra","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hvordan vil du bidra?\". Which alternative do they choose?","criteria":{"Bli med på et arrangement eller en dugnad":"Bli med på et arrangement eller en dugnad","Få din mening med i velets høringssvar":"Få din mening med i velets høringssvar","Få en plass i komiteen du brenner for":"Få en plass i komiteen du brenner for"}}},"expect":["Bli med på et arrangement eller en dugnad"]} -{"id":"motorsag@/","persona":"motorsag","need":"hjelpe-til","page":"/","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få hjelp fra naboer, eller gi en hånd":"Få hjelp fra naboer, eller gi en hånd","Meld fra om noe som ikke er som det skal":"Meld fra om noe som ikke er som det skal","Si din mening eller gi en hånd":"Si din mening eller gi en hånd"}}},"expect":["Si din mening eller gi en hånd"]} -{"id":"motorsag@/bidra","persona":"motorsag","need":"hjelpe-til","page":"/bidra","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hvordan vil du bidra?\". Which alternative do they choose?","criteria":{"Bli med på et arrangement eller en dugnad":"Bli med på et arrangement eller en dugnad","Få din mening med i velets høringssvar":"Få din mening med i velets høringssvar","Få en plass i komiteen du brenner for":"Få en plass i komiteen du brenner for"}}},"expect":["Bli med på et arrangement eller en dugnad"]} -{"id":"pendler@/","persona":"pendler","need":"komite","page":"/","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få hjelp fra naboer, eller gi en hånd":"Få hjelp fra naboer, eller gi en hånd","Meld fra om noe som ikke er som det skal":"Meld fra om noe som ikke er som det skal","Si din mening eller gi en hånd":"Si din mening eller gi en hånd"}}},"expect":["Si din mening eller gi en hånd"]} -{"id":"pendler@/bidra","persona":"pendler","need":"komite","page":"/bidra","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hvordan vil du bidra?\". Which alternative do they choose?","criteria":{"Bli med på et arrangement eller en dugnad":"Bli med på et arrangement eller en dugnad","Få din mening med i velets høringssvar":"Få din mening med i velets høringssvar","Få en plass i komiteen du brenner for":"Få en plass i komiteen du brenner for"}}},"expect":["Få en plass i komiteen du brenner for"]} -{"id":"planlegger@/","persona":"planlegger","need":"komite","page":"/","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få hjelp fra naboer, eller gi en hånd":"Få hjelp fra naboer, eller gi en hånd","Meld fra om noe som ikke er som det skal":"Meld fra om noe som ikke er som det skal","Si din mening eller gi en hånd":"Si din mening eller gi en hånd"}}},"expect":["Si din mening eller gi en hånd"]} -{"id":"planlegger@/bidra","persona":"planlegger","need":"komite","page":"/bidra","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hvordan vil du bidra?\". Which alternative do they choose?","criteria":{"Bli med på et arrangement eller en dugnad":"Bli med på et arrangement eller en dugnad","Få din mening med i velets høringssvar":"Få din mening med i velets høringssvar","Få en plass i komiteen du brenner for":"Få en plass i komiteen du brenner for"}}},"expect":["Få en plass i komiteen du brenner for"]} -{"id":"tilhenger@/","persona":"tilhenger","need":"dele-utstyr","page":"/","state":{"body":"Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få hjelp fra naboer, eller gi en hånd":"Få hjelp fra naboer, eller gi en hånd","Meld fra om noe som ikke er som det skal":"Meld fra om noe som ikke er som det skal","Si din mening eller gi en hånd":"Si din mening eller gi en hånd"}}},"expect":["Få hjelp fra naboer, eller gi en hånd"]} -{"id":"tilhenger@/naboer","persona":"tilhenger","need":"dele-utstyr","page":"/naboer","state":{"body":"Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du stille opp for en nabo?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån det naboene trenger":"Lån ut eller lån det naboene trenger"}}},"expect":["Lån ut eller lån det naboene trenger"]} -{"id":"stige@/","persona":"stige","need":"dele-utstyr","page":"/","state":{"body":"Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få hjelp fra naboer, eller gi en hånd":"Få hjelp fra naboer, eller gi en hånd","Meld fra om noe som ikke er som det skal":"Meld fra om noe som ikke er som det skal","Si din mening eller gi en hånd":"Si din mening eller gi en hånd"}}},"expect":["Få hjelp fra naboer, eller gi en hånd"]} -{"id":"stige@/naboer","persona":"stige","need":"dele-utstyr","page":"/naboer","state":{"body":"Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du stille opp for en nabo?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån det naboene trenger":"Lån ut eller lån det naboene trenger"}}},"expect":["Lån ut eller lån det naboene trenger"]} -{"id":"snomaking@/","persona":"snomaking","need":"trenger-hjelp","page":"/","state":{"body":"Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få hjelp fra naboer, eller gi en hånd":"Få hjelp fra naboer, eller gi en hånd","Meld fra om noe som ikke er som det skal":"Meld fra om noe som ikke er som det skal","Si din mening eller gi en hånd":"Si din mening eller gi en hånd"}}},"expect":["Få hjelp fra naboer, eller gi en hånd"]} -{"id":"snomaking@/naboer","persona":"snomaking","need":"trenger-hjelp","page":"/naboer","state":{"body":"Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du stille opp for en nabo?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån det naboene trenger":"Lån ut eller lån det naboene trenger"}}},"expect":["Få en nabo til å stille opp"]} -{"id":"nyoperert@/","persona":"nyoperert","need":"trenger-hjelp","page":"/","state":{"body":"Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få hjelp fra naboer, eller gi en hånd":"Få hjelp fra naboer, eller gi en hånd","Meld fra om noe som ikke er som det skal":"Meld fra om noe som ikke er som det skal","Si din mening eller gi en hånd":"Si din mening eller gi en hånd"}}},"expect":["Få hjelp fra naboer, eller gi en hånd"]} -{"id":"nyoperert@/naboer","persona":"nyoperert","need":"trenger-hjelp","page":"/naboer","state":{"body":"Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du stille opp for en nabo?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån det naboene trenger":"Lån ut eller lån det naboene trenger"}}},"expect":["Få en nabo til å stille opp"]} -{"id":"hjemmekontor@/","persona":"hjemmekontor","need":"kan-hjelpe","page":"/","state":{"body":"Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få hjelp fra naboer, eller gi en hånd":"Få hjelp fra naboer, eller gi en hånd","Meld fra om noe som ikke er som det skal":"Meld fra om noe som ikke er som det skal","Si din mening eller gi en hånd":"Si din mening eller gi en hånd"}}},"expect":["Få hjelp fra naboer, eller gi en hånd"]} -{"id":"hjemmekontor@/naboer","persona":"hjemmekontor","need":"kan-hjelpe","page":"/naboer","state":{"body":"Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du stille opp for en nabo?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån det naboene trenger":"Lån ut eller lån det naboene trenger"}}},"expect":["Bli spurt når en nabo trenger en hånd"]} -{"id":"pensjonert-elektriker@/","persona":"pensjonert-elektriker","need":"kan-hjelpe","page":"/","state":{"body":"Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre i dag?\". Which alternative do they choose?","criteria":{"Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få hjelp fra naboer, eller gi en hånd":"Få hjelp fra naboer, eller gi en hånd","Meld fra om noe som ikke er som det skal":"Meld fra om noe som ikke er som det skal","Si din mening eller gi en hånd":"Si din mening eller gi en hånd"}}},"expect":["Få hjelp fra naboer, eller gi en hånd"]} -{"id":"pensjonert-elektriker@/naboer","persona":"pensjonert-elektriker","need":"kan-hjelpe","page":"/naboer","state":{"body":"Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du stille opp for en nabo?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån det naboene trenger":"Lån ut eller lån det naboene trenger"}}},"expect":["Bli spurt når en nabo trenger en hånd"]} diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/README.md b/vendor/trainer/runs/tomtervel-claude-2026-09-22/README.md deleted file mode 100644 index 8b9e735..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/README.md +++ /dev/null @@ -1,55 +0,0 @@ -# Tomter Vel, built from `plans/tomtervel.yaml`, Claude Sonnet writing the words - -`build` with `MODEL=sonnet engines/claude.sh` (Claude Code's print -mode on a Max subscription), every one of 21 pages worded, first try, -verifier green by construction. Visitor: qwen3:8b, one task per call. -Personas: 17, held out. question_lint from portal at d7f60ea. - -| Visitor could read | Routed right | -|---|---| -| Headings and descriptions | 25 of 30 | -| Headings only | 22 of 30 | - -Thirty tasks because every persona behind a door is asked twice: the -door on `/`, then the form on the door's page. - -## What the misroutes say - -- **"Utstyr" is the wrong word.** The playground form is headed "Få - ødelagt utstyr fikset før noen skader seg". A swing on one chain and - a rotten plank on the river path both went to the traffic form, on - headings alone and with descriptions. To the visitor those are "the - playground" and "the path", not equipment. The plan's `who` says so; - the heading should too. -- **Hearing input is behind the wrong door.** Both hearing personas - ("the municipality wants to build blocks", "Ruter will cut the early - train") chose "Meld fra om noe i nabolaget" on headings alone. A - resident with an opinion on a municipal case is reporting something, - not volunteering. Opus's plan for the same intake put hearing input - straight on the front door; that reads better. -- **The `bidra` door holds three things that blur.** The waffle - volunteer chose the hearing form on headings, the committee form with - descriptions; the planner who wants a committee seat chose the - hearing form both times. "Get a seat on the committee that suits - you" and "get your view into the vel's hearing reply" overlap for - anyone whose interest is planning. Two doors, one for doing and one - for having a say, would separate them. -- **Membership on headings alone.** A newcomer asking "how do we join - and what does it cost" chose "Bli med og gjøre en innsats". "Bli - med" (join) is on the wrong heading: it is the words a newcomer is - looking for, and it sits on the volunteering door. - -None of these is a Norwegian problem; the pages read naturally and -LIX is 23 to 35 throughout. They are heading choices, and each names -one distinction the vel makes that a resident does not. - -## Rate, page by page - -`rate` now scores every page on a path: the front door (`@/`) is -where the door is chosen and carries no form; the door's page is -where the form and the followup are. The front door's "asked" column -is therefore near zero and means nothing there; the door pages all -say what the form asks and what happens next. The control fails on -"asked" for four pages, where one of two personas said yes to the -gutted twin; with two personas the control is strict and one stray -yes fails it. See `rate.txt`. diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/aggregates.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/aggregates.yaml deleted file mode 100644 index 23af7ad..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/aggregates.yaml +++ /dev/null @@ -1,131 +0,0 @@ -aggregates: -- bucket: anleggsfeil - initial: open - states: - open: - event: received - tatt_tak_i: - event: tatt_tak_i - utbedret: - event: utbedret - transitions: - open: - - tatt_tak_i - tatt_tak_i: - - utbedret -- bucket: frivillige - initial: open - states: - kontaktet: - event: kontaktet - open: - event: received - satt_opp: - event: satt_opp - takket_nei: - event: takket_nei - transitions: - kontaktet: - - satt_opp - - takket_nei - open: - - kontaktet - - takket_nei -- bucket: husstander - initial: open - states: - betalt: - event: betalt - open: - event: received - utmeldt: - event: utmeldt - transitions: - open: - - betalt - - utmeldt -- bucket: innspill - initial: open - states: - ikke_tatt_med: - event: ikke_tatt_med - open: - event: received - tatt_med: - event: tatt_med - transitions: - open: - - tatt_med - - ikke_tatt_med -- bucket: komitesoknader - initial: open - states: - avslatt: - event: avslatt - open: - event: received - plassert: - event: plassert - transitions: - open: - - plassert - - avslatt -- bucket: medlemsendringer - initial: open - states: - open: - event: received - oppdatert: - event: oppdatert - transitions: - open: - - oppdatert -- bucket: oppslag - initial: open - states: - lagt_ut: - event: lagt_ut - open: - event: received - tatt_ned: - event: tatt_ned - transitions: - open: - - lagt_ut - - tatt_ned -- bucket: trafikkmeldinger - initial: open - states: - avvist: - event: avvist - open: - event: received - ordnet: - event: ordnet - tatt_opp: - event: tatt_opp - transitions: - open: - - tatt_opp - - avvist - tatt_opp: - - ordnet - - avvist -- bucket: utlegg - initial: open - states: - avvist: - event: avvist - godkjent: - event: godkjent - open: - event: received - utbetalt: - event: utbetalt - transitions: - godkjent: - - utbetalt - - avvist - open: - - godkjent - - avvist diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/answers-full.jsonl b/vendor/trainer/runs/tomtervel-claude-2026-09-22/answers-full.jsonl deleted file mode 100644 index c95b43a..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/answers-full.jsonl +++ /dev/null @@ -1,30 +0,0 @@ -{"choice":"Meld deg inn eller endre opplysningene dine","confidence":0.95,"id":"nyinnflyttet@/"} -{"choice":"Bli med i velet","confidence":0.95,"id":"nyinnflyttet@/medlem"} -{"choice":"Bli med og gjøre en innsats","confidence":0.85,"id":"glemte-a-betale@/"} -{"choice":"Bli med i velet","confidence":0.85,"id":"glemte-a-betale@/medlem"} -{"choice":"Meld deg inn eller endre opplysningene dine","confidence":0.95,"id":"ny-epost@/"} -{"choice":"Hold opplysningene dine oppdatert","confidence":1.0,"id":"ny-epost@/medlem"} -{"choice":"Meld deg inn eller endre opplysningene dine","confidence":0.95,"id":"flytter@/"} -{"choice":"Hold opplysningene dine oppdatert","confidence":0.95,"id":"flytter@/medlem"} -{"choice":"Meld fra om noe i nabolaget","confidence":0.95,"id":"skolevei@/"} -{"choice":"Få en farlig trafikkplass tatt opp med kommunen","confidence":0.95,"id":"skolevei@/melde-fra"} -{"choice":"Meld fra om noe i nabolaget","confidence":0.95,"id":"busslomme@/"} -{"choice":"Få en farlig trafikkplass tatt opp med kommunen","confidence":0.95,"id":"busslomme@/melde-fra"} -{"choice":"Meld fra om noe i nabolaget","confidence":0.95,"id":"huske@/"} -{"choice":"Få ødelagt utstyr fikset før noen skader seg","confidence":0.95,"id":"huske@/melde-fra"} -{"choice":"Meld fra om noe i nabolaget","confidence":0.95,"id":"bru@/"} -{"choice":"Få en farlig trafikkplass tatt opp med kommunen","confidence":0.85,"id":"bru@/melde-fra"} -{"choice":"Bli med og gjøre en innsats","confidence":0.95,"id":"blokker@/"} -{"choice":"Få din mening med i velets høringssvar","confidence":0.95,"id":"blokker@/bidra"} -{"choice":"Meld deg inn eller endre opplysningene dine","confidence":0.95,"id":"togtider@/"} -{"choice":"Få din mening med i velets høringssvar","confidence":0.95,"id":"togtider@/bidra"} -{"choice":"Bli med og gjøre en innsats","confidence":0.85,"id":"vafler@/"} -{"choice":"Få en plass i komiteen som passer deg","confidence":0.95,"id":"vafler@/bidra"} -{"choice":"Bli med og gjøre en innsats","confidence":0.95,"id":"motorsag@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"motorsag@/bidra"} -{"choice":"Bli med og gjøre en innsats","confidence":0.95,"id":"pendler@/"} -{"choice":"Få en plass i komiteen som passer deg","confidence":0.95,"id":"pendler@/bidra"} -{"choice":"Bli med og gjøre en innsats","confidence":0.95,"id":"planlegger@/"} -{"choice":"Få din mening med i velets høringssvar","confidence":0.95,"id":"planlegger@/bidra"} -{"choice":"Lån eller lån ut utstyr til en nabo","confidence":0.95,"id":"tilhenger@/"} -{"choice":"Lån eller lån ut utstyr til en nabo","confidence":0.95,"id":"stige@/"} diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/answers-skim.jsonl b/vendor/trainer/runs/tomtervel-claude-2026-09-22/answers-skim.jsonl deleted file mode 100644 index 7d26466..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/answers-skim.jsonl +++ /dev/null @@ -1,30 +0,0 @@ -{"choice":"Bli med og gjøre en innsats","confidence":0.85,"id":"nyinnflyttet@/"} -{"choice":"Bli med i velet","confidence":0.95,"id":"nyinnflyttet@/medlem"} -{"choice":"Meld deg inn eller endre opplysningene dine","confidence":0.85,"id":"glemte-a-betale@/"} -{"choice":"Bli med i velet","confidence":0.95,"id":"glemte-a-betale@/medlem"} -{"choice":"Meld deg inn eller endre opplysningene dine","confidence":0.95,"id":"ny-epost@/"} -{"choice":"Hold opplysningene dine oppdatert","confidence":0.95,"id":"ny-epost@/medlem"} -{"choice":"Meld deg inn eller endre opplysningene dine","confidence":0.95,"id":"flytter@/"} -{"choice":"Hold opplysningene dine oppdatert","confidence":0.95,"id":"flytter@/medlem"} -{"choice":"Meld fra om noe i nabolaget","confidence":0.95,"id":"skolevei@/"} -{"choice":"Få en farlig trafikkplass tatt opp med kommunen","confidence":0.95,"id":"skolevei@/melde-fra"} -{"choice":"Bli med og gjøre en innsats","confidence":0.85,"id":"busslomme@/"} -{"choice":"Få en farlig trafikkplass tatt opp med kommunen","confidence":0.85,"id":"busslomme@/melde-fra"} -{"choice":"Meld fra om noe i nabolaget","confidence":0.95,"id":"huske@/"} -{"choice":"Få en farlig trafikkplass tatt opp med kommunen","confidence":0.85,"id":"huske@/melde-fra"} -{"choice":"Meld fra om noe i nabolaget","confidence":0.95,"id":"bru@/"} -{"choice":"Få en farlig trafikkplass tatt opp med kommunen","confidence":0.85,"id":"bru@/melde-fra"} -{"choice":"Meld fra om noe i nabolaget","confidence":0.95,"id":"blokker@/"} -{"choice":"Få din mening med i velets høringssvar","confidence":0.95,"id":"blokker@/bidra"} -{"choice":"Meld fra om noe i nabolaget","confidence":0.95,"id":"togtider@/"} -{"choice":"Få din mening med i velets høringssvar","confidence":0.95,"id":"togtider@/bidra"} -{"choice":"Bli med og gjøre en innsats","confidence":0.95,"id":"vafler@/"} -{"choice":"Få din mening med i velets høringssvar","confidence":0.95,"id":"vafler@/bidra"} -{"choice":"Bli med og gjøre en innsats","confidence":0.95,"id":"motorsag@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"motorsag@/bidra"} -{"choice":"Bli med og gjøre en innsats","confidence":0.95,"id":"pendler@/"} -{"choice":"Få en plass i komiteen som passer deg","confidence":0.95,"id":"pendler@/bidra"} -{"choice":"Bli med og gjøre en innsats","confidence":0.95,"id":"planlegger@/"} -{"choice":"Få din mening med i velets høringssvar","confidence":0.95,"id":"planlegger@/bidra"} -{"choice":"Lån eller lån ut utstyr til en nabo","confidence":0.95,"id":"tilhenger@/"} -{"choice":"Lån eller lån ut utstyr til en nabo","confidence":0.95,"id":"stige@/"} diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/build.log b/vendor/trainer/runs/tomtervel-claude-2026-09-22/build.log deleted file mode 100644 index f65337f..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/build.log +++ /dev/null @@ -1,33 +0,0 @@ -words: questions/arrangementskomite/index.yaml -words: questions/bidra/index.yaml -words: questions/decide/dele-utstyr.yaml -words: questions/index.yaml -words: questions/kasserer/index.yaml -words: questions/komiteer/index.yaml -words: questions/komiteer/utlegg-sent.yaml -words: questions/komiteer/utlegg.yaml -words: questions/lekeplasskomite/index.yaml -words: questions/medlem/index.yaml -words: questions/melde-fra/index.yaml -words: questions/received/anleggsfeil.yaml -words: questions/received/bli-medlem.yaml -words: questions/received/dele-utstyr.yaml -words: questions/received/endre-medlemskap.yaml -words: questions/received/hjelpe-til.yaml -words: questions/received/horingsinnspill.yaml -words: questions/received/komite.yaml -words: questions/received/trafikkfare.yaml -words: questions/styret/index.yaml -words: questions/trafikkomite/index.yaml -content repo written to runs/tomtervel-claude-2026-09-22 -OK: 21 question(s), 10 aggregate(s) valid -need "bli-medlem": / [Meld deg inn eller endre opplysningene dine] -> /medlem [Bli med i velet] -> "husstander" -need "endre-medlemskap": / [Meld deg inn eller endre opplysningene dine] -> /medlem [Hold opplysningene dine oppdatert] -> "medlemsendringer" -need "trafikkfare": / [Meld fra om noe i nabolaget] -> /melde-fra [Få en farlig trafikkplass tatt opp med kommunen] -> "trafikkmeldinger" -need "anleggsfeil": / [Meld fra om noe i nabolaget] -> /melde-fra [Få ødelagt utstyr fikset før noen skader seg] -> "anleggsfeil" -need "horingsinnspill": / [Bli med og gjøre en innsats] -> /bidra [Få din mening med i velets høringssvar] -> "innspill" -need "hjelpe-til": / [Bli med og gjøre en innsats] -> /bidra [Bli med på dugnad eller arrangement] -> "frivillige" -need "komite": / [Bli med og gjøre en innsats] -> /bidra [Få en plass i komiteen som passer deg] -> "komitesoknader" -need "dele-utstyr": / [Lån eller lån ut utstyr til en nabo] -> "oppslag" -need "utlegg": /komiteer/utlegg [Få tilbake penger du har lagt ut] -> "utlegg" -OK: 9 need(s) structurally met, 0 planned, 17 persona(s) diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/01-questions_arrangementskomite_index.yaml.md b/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/01-questions_arrangementskomite_index.yaml.md deleted file mode 100644 index c17df38..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/01-questions_arrangementskomite_index.yaml.md +++ /dev/null @@ -1,75 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/arrangementskomite/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "frivillige": { - "description": "", - "heading": "", - "moves": { - "kontaktet->satt_opp": "satt_opp>", - "kontaktet->takket_nei": "takket_nei>", - "open->kontaktet": "kontaktet>", - "open->takket_nei": "takket_nei>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "frivillige": { - "description": "Alle som har sagt de vil hjelpe til, og hvor langt du har kommet med å sette dem i sving.", - "heading": "Folk som vil hjelpe til", - "moves": { - "kontaktet->satt_opp": "Satt på oppgave", - "kontaktet->takket_nei": "Takket nei", - "open->kontaktet": "Tatt kontakt", - "open->takket_nei": "Takket nei" - } - } - }, - "confirm": "Lagre", - "description": "Her holder du oversikt over frivillige og setter dem opp på arrangementer og dugnader.", - "links": {}, - "question": "Hvem kan jeg sette i sving?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/02-questions_bidra_index.yaml.md b/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/02-questions_bidra_index.yaml.md deleted file mode 100644 index 197667a..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/02-questions_bidra_index.yaml.md +++ /dev/null @@ -1,117 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/bidra/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "hjelpe-til": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "hva": "", - "navn": "", - "telefon": "" - } - }, - "horingsinnspill": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "innspill": "", - "navn": "", - "sak": "" - } - }, - "komite": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "epost": "", - "komite": "", - "navn": "" - } - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Tomter Vel drives på frivillig innsats. Her kan du hjelpe til på et arrangement, si din mening i en høringssak, eller sitte i en komité.", - "needs": { - "hjelpe-til": { - "button": "Meld deg", - "description": "Vi trenger folk til dugnader og arrangementer gjennom året. Si fra hva du kan bidra med, så tar vi kontakt.", - "form_title": "Meld deg som frivillig", - "heading": "Bli med på dugnad eller arrangement", - "labels": { - "hva": "Hva kan du bidra med?", - "navn": "Navn", - "telefon": "Telefon" - } - }, - "horingsinnspill": { - "button": "Send innspill", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så vurderer styret det til vårt svar.", - "form_title": "Send høringsinnspill", - "heading": "Få din mening med i velets høringssvar", - "labels": { - "innspill": "Ditt innspill", - "navn": "Navn", - "sak": "Hvilken sak gjelder det?" - } - }, - "komite": { - "button": "Meld interesse", - "description": "Vi har sju komiteer som trenger folk. Fortell hvilken du er interessert i, så tar styret kontakt.", - "form_title": "Bli med i en komité", - "heading": "Få en plass i komiteen som passer deg", - "labels": { - "epost": "E-post", - "komite": "Hvilken komité?", - "navn": "Navn" - } - } - }, - "question": "Vil du hjelpe til eller si din mening?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/03-questions_decide_dele-utstyr.yaml.md b/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/03-questions_decide_dele-utstyr.yaml.md deleted file mode 100644 index b1371a8..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/03-questions_decide_dele-utstyr.yaml.md +++ /dev/null @@ -1,61 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/decide/dele-utstyr.yaml -It is a page the person who sent a form reaches later, through a private link, to make a decision that is theirs: under `moves`, each entry is one thing they can decide. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "moves": { - "tatt_ned": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Du la ut noe naboene kunne låne. Her ser du om det er tid for å ta det ned igjen.", - "moves": { - "tatt_ned": { - "button": "Ta ned oppslaget", - "description": "Oppslaget fjernes fra siden. Passer når tingen er lånt bort, hentet tilbake eller ikke lenger aktuell.", - "heading": "Fjern oppslaget om utlånet" - } - }, - "question": "Skal oppslaget om det du delte fortsatt stå ute?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/04-questions_index.yaml.md b/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/04-questions_index.yaml.md deleted file mode 100644 index f820a67..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/04-questions_index.yaml.md +++ /dev/null @@ -1,109 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/index.yaml -It is the front door: the first page any visitor sees. `question` is the page's one question. Under `doors`, each entry is one alternative that leads to a page of its own for one kind of visitor: its heading must let that visitor recognise themselves from the heading alone. Under `needs`, each entry is one alternative with a form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "doors": { - "bidra": { - "button": "", - "description": "", - "heading": "" - }, - "medlem": { - "button": "", - "description": "", - "heading": "" - }, - "melde-fra": { - "button": "", - "description": "", - "heading": "" - } - }, - "needs": { - "dele-utstyr": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "email": "", - "har_eller_trenger": "", - "hva": "", - "navn": "" - } - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Tomter Vel er velforeningen for Tomter, og har jobbet for bygda siden 1947. Her finner du veien videre, enten du vil bli medlem, melde fra om noe, eller bidra selv.", - "doors": { - "bidra": { - "button": "Bidra", - "description": "Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.", - "heading": "Bli med og gjøre en innsats" - }, - "medlem": { - "button": "Medlemskap", - "description": "Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.", - "heading": "Meld deg inn eller endre opplysningene dine" - }, - "melde-fra": { - "button": "Meld fra", - "description": "Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det.", - "heading": "Meld fra om noe i nabolaget" - } - }, - "needs": { - "dele-utstyr": { - "button": "Legg ut", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.", - "form_title": "Lån eller lån ut", - "heading": "Lån eller lån ut utstyr til en nabo", - "labels": { - "email": "E-post", - "har_eller_trenger": "Har du noe å låne ut, eller trenger du å låne?", - "hva": "Hva gjelder det?", - "navn": "Navn" - } - } - }, - "question": "Hva vil du gjøre?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/05-questions_kasserer_index.yaml.md b/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/05-questions_kasserer_index.yaml.md deleted file mode 100644 index d7e37e0..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/05-questions_kasserer_index.yaml.md +++ /dev/null @@ -1,105 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/kasserer/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "husstander": { - "description": "", - "heading": "", - "moves": { - "open->betalt": "betalt>", - "open->utmeldt": "utmeldt>" - } - }, - "medlemsendringer": { - "description": "", - "heading": "", - "moves": { - "open->oppdatert": "oppdatert>" - } - }, - "utlegg": { - "description": "", - "heading": "", - "moves": { - "godkjent->avvist": "avvist>", - "godkjent->utbetalt": "utbetalt>", - "open->avvist": "avvist>", - "open->godkjent": "godkjent>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "husstander": { - "description": "Husstander som vil bli medlem eller har betalt kontingenten, klare for oppfølging.", - "heading": "Husstander som vil bli medlem", - "moves": { - "open->betalt": "Merk som betalt", - "open->utmeldt": "Meld ut" - } - }, - "medlemsendringer": { - "description": "Medlemmer som har flyttet, byttet e-post eller vil melde seg ut.", - "heading": "Endringer i medlemsopplysninger", - "moves": { - "open->oppdatert": "Oppdater opplysninger" - } - }, - "utlegg": { - "description": "Utlegg fra komiteene som venter på godkjenning eller utbetaling.", - "heading": "Utlegg som skal dekkes", - "moves": { - "godkjent->avvist": "Avvis likevel", - "godkjent->utbetalt": "Merk som utbetalt", - "open->avvist": "Avvis", - "open->godkjent": "Godkjenn" - } - } - }, - "confirm": "Bekreft", - "description": "Her holder du styr på medlemskap, kontingent og utlegg fra komiteene.", - "links": {}, - "question": "Hvem venter på svar fra kasserer?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/06-questions_komiteer_index.yaml.md b/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/06-questions_komiteer_index.yaml.md deleted file mode 100644 index 59bd4e0..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/06-questions_komiteer_index.yaml.md +++ /dev/null @@ -1,63 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/komiteer/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": {}, - "confirm": "", - "description": "", - "links": { - "utlegg": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "buckets": {}, - "confirm": "Lagre", - "description": "Her ser komiteen sakene som venter, og kan flytte dem videre etter hvert som dere tar tak i dem.", - "links": { - "utlegg": { - "button": "Legg inn utlegg", - "description": "Har du lagt ut penger for komiteen? Registrer det her, så tar kasserer seg av resten.", - "heading": "Få tilbake penger du har lagt ut" - } - }, - "question": "Hva står på tur for komiteen nå?" -} diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/07-questions_komiteer_utlegg-sent.yaml.md b/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/07-questions_komiteer_utlegg-sent.yaml.md deleted file mode 100644 index baa2b81..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/07-questions_komiteer_utlegg-sent.yaml.md +++ /dev/null @@ -1,51 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/komiteer/utlegg-sent.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Til forsiden", - "description": "Takk for at du sender inn utlegget ditt. Vi har mottatt det og sender det videre til kasserer.", - "next_description": "Kasserer ser gjennom utlegget og godkjenner det før pengene blir betalt tilbake til kontoen din.", - "next_heading": "Kasserer godkjenner og betaler tilbake", - "question": "Hva skjer med utlegget mitt nå?" -} diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/08-questions_komiteer_utlegg.yaml.md b/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/08-questions_komiteer_utlegg.yaml.md deleted file mode 100644 index 56d5dbd..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/08-questions_komiteer_utlegg.yaml.md +++ /dev/null @@ -1,65 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/komiteer/utlegg.yaml -It is a page only one role inside the business can open, holding one form. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "belop": "", - "hva": "", - "navn": "" - }, - "page_description": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "button": "Send inn", - "description": "Har du lagt ut for noe til komiteen? Fyll inn hva det gjaldt og hvor mye, så tar kasserer det videre.", - "form_title": "Krav om refusjon", - "heading": "Få tilbake penger du har lagt ut", - "labels": { - "belop": "Beløp (kr)", - "hva": "Hva gjaldt utlegget", - "navn": "Ditt navn" - }, - "page_description": "For deg som sitter i en komité og har betalt noe av egen lomme for velet.", - "question": "Har jeg lagt ut penger for velet som jeg skal ha tilbake?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/09-questions_lekeplasskomite_index.yaml.md b/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/09-questions_lekeplasskomite_index.yaml.md deleted file mode 100644 index 4ef6153..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/09-questions_lekeplasskomite_index.yaml.md +++ /dev/null @@ -1,71 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/lekeplasskomite/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "anleggsfeil": { - "description": "", - "heading": "", - "moves": { - "open->tatt_tak_i": "tatt_tak_i>", - "tatt_tak_i->utbedret": "utbedret>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "anleggsfeil": { - "description": "Meldinger fra naboer om noe som er ødelagt på lekeplassen eller langs stien.", - "heading": "Feil som er meldt inn", - "moves": { - "open->tatt_tak_i": "Ta tak i den", - "tatt_tak_i->utbedret": "Merk som utbedret" - } - } - }, - "confirm": "Lagre", - "description": "Her holder du oversikt over meldte feil på lekeplassene og elvestien, og følger opp til de er utbedret.", - "links": {}, - "question": "Hva må fikses på lekeplassene og stien nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/10-questions_medlem_index.yaml.md b/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/10-questions_medlem_index.yaml.md deleted file mode 100644 index 011ab23..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/10-questions_medlem_index.yaml.md +++ /dev/null @@ -1,97 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/medlem/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "bli-medlem": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "adresse": "", - "epost": "", - "navn": "", - "telefon": "" - } - }, - "endre-medlemskap": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "adresse": "", - "hva_er_nytt": "", - "navn": "" - } - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Velet holder oversikt over hvem som bor på Tomter, slik at vi vet hvem vi jobber for.", - "needs": { - "bli-medlem": { - "button": "Meld deg inn", - "description": "157 husstander er med allerede. Fyll ut skjemaet, så sender kasserer deg giroen.", - "form_title": "Bli medlem", - "heading": "Bli med i velet", - "labels": { - "adresse": "Adresse", - "epost": "E-post", - "navn": "Navn", - "telefon": "Telefon" - } - }, - "endre-medlemskap": { - "button": "Send endring", - "description": "Flyttet, byttet e-post, eller vil melde deg ut? Si fra, så retter kasserer det opp.", - "form_title": "Endre medlemskap", - "heading": "Hold opplysningene dine oppdatert", - "labels": { - "adresse": "Adresse", - "hva_er_nytt": "Hva har endret seg", - "navn": "Navn" - } - } - }, - "question": "Vil du bli medlem, eller endre noe ved medlemskapet ditt?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/11-questions_melde-fra_index.yaml.md b/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/11-questions_melde-fra_index.yaml.md deleted file mode 100644 index aeacb39..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/11-questions_melde-fra_index.yaml.md +++ /dev/null @@ -1,93 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/melde-fra/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "anleggsfeil": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "hva": "", - "hvor": "" - } - }, - "trafikkfare": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "epost": "", - "hva": "", - "hvor": "" - } - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Har du sett noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien? Si fra her, så tar rett komité tak i det.", - "needs": { - "anleggsfeil": { - "button": "Meld fra", - "description": "Er noe på lekeplassen eller langs stien ødelagt eller farlig? Lekeplasskomiteen rykker ut og ser på det.", - "form_title": "Meld fra om feil", - "heading": "Få ødelagt utstyr fikset før noen skader seg", - "labels": { - "hva": "Hva er ødelagt eller farlig?", - "hvor": "Hvor på lekeplassen eller stien?" - } - }, - "trafikkfare": { - "button": "Meld fra", - "description": "Sett en farlig plass i trafikken, for eksempel dårlig sikt eller for høy fart? Vi tar det videre til kommunen eller veieier.", - "form_title": "Meld fra om trafikkfare", - "heading": "Få en farlig trafikkplass tatt opp med kommunen", - "labels": { - "epost": "E-post", - "hva": "Hva er problemet?", - "hvor": "Hvor er dette?" - } - } - }, - "question": "Hva har du sett i nabolaget som ikke er som det skal?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/12-questions_received_anleggsfeil.yaml.md b/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/12-questions_received_anleggsfeil.yaml.md deleted file mode 100644 index 4eaf6a4..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/12-questions_received_anleggsfeil.yaml.md +++ /dev/null @@ -1,53 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/anleggsfeil.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Til forsiden", - "description": "Meldingen din om lekeplassen eller stien er sendt til lekeplasskomiteen.", - "next_description": "Lekeplasskomiteen ser over meldinger jevnlig og tar tak i det som haster mest først.", - "next_heading": "Komiteen tar tak i det", - "question": "Hva skjer med meldingen min nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/13-questions_received_bli-medlem.yaml.md b/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/13-questions_received_bli-medlem.yaml.md deleted file mode 100644 index 6b66092..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/13-questions_received_bli-medlem.yaml.md +++ /dev/null @@ -1,51 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/bli-medlem.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Til forsiden", - "description": "Innmeldingen din er registrert og sendt til kasserer.", - "next_description": "Kasserer sjekker innmeldingen og sender deg kontonummer for kontingenten.", - "next_heading": "Kasserer tar kontakt om betaling", - "question": "Hva skjer nå med innmeldingen min?" -} diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/14-questions_received_dele-utstyr.yaml.md b/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/14-questions_received_dele-utstyr.yaml.md deleted file mode 100644 index 4631b42..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/14-questions_received_dele-utstyr.yaml.md +++ /dev/null @@ -1,53 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/dele-utstyr.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Til forsiden", - "description": "Oppslaget ditt er sendt til styret. Vi legger det ut eller svarer deg så snart vi rekker det.", - "next_description": "Styret legger ut oppslaget slik at naboene kan se det, eller tar kontakt hvis noe er uklart.", - "next_heading": "Oppslaget kommer opp", - "question": "Hva skjer nå med det jeg vil låne ut eller trenger å låne?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/15-questions_received_endre-medlemskap.yaml.md b/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/15-questions_received_endre-medlemskap.yaml.md deleted file mode 100644 index 54265aa..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/15-questions_received_endre-medlemskap.yaml.md +++ /dev/null @@ -1,53 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/endre-medlemskap.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Til forsiden", - "description": "Du har sendt inn endringer til medlemskapet ditt. Kasserer oppdaterer opplysningene så snart de får sett gjennom det som er kommet inn.", - "next_description": "Kasserer går gjennom endringen og oppdaterer medlemslista. Du hører fra oss bare hvis noe er uklart.", - "next_heading": "Kasserer oppdaterer opplysningene dine", - "question": "Hva skjer nå som jeg har sendt inn endringen?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/16-questions_received_hjelpe-til.yaml.md b/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/16-questions_received_hjelpe-til.yaml.md deleted file mode 100644 index 2f69de5..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/16-questions_received_hjelpe-til.yaml.md +++ /dev/null @@ -1,53 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/hjelpe-til.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake til forsiden", - "description": "Takk for at du vil hjelpe til! Meldingen din er sendt til arrangementskomiteen.", - "next_description": "Noen i arrangementskomiteen tar kontakt med deg når det nærmer seg noe du kan bidra på.", - "next_heading": "Komiteen tar kontakt", - "question": "Hva skjer nå som jeg har meldt meg?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/17-questions_received_horingsinnspill.yaml.md b/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/17-questions_received_horingsinnspill.yaml.md deleted file mode 100644 index b5df8de..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/17-questions_received_horingsinnspill.yaml.md +++ /dev/null @@ -1,45 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/horingsinnspill.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{"back": "Til forsiden", "description": "Takk for at du sendte inn høringsinnspillet ditt. Styret tar det med når de skriver velets høringssvar.", "next_description": "Styret samler alle innspill før fristen og vurderer hva som blir med i svaret til kommunen.", "next_heading": "Innspillet ditt vurderes av styret", "question": "Hva skjer med innspillet mitt nå?"} diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/18-questions_received_komite.yaml.md b/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/18-questions_received_komite.yaml.md deleted file mode 100644 index fdc97d2..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/18-questions_received_komite.yaml.md +++ /dev/null @@ -1,53 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/komite.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Til forsiden", - "description": "Takk for at du vil bidra i en komité. Meldingen din har gått til styret.", - "next_description": "Styret tar det opp på neste møte og finner ut hvilken komité som passer best. Du hører fra oss uansett hva vi lander på.", - "next_heading": "Styret finner en plass til deg", - "question": "Hva skjer nå som jeg har meldt interesse for en komité?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/19-questions_received_trafikkfare.yaml.md b/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/19-questions_received_trafikkfare.yaml.md deleted file mode 100644 index 5d0b71d..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/19-questions_received_trafikkfare.yaml.md +++ /dev/null @@ -1,53 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/trafikkfare.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Til forsiden", - "description": "Trafikkfaren du meldte inn er registrert hos oss.", - "next_description": "Trafikkomiteen ser gjennom meldingen og tar den videre med kommunen eller veieier når det er nødvendig.", - "next_heading": "Trafikkomiteen tar det videre", - "question": "Hva skjer med det jeg har meldt inn?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/20-questions_styret_index.yaml.md b/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/20-questions_styret_index.yaml.md deleted file mode 100644 index 7d175c0..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/20-questions_styret_index.yaml.md +++ /dev/null @@ -1,113 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/styret/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "innspill": { - "description": "", - "heading": "", - "moves": { - "open->ikke_tatt_med": "ikke_tatt_med>", - "open->tatt_med": "tatt_med>" - } - }, - "komitesoknader": { - "description": "", - "heading": "", - "moves": { - "open->avslatt": "avslatt>", - "open->plassert": "plassert>" - } - }, - "oppslag": { - "description": "", - "heading": "", - "moves": { - "open->lagt_ut": "lagt_ut>", - "open->tatt_ned": "tatt_ned>" - } - }, - "trafikkmeldinger": { - "description": "", - "heading": "", - "moves": {} - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "innspill": { - "description": "Meninger fra naboer om saker kommunen har på høring, klare til å bli med i velets svar.", - "heading": "Innspill til høringssvar", - "moves": { - "open->ikke_tatt_med": "Tas ikke med", - "open->tatt_med": "Tas med i svaret" - } - }, - "komitesoknader": { - "description": "Naboer som vil sitte i en komité, klare til å bli plassert.", - "heading": "Søknader til komiteene", - "moves": { - "open->avslatt": "Avslå søknad", - "open->plassert": "Plasser i komité" - } - }, - "oppslag": { - "description": "Utstyr naboer vil låne ut eller låne, klart til å legges ut.", - "heading": "Oppslag om utlån", - "moves": { - "open->lagt_ut": "Legg ut", - "open->tatt_ned": "Ta ned" - } - }, - "trafikkmeldinger": { - "description": "Farlige steder i trafikken som naboer har meldt fra om.", - "heading": "Meldte trafikkfarer", - "moves": {} - } - }, - "confirm": "Lagre", - "description": "Skrivebordet der styret behandler høringsinnspill, komitésøknader og oppslag, og holder oversikt over trafikkmeldinger.", - "links": {}, - "question": "Hva venter på styret?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/21-questions_trafikkomite_index.yaml.md b/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/21-questions_trafikkomite_index.yaml.md deleted file mode 100644 index 22b0e03..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/llm/21-questions_trafikkomite_index.yaml.md +++ /dev/null @@ -1,73 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/trafikkomite/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "trafikkmeldinger": { - "description": "", - "heading": "", - "moves": { - "open->avvist": "avvist>", - "open->tatt_opp": "tatt_opp>", - "tatt_opp->avvist": "avvist>", - "tatt_opp->ordnet": "ordnet>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "buckets": { - "trafikkmeldinger": { - "description": "Meldinger om utrygge steder i trafikken, sendt inn av naboer.", - "heading": "Meldte trafikkfarer", - "moves": { - "open->avvist": "Avvis meldingen", - "open->tatt_opp": "Ta den opp", - "tatt_opp->avvist": "Avvis saken", - "tatt_opp->ordnet": "Meld som ordnet" - } - } - }, - "confirm": "Lagre", - "description": "Her følger trafikkomiteen opp meldinger om farlige steder i trafikken, fra de kommer inn til de er tatt opp eller ordnet.", - "links": {}, - "question": "Hvilke trafikkfarer må vi følge opp nå?" -} diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/model.json b/vendor/trainer/runs/tomtervel-claude-2026-09-22/model.json deleted file mode 100644 index 8faa119..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/model.json +++ /dev/null @@ -1,1144 +0,0 @@ -{ - "buckets": { - "anleggsfeil": { - "desks": [ - { - "group": "lekeplasskomite", - "moves": [ - { - "from": "open", - "label": "Ta tak i den", - "to": "tatt_tak_i" - }, - { - "from": "tatt_tak_i", - "label": "Merk som utbedret", - "to": "utbedret" - } - ], - "page": "/lekeplasskomite" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "tatt_tak_i" - ], - "tatt_tak_i": [ - "utbedret" - ] - } - }, - "frivillige": { - "desks": [ - { - "group": "arrangementskomite", - "moves": [ - { - "from": "kontaktet", - "label": "Satt på oppgave", - "to": "satt_opp" - }, - { - "from": "kontaktet", - "label": "Takket nei", - "to": "takket_nei" - }, - { - "from": "open", - "label": "Tatt kontakt", - "to": "kontaktet" - }, - { - "from": "open", - "label": "Takket nei", - "to": "takket_nei" - } - ], - "page": "/arrangementskomite" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "kontaktet": [ - "satt_opp", - "takket_nei" - ], - "open": [ - "kontaktet", - "takket_nei" - ] - } - }, - "husstander": { - "desks": [ - { - "group": "kasserer", - "moves": [ - { - "from": "open", - "label": "Merk som betalt", - "to": "betalt" - }, - { - "from": "open", - "label": "Meld ut", - "to": "utmeldt" - } - ], - "page": "/kasserer" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "betalt", - "utmeldt" - ] - } - }, - "innspill": { - "desks": [ - { - "group": "styret", - "moves": [ - { - "from": "open", - "label": "Tas med i svaret", - "to": "tatt_med" - }, - { - "from": "open", - "label": "Tas ikke med", - "to": "ikke_tatt_med" - } - ], - "page": "/styret" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "tatt_med", - "ikke_tatt_med" - ] - } - }, - "komitesoknader": { - "desks": [ - { - "group": "styret", - "moves": [ - { - "from": "open", - "label": "Plasser i komité", - "to": "plassert" - }, - { - "from": "open", - "label": "Avslå søknad", - "to": "avslatt" - } - ], - "page": "/styret" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "plassert", - "avslatt" - ] - } - }, - "medlemsendringer": { - "desks": [ - { - "group": "kasserer", - "moves": [ - { - "from": "open", - "label": "Oppdater opplysninger", - "to": "oppdatert" - } - ], - "page": "/kasserer" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "oppdatert" - ] - } - }, - "oppslag": { - "desks": [ - { - "group": "styret", - "moves": [ - { - "from": "open", - "label": "Legg ut", - "to": "lagt_ut" - }, - { - "from": "open", - "label": "Ta ned", - "to": "tatt_ned" - } - ], - "page": "/styret" - } - ], - "initial": "open", - "self_moves": [ - "tatt_ned" - ], - "transitions": { - "open": [ - "lagt_ut", - "tatt_ned" - ] - } - }, - "trafikkmeldinger": { - "desks": [ - { - "group": "styret", - "moves": [], - "page": "/styret" - }, - { - "group": "trafikkomite", - "moves": [ - { - "from": "open", - "label": "Ta den opp", - "to": "tatt_opp" - }, - { - "from": "open", - "label": "Avvis meldingen", - "to": "avvist" - }, - { - "from": "tatt_opp", - "label": "Meld som ordnet", - "to": "ordnet" - }, - { - "from": "tatt_opp", - "label": "Avvis saken", - "to": "avvist" - } - ], - "page": "/trafikkomite" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "tatt_opp", - "avvist" - ], - "tatt_opp": [ - "ordnet", - "avvist" - ] - } - }, - "utlegg": { - "desks": [ - { - "group": "kasserer", - "moves": [ - { - "from": "godkjent", - "label": "Merk som utbetalt", - "to": "utbetalt" - }, - { - "from": "godkjent", - "label": "Avvis likevel", - "to": "avvist" - }, - { - "from": "open", - "label": "Godkjenn", - "to": "godkjent" - }, - { - "from": "open", - "label": "Avvis", - "to": "avvist" - } - ], - "page": "/kasserer" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "godkjent": [ - "utbetalt", - "avvist" - ], - "open": [ - "godkjent", - "avvist" - ] - } - } - }, - "needs": [ - { - "done_when": [ - "betalt", - "utmeldt" - ], - "enters_as": null, - "handled_by": "kasserer", - "id": "bli-medlem", - "lands_in": "husstander", - "steps": [ - { - "alternative": "Meld deg inn eller endre opplysningene dine", - "expect": [ - "Meld deg inn eller endre opplysningene dine" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.", - "name": "Meld deg inn eller endre opplysningene dine" - }, - { - "description": "Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det.", - "name": "Meld fra om noe i nabolaget" - }, - { - "description": "Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.", - "name": "Bli med og gjøre en innsats" - }, - { - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.", - "name": "Lån eller lån ut utstyr til en nabo" - } - ], - "page": "/", - "question": "Hva vil du gjøre?" - }, - { - "alternative": "Bli med i velet", - "expect": [ - "Bli med i velet" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Adresse", - "name": "adresse", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "E-post", - "name": "epost", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Telefon", - "name": "telefon", - "optional": true, - "options": [], - "type": "tel" - } - ], - "options": [ - { - "description": "157 husstander er med allerede. Fyll ut skjemaet, så sender kasserer deg giroen.", - "name": "Bli med i velet" - }, - { - "description": "Flyttet, byttet e-post, eller vil melde deg ut? Si fra, så retter kasserer det opp.", - "name": "Hold opplysningene dine oppdatert" - } - ], - "page": "/medlem", - "question": "Vil du bli medlem, eller endre noe ved medlemskapet ditt?" - } - ], - "success": [ - "betalt" - ], - "wants": "å bli medlem og få betalt kontingenten", - "who": "en husstand i Tomter" - }, - { - "done_when": [ - "oppdatert" - ], - "enters_as": null, - "handled_by": "kasserer", - "id": "endre-medlemskap", - "lands_in": "medlemsendringer", - "steps": [ - { - "alternative": "Meld deg inn eller endre opplysningene dine", - "expect": [ - "Meld deg inn eller endre opplysningene dine" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.", - "name": "Meld deg inn eller endre opplysningene dine" - }, - { - "description": "Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det.", - "name": "Meld fra om noe i nabolaget" - }, - { - "description": "Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.", - "name": "Bli med og gjøre en innsats" - }, - { - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.", - "name": "Lån eller lån ut utstyr til en nabo" - } - ], - "page": "/", - "question": "Hva vil du gjøre?" - }, - { - "alternative": "Hold opplysningene dine oppdatert", - "expect": [ - "Hold opplysningene dine oppdatert" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Adresse", - "name": "adresse", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hva har endret seg", - "name": "hva_er_nytt", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "157 husstander er med allerede. Fyll ut skjemaet, så sender kasserer deg giroen.", - "name": "Bli med i velet" - }, - { - "description": "Flyttet, byttet e-post, eller vil melde deg ut? Si fra, så retter kasserer det opp.", - "name": "Hold opplysningene dine oppdatert" - } - ], - "page": "/medlem", - "question": "Vil du bli medlem, eller endre noe ved medlemskapet ditt?" - } - ], - "success": [ - "oppdatert" - ], - "wants": "at velet har riktige opplysninger om dem", - "who": "et medlem som har flyttet, byttet e-post eller vil melde seg ut" - }, - { - "done_when": [ - "ordnet", - "avvist" - ], - "enters_as": null, - "handled_by": "trafikkomite", - "id": "trafikkfare", - "lands_in": "trafikkmeldinger", - "steps": [ - { - "alternative": "Meld fra om noe i nabolaget", - "expect": [ - "Meld fra om noe i nabolaget" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.", - "name": "Meld deg inn eller endre opplysningene dine" - }, - { - "description": "Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det.", - "name": "Meld fra om noe i nabolaget" - }, - { - "description": "Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.", - "name": "Bli med og gjøre en innsats" - }, - { - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.", - "name": "Lån eller lån ut utstyr til en nabo" - } - ], - "page": "/", - "question": "Hva vil du gjøre?" - }, - { - "alternative": "Få en farlig trafikkplass tatt opp med kommunen", - "expect": [ - "Få en farlig trafikkplass tatt opp med kommunen" - ], - "fields": [ - { - "label": "Hvor er dette?", - "name": "hvor", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hva er problemet?", - "name": "hva", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "E-post", - "name": "epost", - "optional": true, - "options": [], - "type": "email" - } - ], - "options": [ - { - "description": "Sett en farlig plass i trafikken, for eksempel dårlig sikt eller for høy fart? Vi tar det videre til kommunen eller veieier.", - "name": "Få en farlig trafikkplass tatt opp med kommunen" - }, - { - "description": "Er noe på lekeplassen eller langs stien ødelagt eller farlig? Lekeplasskomiteen rykker ut og ser på det.", - "name": "Få ødelagt utstyr fikset før noen skader seg" - } - ], - "page": "/melde-fra", - "question": "Hva har du sett i nabolaget som ikke er som det skal?" - } - ], - "success": [ - "ordnet" - ], - "wants": "at velet tar det opp med kommunen eller den som eier veien", - "who": "en som har sett et farlig sted i trafikken" - }, - { - "done_when": [ - "utbedret" - ], - "enters_as": null, - "handled_by": "lekeplasskomite", - "id": "anleggsfeil", - "lands_in": "anleggsfeil", - "steps": [ - { - "alternative": "Meld fra om noe i nabolaget", - "expect": [ - "Meld fra om noe i nabolaget" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.", - "name": "Meld deg inn eller endre opplysningene dine" - }, - { - "description": "Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det.", - "name": "Meld fra om noe i nabolaget" - }, - { - "description": "Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.", - "name": "Bli med og gjøre en innsats" - }, - { - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.", - "name": "Lån eller lån ut utstyr til en nabo" - } - ], - "page": "/", - "question": "Hva vil du gjøre?" - }, - { - "alternative": "Få ødelagt utstyr fikset før noen skader seg", - "expect": [ - "Få ødelagt utstyr fikset før noen skader seg" - ], - "fields": [ - { - "label": "Hvor på lekeplassen eller stien?", - "name": "hvor", - "optional": false, - "options": [ - "Lekeplassen", - "Elvestien", - "Skøytebanen", - "Et annet sted" - ], - "type": "select" - }, - { - "label": "Hva er ødelagt eller farlig?", - "name": "hva", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Sett en farlig plass i trafikken, for eksempel dårlig sikt eller for høy fart? Vi tar det videre til kommunen eller veieier.", - "name": "Få en farlig trafikkplass tatt opp med kommunen" - }, - { - "description": "Er noe på lekeplassen eller langs stien ødelagt eller farlig? Lekeplasskomiteen rykker ut og ser på det.", - "name": "Få ødelagt utstyr fikset før noen skader seg" - } - ], - "page": "/melde-fra", - "question": "Hva har du sett i nabolaget som ikke er som det skal?" - } - ], - "success": [ - "utbedret" - ], - "wants": "at det blir fikset før noen skader seg", - "who": "en som ser at noe på lekeplassen eller stien er ødelagt" - }, - { - "done_when": [ - "tatt_med", - "ikke_tatt_med" - ], - "enters_as": null, - "handled_by": "styret", - "id": "horingsinnspill", - "lands_in": "innspill", - "steps": [ - { - "alternative": "Bli med og gjøre en innsats", - "expect": [ - "Bli med og gjøre en innsats" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.", - "name": "Meld deg inn eller endre opplysningene dine" - }, - { - "description": "Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det.", - "name": "Meld fra om noe i nabolaget" - }, - { - "description": "Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.", - "name": "Bli med og gjøre en innsats" - }, - { - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.", - "name": "Lån eller lån ut utstyr til en nabo" - } - ], - "page": "/", - "question": "Hva vil du gjøre?" - }, - { - "alternative": "Få din mening med i velets høringssvar", - "expect": [ - "Få din mening med i velets høringssvar" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hvilken sak gjelder det?", - "name": "sak", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Ditt innspill", - "name": "innspill", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så vurderer styret det til vårt svar.", - "name": "Få din mening med i velets høringssvar" - }, - { - "description": "Vi trenger folk til dugnader og arrangementer gjennom året. Si fra hva du kan bidra med, så tar vi kontakt.", - "name": "Bli med på dugnad eller arrangement" - }, - { - "description": "Vi har sju komiteer som trenger folk. Fortell hvilken du er interessert i, så tar styret kontakt.", - "name": "Få en plass i komiteen som passer deg" - } - ], - "page": "/bidra", - "question": "Vil du hjelpe til eller si din mening?" - } - ], - "success": [ - "tatt_med" - ], - "wants": "at velet tar det med i sitt svar", - "who": "en beboer som har en mening om en sak kommunen har på høring" - }, - { - "done_when": [ - "satt_opp", - "takket_nei" - ], - "enters_as": null, - "handled_by": "arrangementskomite", - "id": "hjelpe-til", - "lands_in": "frivillige", - "steps": [ - { - "alternative": "Bli med og gjøre en innsats", - "expect": [ - "Bli med og gjøre en innsats" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.", - "name": "Meld deg inn eller endre opplysningene dine" - }, - { - "description": "Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det.", - "name": "Meld fra om noe i nabolaget" - }, - { - "description": "Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.", - "name": "Bli med og gjøre en innsats" - }, - { - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.", - "name": "Lån eller lån ut utstyr til en nabo" - } - ], - "page": "/", - "question": "Hva vil du gjøre?" - }, - { - "alternative": "Bli med på dugnad eller arrangement", - "expect": [ - "Bli med på dugnad eller arrangement" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Telefon", - "name": "telefon", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "Hva kan du bidra med?", - "name": "hva", - "optional": false, - "options": [ - "17. mai", - "Juletregranstenning", - "Skøytedag", - "Dugnad på elvestien", - "Det som trengs" - ], - "type": "select" - } - ], - "options": [ - { - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så vurderer styret det til vårt svar.", - "name": "Få din mening med i velets høringssvar" - }, - { - "description": "Vi trenger folk til dugnader og arrangementer gjennom året. Si fra hva du kan bidra med, så tar vi kontakt.", - "name": "Bli med på dugnad eller arrangement" - }, - { - "description": "Vi har sju komiteer som trenger folk. Fortell hvilken du er interessert i, så tar styret kontakt.", - "name": "Få en plass i komiteen som passer deg" - } - ], - "page": "/bidra", - "question": "Vil du hjelpe til eller si din mening?" - } - ], - "success": [ - "satt_opp" - ], - "wants": "å bli satt opp på noe som passer dem", - "who": "en som vil hjelpe til på et arrangement eller en dugnad" - }, - { - "done_when": [ - "plassert", - "avslatt" - ], - "enters_as": null, - "handled_by": "styret", - "id": "komite", - "lands_in": "komitesoknader", - "steps": [ - { - "alternative": "Bli med og gjøre en innsats", - "expect": [ - "Bli med og gjøre en innsats" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.", - "name": "Meld deg inn eller endre opplysningene dine" - }, - { - "description": "Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det.", - "name": "Meld fra om noe i nabolaget" - }, - { - "description": "Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.", - "name": "Bli med og gjøre en innsats" - }, - { - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.", - "name": "Lån eller lån ut utstyr til en nabo" - } - ], - "page": "/", - "question": "Hva vil du gjøre?" - }, - { - "alternative": "Få en plass i komiteen som passer deg", - "expect": [ - "Få en plass i komiteen som passer deg" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "E-post", - "name": "epost", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Hvilken komité?", - "name": "komite", - "optional": false, - "options": [ - "Arrangementer", - "Elvesti", - "Høringsinstans", - "Leke- og møteplasser", - "Miljøgate", - "Pendlerforhold", - "Trafikkforhold" - ], - "type": "select" - } - ], - "options": [ - { - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så vurderer styret det til vårt svar.", - "name": "Få din mening med i velets høringssvar" - }, - { - "description": "Vi trenger folk til dugnader og arrangementer gjennom året. Si fra hva du kan bidra med, så tar vi kontakt.", - "name": "Bli med på dugnad eller arrangement" - }, - { - "description": "Vi har sju komiteer som trenger folk. Fortell hvilken du er interessert i, så tar styret kontakt.", - "name": "Få en plass i komiteen som passer deg" - } - ], - "page": "/bidra", - "question": "Vil du hjelpe til eller si din mening?" - } - ], - "success": [ - "plassert" - ], - "wants": "en plass i den komiteen som driver med det de bryr seg om", - "who": "en som vil sitte i en komité" - }, - { - "done_when": [ - "lagt_ut", - "tatt_ned" - ], - "enters_as": null, - "handled_by": "styret", - "id": "dele-utstyr", - "lands_in": "oppslag", - "steps": [ - { - "alternative": "Lån eller lån ut utstyr til en nabo", - "expect": [ - "Lån eller lån ut utstyr til en nabo" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "E-post", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Har du noe å låne ut, eller trenger du å låne?", - "name": "har_eller_trenger", - "optional": false, - "options": [ - "Jeg har noe å låne ut", - "Jeg trenger å låne noe" - ], - "type": "select" - }, - { - "label": "Hva gjelder det?", - "name": "hva", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.", - "name": "Meld deg inn eller endre opplysningene dine" - }, - { - "description": "Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det.", - "name": "Meld fra om noe i nabolaget" - }, - { - "description": "Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.", - "name": "Bli med og gjøre en innsats" - }, - { - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.", - "name": "Lån eller lån ut utstyr til en nabo" - } - ], - "page": "/", - "question": "Hva vil du gjøre?" - } - ], - "success": [ - "lagt_ut" - ], - "wants": "et oppslag som naboene ser", - "who": "en nabo som har noe å låne ut, eller trenger å låne noe" - }, - { - "done_when": [ - "utbetalt", - "avvist" - ], - "enters_as": "komiteer", - "handled_by": "kasserer", - "id": "utlegg", - "lands_in": "utlegg", - "steps": [ - { - "alternative": "Få tilbake penger du har lagt ut", - "expect": [ - "Få tilbake penger du har lagt ut" - ], - "fields": [ - { - "label": "Ditt navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Beløp (kr)", - "name": "belop", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hva gjaldt utlegget", - "name": "hva", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Har du lagt ut for noe til komiteen? Fyll inn hva det gjaldt og hvor mye, så tar kasserer det videre.", - "name": "Få tilbake penger du har lagt ut" - } - ], - "page": "/komiteer/utlegg", - "question": "Har jeg lagt ut penger for velet som jeg skal ha tilbake?" - } - ], - "success": [ - "utbetalt" - ], - "wants": "pengene tilbake", - "who": "en i en komité som har lagt ut for noe" - } - ], - "personas": [ - { - "id": "nyinnflyttet", - "need": "bli-medlem", - "text": "Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?" - }, - { - "id": "glemte-a-betale", - "need": "bli-medlem", - "text": "Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?" - }, - { - "id": "ny-epost", - "need": "endre-medlemskap", - "text": "Vi har byttet e-postadresse og får ikke lenger noe fra dere." - }, - { - "id": "flytter", - "need": "endre-medlemskap", - "text": "Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista." - }, - { - "id": "skolevei", - "need": "trafikkfare", - "text": "Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går." - }, - { - "id": "busslomme", - "need": "trafikkfare", - "text": "Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy." - }, - { - "id": "huske", - "need": "anleggsfeil", - "text": "Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt." - }, - { - "id": "bru", - "need": "anleggsfeil", - "text": "Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom." - }, - { - "id": "blokker", - "need": "horingsinnspill", - "text": "Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?" - }, - { - "id": "togtider", - "need": "horingsinnspill", - "text": "Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det." - }, - { - "id": "vafler", - "need": "hjelpe-til", - "text": "Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk." - }, - { - "id": "motorsag", - "need": "hjelpe-til", - "text": "Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad." - }, - { - "id": "pendler", - "need": "komite", - "text": "Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det." - }, - { - "id": "planlegger", - "need": "komite", - "text": "Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring." - }, - { - "id": "tilhenger", - "need": "dele-utstyr", - "text": "Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp." - }, - { - "id": "stige", - "need": "dele-utstyr", - "text": "Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?" - }, - { - "id": "kvittering", - "need": "utlegg", - "text": "Jeg kjøpte pølser og kakao til skøytedagen for 1 840 kroner, her er kvitteringa, vil ha det igjen." - } - ] -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/needs.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/needs.yaml deleted file mode 100644 index f449b2b..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/needs.yaml +++ /dev/null @@ -1,216 +0,0 @@ -needs: -- done_when: - - betalt - - utmeldt - enters: / - handled_by: kasserer - id: bli-medlem - lands_in: husstander - max_fields: 3 - max_steps: 2 - stages: - - open - - betalt - - utmeldt - success: - - betalt - via: Meld deg inn eller endre opplysningene dine - wants: å bli medlem og få betalt kontingenten - who: en husstand i Tomter -- done_when: - - oppdatert - enters: / - handled_by: kasserer - id: endre-medlemskap - lands_in: medlemsendringer - max_fields: 3 - max_steps: 2 - stages: - - open - - oppdatert - success: - - oppdatert - via: Meld deg inn eller endre opplysningene dine - wants: at velet har riktige opplysninger om dem - who: et medlem som har flyttet, byttet e-post eller vil melde seg ut -- done_when: - - ordnet - - avvist - enters: / - handled_by: trafikkomite - id: trafikkfare - lands_in: trafikkmeldinger - max_fields: 2 - max_steps: 2 - stages: - - open - - tatt_opp - - ordnet - - avvist - success: - - ordnet - via: Meld fra om noe i nabolaget - wants: at velet tar det opp med kommunen eller den som eier veien - who: en som har sett et farlig sted i trafikken -- done_when: - - utbedret - enters: / - handled_by: lekeplasskomite - id: anleggsfeil - lands_in: anleggsfeil - max_fields: 2 - max_steps: 2 - stages: - - open - - tatt_tak_i - - utbedret - success: - - utbedret - via: Meld fra om noe i nabolaget - wants: at det blir fikset før noen skader seg - who: en som ser at noe på lekeplassen eller stien er ødelagt -- done_when: - - tatt_med - - ikke_tatt_med - enters: / - handled_by: styret - id: horingsinnspill - lands_in: innspill - max_fields: 3 - max_steps: 2 - stages: - - open - - tatt_med - - ikke_tatt_med - success: - - tatt_med - via: Bli med og gjøre en innsats - wants: at velet tar det med i sitt svar - who: en beboer som har en mening om en sak kommunen har på høring -- done_when: - - satt_opp - - takket_nei - enters: / - handled_by: arrangementskomite - id: hjelpe-til - lands_in: frivillige - max_fields: 3 - max_steps: 2 - stages: - - open - - kontaktet - - satt_opp - - takket_nei - success: - - satt_opp - via: Bli med og gjøre en innsats - wants: å bli satt opp på noe som passer dem - who: en som vil hjelpe til på et arrangement eller en dugnad -- done_when: - - plassert - - avslatt - enters: / - handled_by: styret - id: komite - lands_in: komitesoknader - max_fields: 3 - max_steps: 2 - stages: - - open - - plassert - - avslatt - success: - - plassert - via: Bli med og gjøre en innsats - wants: en plass i den komiteen som driver med det de bryr seg om - who: en som vil sitte i en komité -- done_when: - - lagt_ut - - tatt_ned - enters: / - handled_by: styret - id: dele-utstyr - lands_in: oppslag - max_fields: 4 - max_steps: 1 - stages: - - open - - lagt_ut - - tatt_ned - success: - - lagt_ut - via: Lån eller lån ut utstyr til en nabo - wants: et oppslag som naboene ser - who: en nabo som har noe å låne ut, eller trenger å låne noe -- done_when: - - utbetalt - - avvist - enters: /komiteer/utlegg - enters_as: komiteer - handled_by: kasserer - id: utlegg - lands_in: utlegg - max_fields: 3 - max_steps: 1 - stages: - - open - - godkjent - - utbetalt - - avvist - success: - - utbetalt - via: Få tilbake penger du har lagt ut - wants: pengene tilbake - who: en i en komité som har lagt ut for noe -personas: -- id: nyinnflyttet - need: bli-medlem - text: Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det? -- id: glemte-a-betale - need: bli-medlem - text: Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem? -- id: ny-epost - need: endre-medlemskap - text: Vi har byttet e-postadresse og får ikke lenger noe fra dere. -- id: flytter - need: endre-medlemskap - text: Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista. -- id: skolevei - need: trafikkfare - text: Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går. -- id: busslomme - need: trafikkfare - text: Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy. -- id: huske - need: anleggsfeil - text: Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt. -- id: bru - need: anleggsfeil - text: Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom. -- id: blokker - need: horingsinnspill - text: Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra? -- id: togtider - need: horingsinnspill - text: Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det. -- id: vafler - need: hjelpe-til - text: Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk. -- id: motorsag - need: hjelpe-til - text: Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad. -- id: pendler - need: komite - text: Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det. -- id: planlegger - need: komite - text: Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring. -- id: tilhenger - need: dele-utstyr - text: Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp. -- id: stige - need: dele-utstyr - text: Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har? -- id: kvittering - need: utlegg - text: Jeg kjøpte pølser og kakao til skøytedagen for 1 840 kroner, her er kvitteringa, vil ha det igjen. diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/arrangementskomite/_section.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/arrangementskomite/_section.yaml deleted file mode 100644 index 7c3b4ae..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/arrangementskomite/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: arrangementskomite diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/arrangementskomite/index.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/arrangementskomite/index.yaml deleted file mode 100644 index 93e6858..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/arrangementskomite/index.yaml +++ /dev/null @@ -1,32 +0,0 @@ -alternatives: -- action: /arrangementskomite - consequence: - - Lagre - description: Alle som har sagt de vil hjelpe til, og hvor langt du har kommet med å sette dem i sving. - features: - - description: '' - name: '' - resource: - requires_group: arrangementskomite - source: - bucket: frivillige - kind: kv - transitions: - - from: kontaktet - label: Satt på oppgave - to: satt_opp - - from: kontaktet - label: Takket nei - to: takket_nei - - from: open - label: Tatt kontakt - to: kontaktet - - from: open - label: Takket nei - to: takket_nei - name: Folk som vil hjelpe til -description: Her holder du oversikt over frivillige og setter dem opp på arrangementer og dugnader. -name: Hvem kan jeg sette i sving? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/bidra/index.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/bidra/index.yaml deleted file mode 100644 index 10598a8..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/bidra/index.yaml +++ /dev/null @@ -1,74 +0,0 @@ -alternatives: -- action: /received/horingsinnspill - consequence: - - Send innspill - description: Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så vurderer styret det til vårt svar. - features: - - name: Send høringsinnspill - requirements: - - label: Navn - name: navn - type: text - - label: Hvilken sak gjelder det? - name: sak - type: text - - label: Ditt innspill - name: innspill - type: textarea - name: Få din mening med i velets høringssvar - record_as: innspill -- action: /received/hjelpe-til - consequence: - - Meld deg - description: Vi trenger folk til dugnader og arrangementer gjennom året. Si fra hva du kan bidra med, så tar vi kontakt. - features: - - name: Meld deg som frivillig - requirements: - - label: Navn - name: navn - type: text - - label: Telefon - name: telefon - type: tel - - label: Hva kan du bidra med? - name: hva - options: - - 17. mai - - Juletregranstenning - - Skøytedag - - Dugnad på elvestien - - Det som trengs - type: select - name: Bli med på dugnad eller arrangement - record_as: frivillige -- action: /received/komite - consequence: - - Meld interesse - description: Vi har sju komiteer som trenger folk. Fortell hvilken du er interessert i, så tar styret kontakt. - features: - - name: Bli med i en komité - requirements: - - label: Navn - name: navn - type: text - - label: E-post - name: epost - type: email - - label: Hvilken komité? - name: komite - options: - - Arrangementer - - Elvesti - - Høringsinstans - - Leke- og møteplasser - - Miljøgate - - Pendlerforhold - - Trafikkforhold - type: select - name: Få en plass i komiteen som passer deg - record_as: komitesoknader -description: Tomter Vel drives på frivillig innsats. Her kan du hjelpe til på et arrangement, si din mening i en høringssak, eller sitte i en komité. -name: Vil du hjelpe til eller si din mening? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/decide/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/decide/dele-utstyr.yaml deleted file mode 100644 index 3ac55fd..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/decide/dele-utstyr.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Oppslaget fjernes fra siden. Passer når tingen er lånt bort, hentet tilbake eller ikke lenger aktuell. - name: Fjern oppslaget om utlånet - self_transition: - bucket: oppslag - label: Ta ned oppslaget - to: tatt_ned -description: Du la ut noe naboene kunne låne. Her ser du om det er tid for å ta det ned igjen. -name: Skal oppslaget om det du delte fortsatt stå ute? diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/index.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/index.yaml deleted file mode 100644 index 4e627ca..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/index.yaml +++ /dev/null @@ -1,45 +0,0 @@ -alternatives: -- action: /medlem - consequence: - - Medlemskap - description: Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg. - name: Meld deg inn eller endre opplysningene dine -- action: /melde-fra - consequence: - - Meld fra - description: Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det. - name: Meld fra om noe i nabolaget -- action: /bidra - consequence: - - Bidra - description: Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring. - name: Bli med og gjøre en innsats -- action: /received/dele-utstyr - consequence: - - Legg ut - description: Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den. - features: - - name: Lån eller lån ut - requirements: - - label: Navn - name: navn - type: text - - label: E-post - name: email - type: email - - label: Har du noe å låne ut, eller trenger du å låne? - name: har_eller_trenger - options: - - Jeg har noe å låne ut - - Jeg trenger å låne noe - type: select - - label: Hva gjelder det? - name: hva - type: textarea - name: Lån eller lån ut utstyr til en nabo - record_as: oppslag -description: Tomter Vel er velforeningen for Tomter, og har jobbet for bygda siden 1947. Her finner du veien videre, enten du vil bli medlem, melde fra om noe, eller bidra selv. -name: Hva vil du gjøre? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/kasserer/_section.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/kasserer/_section.yaml deleted file mode 100644 index 2f8af2f..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/kasserer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: kasserer diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/kasserer/index.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/kasserer/index.yaml deleted file mode 100644 index 9a7e670..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/kasserer/index.yaml +++ /dev/null @@ -1,69 +0,0 @@ -alternatives: -- action: /kasserer - consequence: - - Bekreft - description: Husstander som vil bli medlem eller har betalt kontingenten, klare for oppfølging. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: husstander - kind: kv - transitions: - - from: open - label: Merk som betalt - to: betalt - - from: open - label: Meld ut - to: utmeldt - name: Husstander som vil bli medlem -- action: /kasserer - consequence: - - Bekreft - description: Medlemmer som har flyttet, byttet e-post eller vil melde seg ut. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: medlemsendringer - kind: kv - transitions: - - from: open - label: Oppdater opplysninger - to: oppdatert - name: Endringer i medlemsopplysninger -- action: /kasserer - consequence: - - Bekreft - description: Utlegg fra komiteene som venter på godkjenning eller utbetaling. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: utlegg - kind: kv - transitions: - - from: godkjent - label: Merk som utbetalt - to: utbetalt - - from: godkjent - label: Avvis likevel - to: avvist - - from: open - label: Godkjenn - to: godkjent - - from: open - label: Avvis - to: avvist - name: Utlegg som skal dekkes -description: Her holder du styr på medlemskap, kontingent og utlegg fra komiteene. -name: Hvem venter på svar fra kasserer? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/komiteer/_section.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/komiteer/_section.yaml deleted file mode 100644 index 57e3295..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/komiteer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: komiteer diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/komiteer/index.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/komiteer/index.yaml deleted file mode 100644 index 7d6f26d..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/komiteer/index.yaml +++ /dev/null @@ -1,11 +0,0 @@ -alternatives: -- action: /komiteer/utlegg - consequence: - - Legg inn utlegg - description: Har du lagt ut penger for komiteen? Registrer det her, så tar kasserer seg av resten. - name: Få tilbake penger du har lagt ut -description: Her ser komiteen sakene som venter, og kan flytte dem videre etter hvert som dere tar tak i dem. -name: Hva står på tur for komiteen nå? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/komiteer/utlegg-sent.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/komiteer/utlegg-sent.yaml deleted file mode 100644 index 8dd0c4c..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/komiteer/utlegg-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer ser gjennom utlegget og godkjenner det før pengene blir betalt tilbake til kontoen din. - name: Kasserer godkjenner og betaler tilbake -- action: /komiteer - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Takk for at du sender inn utlegget ditt. Vi har mottatt det og sender det videre til kasserer. -name: Hva skjer med utlegget mitt nå? diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/komiteer/utlegg.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/komiteer/utlegg.yaml deleted file mode 100644 index 8ab2d98..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/komiteer/utlegg.yaml +++ /dev/null @@ -1,25 +0,0 @@ -alternatives: -- action: /komiteer/utlegg-sent - consequence: - - Send inn - description: Har du lagt ut for noe til komiteen? Fyll inn hva det gjaldt og hvor mye, så tar kasserer det videre. - features: - - name: Krav om refusjon - requirements: - - label: Ditt navn - name: navn - type: text - - label: Beløp (kr) - name: belop - type: text - - label: Hva gjaldt utlegget - name: hva - type: textarea - name: Få tilbake penger du har lagt ut - record_as: utlegg -description: For deg som sitter i en komité og har betalt noe av egen lomme for velet. -followup: false -name: Har jeg lagt ut penger for velet som jeg skal ha tilbake? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/lekeplasskomite/_section.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/lekeplasskomite/_section.yaml deleted file mode 100644 index ca64c92..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/lekeplasskomite/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: lekeplasskomite diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/lekeplasskomite/index.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/lekeplasskomite/index.yaml deleted file mode 100644 index 62f15b9..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/lekeplasskomite/index.yaml +++ /dev/null @@ -1,26 +0,0 @@ -alternatives: -- action: /lekeplasskomite - consequence: - - Lagre - description: Meldinger fra naboer om noe som er ødelagt på lekeplassen eller langs stien. - features: - - description: '' - name: '' - resource: - requires_group: lekeplasskomite - source: - bucket: anleggsfeil - kind: kv - transitions: - - from: open - label: Ta tak i den - to: tatt_tak_i - - from: tatt_tak_i - label: Merk som utbedret - to: utbedret - name: Feil som er meldt inn -description: Her holder du oversikt over meldte feil på lekeplassene og elvestien, og følger opp til de er utbedret. -name: Hva må fikses på lekeplassene og stien nå? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/medlem/index.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/medlem/index.yaml deleted file mode 100644 index b083f77..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/medlem/index.yaml +++ /dev/null @@ -1,46 +0,0 @@ -alternatives: -- action: /received/bli-medlem - consequence: - - Meld deg inn - description: 157 husstander er med allerede. Fyll ut skjemaet, så sender kasserer deg giroen. - features: - - name: Bli medlem - requirements: - - label: Navn - name: navn - type: text - - label: Adresse - name: adresse - type: text - - label: E-post - name: epost - type: email - - label: Telefon - name: telefon - optional: true - type: tel - name: Bli med i velet - record_as: husstander -- action: /received/endre-medlemskap - consequence: - - Send endring - description: Flyttet, byttet e-post, eller vil melde deg ut? Si fra, så retter kasserer det opp. - features: - - name: Endre medlemskap - requirements: - - label: Navn - name: navn - type: text - - label: Adresse - name: adresse - type: text - - label: Hva har endret seg - name: hva_er_nytt - type: textarea - name: Hold opplysningene dine oppdatert - record_as: medlemsendringer -description: Velet holder oversikt over hvem som bor på Tomter, slik at vi vet hvem vi jobber for. -name: Vil du bli medlem, eller endre noe ved medlemskapet ditt? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/melde-fra/index.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/melde-fra/index.yaml deleted file mode 100644 index 6b040d0..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/melde-fra/index.yaml +++ /dev/null @@ -1,45 +0,0 @@ -alternatives: -- action: /received/trafikkfare - consequence: - - Meld fra - description: Sett en farlig plass i trafikken, for eksempel dårlig sikt eller for høy fart? Vi tar det videre til kommunen eller veieier. - features: - - name: Meld fra om trafikkfare - requirements: - - label: Hvor er dette? - name: hvor - type: text - - label: Hva er problemet? - name: hva - type: textarea - - label: E-post - name: epost - optional: true - type: email - name: Få en farlig trafikkplass tatt opp med kommunen - record_as: trafikkmeldinger -- action: /received/anleggsfeil - consequence: - - Meld fra - description: Er noe på lekeplassen eller langs stien ødelagt eller farlig? Lekeplasskomiteen rykker ut og ser på det. - features: - - name: Meld fra om feil - requirements: - - label: Hvor på lekeplassen eller stien? - name: hvor - options: - - Lekeplassen - - Elvestien - - Skøytebanen - - Et annet sted - type: select - - label: Hva er ødelagt eller farlig? - name: hva - type: textarea - name: Få ødelagt utstyr fikset før noen skader seg - record_as: anleggsfeil -description: Har du sett noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien? Si fra her, så tar rett komité tak i det. -name: Hva har du sett i nabolaget som ikke er som det skal? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/anleggsfeil.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/anleggsfeil.yaml deleted file mode 100644 index 51d4998..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/anleggsfeil.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Lekeplasskomiteen ser over meldinger jevnlig og tar tak i det som haster mest først. - name: Komiteen tar tak i det -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Meldingen din om lekeplassen eller stien er sendt til lekeplasskomiteen. -name: Hva skjer med meldingen min nå? diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/bli-medlem.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/bli-medlem.yaml deleted file mode 100644 index d52103c..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/bli-medlem.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer sjekker innmeldingen og sender deg kontonummer for kontingenten. - name: Kasserer tar kontakt om betaling -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Innmeldingen din er registrert og sendt til kasserer. -name: Hva skjer nå med innmeldingen min? diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/dele-utstyr.yaml deleted file mode 100644 index 2b21614..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/dele-utstyr.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Styret legger ut oppslaget slik at naboene kan se det, eller tar kontakt hvis noe er uklart. - name: Oppslaget kommer opp -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Oppslaget ditt er sendt til styret. Vi legger det ut eller svarer deg så snart vi rekker det. -name: Hva skjer nå med det jeg vil låne ut eller trenger å låne? diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/endre-medlemskap.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/endre-medlemskap.yaml deleted file mode 100644 index 0d2125f..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/endre-medlemskap.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer går gjennom endringen og oppdaterer medlemslista. Du hører fra oss bare hvis noe er uklart. - name: Kasserer oppdaterer opplysningene dine -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Du har sendt inn endringer til medlemskapet ditt. Kasserer oppdaterer opplysningene så snart de får sett gjennom det som er kommet inn. -name: Hva skjer nå som jeg har sendt inn endringen? diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/hjelpe-til.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/hjelpe-til.yaml deleted file mode 100644 index 1ae249c..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/hjelpe-til.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Noen i arrangementskomiteen tar kontakt med deg når det nærmer seg noe du kan bidra på. - name: Komiteen tar kontakt -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du vil hjelpe til! Meldingen din er sendt til arrangementskomiteen. -name: Hva skjer nå som jeg har meldt meg? diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/horingsinnspill.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/horingsinnspill.yaml deleted file mode 100644 index 26916f1..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/horingsinnspill.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Styret samler alle innspill før fristen og vurderer hva som blir med i svaret til kommunen. - name: Innspillet ditt vurderes av styret -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Takk for at du sendte inn høringsinnspillet ditt. Styret tar det med når de skriver velets høringssvar. -name: Hva skjer med innspillet mitt nå? diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/komite.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/komite.yaml deleted file mode 100644 index cbe0659..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/komite.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Styret tar det opp på neste møte og finner ut hvilken komité som passer best. Du hører fra oss uansett hva vi lander på. - name: Styret finner en plass til deg -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Takk for at du vil bidra i en komité. Meldingen din har gått til styret. -name: Hva skjer nå som jeg har meldt interesse for en komité? diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/trafikkfare.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/trafikkfare.yaml deleted file mode 100644 index 84f26fa..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/received/trafikkfare.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Trafikkomiteen ser gjennom meldingen og tar den videre med kommunen eller veieier når det er nødvendig. - name: Trafikkomiteen tar det videre -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Trafikkfaren du meldte inn er registrert hos oss. -name: Hva skjer med det jeg har meldt inn? diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/styret/_section.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/styret/_section.yaml deleted file mode 100644 index 5a34160..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/styret/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: styret diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/styret/index.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/styret/index.yaml deleted file mode 100644 index c986683..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/styret/index.yaml +++ /dev/null @@ -1,80 +0,0 @@ -alternatives: -- action: /styret - consequence: - - Lagre - description: Meninger fra naboer om saker kommunen har på høring, klare til å bli med i velets svar. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: innspill - kind: kv - transitions: - - from: open - label: Tas med i svaret - to: tatt_med - - from: open - label: Tas ikke med - to: ikke_tatt_med - name: Innspill til høringssvar -- action: /styret - consequence: - - Lagre - description: Naboer som vil sitte i en komité, klare til å bli plassert. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: komitesoknader - kind: kv - transitions: - - from: open - label: Plasser i komité - to: plassert - - from: open - label: Avslå søknad - to: avslatt - name: Søknader til komiteene -- action: /styret - consequence: - - Lagre - description: Utstyr naboer vil låne ut eller låne, klart til å legges ut. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: oppslag - kind: kv - transitions: - - from: open - label: Legg ut - to: lagt_ut - - from: open - label: Ta ned - to: tatt_ned - name: Oppslag om utlån -- action: /styret - consequence: - - Lagre - description: Farlige steder i trafikken som naboer har meldt fra om. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: trafikkmeldinger - kind: kv - transitions: [] - name: Meldte trafikkfarer -description: Skrivebordet der styret behandler høringsinnspill, komitésøknader og oppslag, og holder oversikt over trafikkmeldinger. -name: Hva venter på styret? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/trafikkomite/_section.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/trafikkomite/_section.yaml deleted file mode 100644 index bf946ea..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/trafikkomite/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: trafikkomite diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/trafikkomite/index.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/trafikkomite/index.yaml deleted file mode 100644 index 122abbe..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/questions/trafikkomite/index.yaml +++ /dev/null @@ -1,32 +0,0 @@ -alternatives: -- action: /trafikkomite - consequence: - - Lagre - description: Meldinger om utrygge steder i trafikken, sendt inn av naboer. - features: - - description: '' - name: '' - resource: - requires_group: trafikkomite - source: - bucket: trafikkmeldinger - kind: kv - transitions: - - from: open - label: Ta den opp - to: tatt_opp - - from: open - label: Avvis meldingen - to: avvist - - from: tatt_opp - label: Meld som ordnet - to: ordnet - - from: tatt_opp - label: Avvis saken - to: avvist - name: Meldte trafikkfarer -description: Her følger trafikkomiteen opp meldinger om farlige steder i trafikken, fra de kommer inn til de er tatt opp eller ordnet. -name: Hvilke trafikkfarer må vi følge opp nå? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/rate.json b/vendor/trainer/runs/tomtervel-claude-2026-09-22/rate.json deleted file mode 100644 index f416ffa..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/rate.json +++ /dev/null @@ -1,367 +0,0 @@ -{ - "anleggsfeil": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 22.70051635111876, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 1, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 1, - "next": 0, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 29.38095238095238, - "options": 2, - "overloaded": false, - "page": "/melde-fra", - "personas": 2, - "required_fields": 2, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "bli-medlem": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 22.70051635111876, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 35.492063492063494, - "options": 2, - "overloaded": false, - "page": "/medlem", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "dele-utstyr": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 22.816949152542374, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "endre-medlemskap": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 22.70051635111876, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 1, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 32.333333333333336, - "options": 2, - "overloaded": false, - "page": "/medlem", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "hjelpe-til": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 22.70051635111876, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 28.44736842105263, - "options": 3, - "overloaded": false, - "page": "/bidra", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "horingsinnspill": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 22.70051635111876, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 1 - } - }, - { - "control": { - "asked": 1, - "next": 0, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 31.11212121212121, - "options": 3, - "overloaded": false, - "page": "/bidra", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "komite": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 22.70051635111876, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 1, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 25.735930735930737, - "options": 3, - "overloaded": false, - "page": "/bidra", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "trafikkfare": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 22.70051635111876, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 1 - } - }, - { - "control": { - "asked": 1, - "next": 0, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 32.047619047619044, - "options": 2, - "overloaded": false, - "page": "/melde-fra", - "personas": 2, - "required_fields": 2, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "utlegg": { - "pages": [ - { - "control": { - "asked": 1, - "next": 0, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 30.696969696969695, - "options": 1, - "overloaded": false, - "page": "/komiteer/utlegg", - "personas": 1, - "required_fields": 3, - "understanding": { - "asked": 1, - "next": 1, - "which": 1 - } - } - ], - "steps": 1 - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/rate.txt b/vendor/trainer/runs/tomtervel-claude-2026-09-22/rate.txt deleted file mode 100644 index 8543bab..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/rate.txt +++ /dev/null @@ -1,17 +0,0 @@ -need LIX which asked next gutted twin says page load -bli-medlem @/ 23 very easy 1/2 0/2 - 0/0/- ok 4 options, 0 required -bli-medlem @/medlem 35 easy 2/2 2/2 2/2 0/0/0 ok 2 options, 3 required -endre-medlemskap @/ 23 very easy 2/2 1/2 - 0/0/- ok 4 options, 0 required -endre-medlemskap @/medlem 32 easy 2/2 2/2 2/2 0/0/0 ok 2 options, 3 required -trafikkfare @/ 23 very easy 1/2 0/2 - 0/0/- ok 4 options, 0 required -trafikkfare @/melde-fra 32 easy 2/2 2/2 2/2 0/1/0 FAILED: asked 2 options, 2 required -anleggsfeil @/ 23 very easy 2/2 1/2 - 0/0/- ok 4 options, 0 required -anleggsfeil @/melde-fra 29 very easy 2/2 2/2 2/2 0/1/0 FAILED: asked 2 options, 2 required -horingsinnspill @/ 23 very easy 1/2 0/2 - 0/0/- ok 4 options, 0 required -horingsinnspill @/bidra 31 easy 2/2 2/2 2/2 0/1/0 FAILED: asked 3 options, 3 required -hjelpe-til @/ 23 very easy 2/2 2/2 - 0/0/- ok 4 options, 0 required -hjelpe-til @/bidra 28 very easy 2/2 2/2 2/2 0/0/0 ok 3 options, 3 required -komite @/ 23 very easy 2/2 1/2 - 0/0/- ok 4 options, 0 required -komite @/bidra 26 very easy 2/2 2/2 2/2 0/0/0 ok 3 options, 3 required -dele-utstyr 23 very easy 2/2 2/2 2/2 0/0/0 ok 4 options, 4 required -utlegg 31 easy 1/1 1/1 1/1 0/1/0 FAILED: asked 1 options, 3 required diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/score-full.txt b/vendor/trainer/runs/tomtervel-claude-2026-09-22/score-full.txt deleted file mode 100644 index d11dbe3..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/score-full.txt +++ /dev/null @@ -1,6 +0,0 @@ -MISROUTE: glemte-a-betale@/: picked "Bli med og gjøre en innsats" (0.85), the need is met by ["Meld deg inn eller endre opplysningene dine"] -MISROUTE: bru@/melde-fra: picked "Få en farlig trafikkplass tatt opp med kommunen" (0.85), the need is met by ["Få ødelagt utstyr fikset før noen skader seg"] -MISROUTE: togtider@/: picked "Meld deg inn eller endre opplysningene dine" (0.95), the need is met by ["Bli med og gjøre en innsats"] -MISROUTE: vafler@/bidra: picked "Få en plass i komiteen som passer deg" (0.95), the need is met by ["Bli med på dugnad eller arrangement"] -MISROUTE: planlegger@/bidra: picked "Få din mening med i velets høringssvar" (0.95), the need is met by ["Få en plass i komiteen som passer deg"] -wording: 25/30 routed right (83%) diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/score-skim.txt b/vendor/trainer/runs/tomtervel-claude-2026-09-22/score-skim.txt deleted file mode 100644 index 0ea4acc..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/score-skim.txt +++ /dev/null @@ -1,9 +0,0 @@ -MISROUTE: nyinnflyttet@/: picked "Bli med og gjøre en innsats" (0.85), the need is met by ["Meld deg inn eller endre opplysningene dine"] -MISROUTE: busslomme@/: picked "Bli med og gjøre en innsats" (0.85), the need is met by ["Meld fra om noe i nabolaget"] -MISROUTE: huske@/melde-fra: picked "Få en farlig trafikkplass tatt opp med kommunen" (0.85), the need is met by ["Få ødelagt utstyr fikset før noen skader seg"] -MISROUTE: bru@/melde-fra: picked "Få en farlig trafikkplass tatt opp med kommunen" (0.85), the need is met by ["Få ødelagt utstyr fikset før noen skader seg"] -MISROUTE: blokker@/: picked "Meld fra om noe i nabolaget" (0.95), the need is met by ["Bli med og gjøre en innsats"] -MISROUTE: togtider@/: picked "Meld fra om noe i nabolaget" (0.95), the need is met by ["Bli med og gjøre en innsats"] -MISROUTE: vafler@/bidra: picked "Få din mening med i velets høringssvar" (0.95), the need is met by ["Bli med på dugnad eller arrangement"] -MISROUTE: planlegger@/bidra: picked "Få din mening med i velets høringssvar" (0.95), the need is met by ["Få en plass i komiteen som passer deg"] -wording: 22/30 routed right (73%) diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/site.yaml b/vendor/trainer/runs/tomtervel-claude-2026-09-22/site.yaml deleted file mode 100644 index 9bdc376..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/site.yaml +++ /dev/null @@ -1,2 +0,0 @@ -lang: nb -title: Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/tasks-full.jsonl b/vendor/trainer/runs/tomtervel-claude-2026-09-22/tasks-full.jsonl deleted file mode 100644 index 012e96e..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/tasks-full.jsonl +++ /dev/null @@ -1,30 +0,0 @@ -{"id":"nyinnflyttet@/","persona":"nyinnflyttet","need":"bli-medlem","page":"/","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.","Lån eller lån ut utstyr til en nabo":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.","Meld deg inn eller endre opplysningene dine":"Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.","Meld fra om noe i nabolaget":"Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det."}}},"expect":["Meld deg inn eller endre opplysningene dine"]} -{"id":"nyinnflyttet@/medlem","persona":"nyinnflyttet","need":"bli-medlem","page":"/medlem","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre noe ved medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli med i velet":"157 husstander er med allerede. Fyll ut skjemaet, så sender kasserer deg giroen.","Hold opplysningene dine oppdatert":"Flyttet, byttet e-post, eller vil melde deg ut? Si fra, så retter kasserer det opp."}}},"expect":["Bli med i velet"]} -{"id":"glemte-a-betale@/","persona":"glemte-a-betale","need":"bli-medlem","page":"/","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.","Lån eller lån ut utstyr til en nabo":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.","Meld deg inn eller endre opplysningene dine":"Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.","Meld fra om noe i nabolaget":"Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det."}}},"expect":["Meld deg inn eller endre opplysningene dine"]} -{"id":"glemte-a-betale@/medlem","persona":"glemte-a-betale","need":"bli-medlem","page":"/medlem","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre noe ved medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli med i velet":"157 husstander er med allerede. Fyll ut skjemaet, så sender kasserer deg giroen.","Hold opplysningene dine oppdatert":"Flyttet, byttet e-post, eller vil melde deg ut? Si fra, så retter kasserer det opp."}}},"expect":["Bli med i velet"]} -{"id":"ny-epost@/","persona":"ny-epost","need":"endre-medlemskap","page":"/","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.","Lån eller lån ut utstyr til en nabo":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.","Meld deg inn eller endre opplysningene dine":"Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.","Meld fra om noe i nabolaget":"Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det."}}},"expect":["Meld deg inn eller endre opplysningene dine"]} -{"id":"ny-epost@/medlem","persona":"ny-epost","need":"endre-medlemskap","page":"/medlem","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre noe ved medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli med i velet":"157 husstander er med allerede. Fyll ut skjemaet, så sender kasserer deg giroen.","Hold opplysningene dine oppdatert":"Flyttet, byttet e-post, eller vil melde deg ut? Si fra, så retter kasserer det opp."}}},"expect":["Hold opplysningene dine oppdatert"]} -{"id":"flytter@/","persona":"flytter","need":"endre-medlemskap","page":"/","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.","Lån eller lån ut utstyr til en nabo":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.","Meld deg inn eller endre opplysningene dine":"Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.","Meld fra om noe i nabolaget":"Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det."}}},"expect":["Meld deg inn eller endre opplysningene dine"]} -{"id":"flytter@/medlem","persona":"flytter","need":"endre-medlemskap","page":"/medlem","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre noe ved medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli med i velet":"157 husstander er med allerede. Fyll ut skjemaet, så sender kasserer deg giroen.","Hold opplysningene dine oppdatert":"Flyttet, byttet e-post, eller vil melde deg ut? Si fra, så retter kasserer det opp."}}},"expect":["Hold opplysningene dine oppdatert"]} -{"id":"skolevei@/","persona":"skolevei","need":"trafikkfare","page":"/","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.","Lån eller lån ut utstyr til en nabo":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.","Meld deg inn eller endre opplysningene dine":"Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.","Meld fra om noe i nabolaget":"Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det."}}},"expect":["Meld fra om noe i nabolaget"]} -{"id":"skolevei@/melde-fra","persona":"skolevei","need":"trafikkfare","page":"/melde-fra","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du sett i nabolaget som ikke er som det skal?\". Which alternative do they choose?","criteria":{"Få en farlig trafikkplass tatt opp med kommunen":"Sett en farlig plass i trafikken, for eksempel dårlig sikt eller for høy fart? Vi tar det videre til kommunen eller veieier.","Få ødelagt utstyr fikset før noen skader seg":"Er noe på lekeplassen eller langs stien ødelagt eller farlig? Lekeplasskomiteen rykker ut og ser på det."}}},"expect":["Få en farlig trafikkplass tatt opp med kommunen"]} -{"id":"busslomme@/","persona":"busslomme","need":"trafikkfare","page":"/","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.","Lån eller lån ut utstyr til en nabo":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.","Meld deg inn eller endre opplysningene dine":"Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.","Meld fra om noe i nabolaget":"Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det."}}},"expect":["Meld fra om noe i nabolaget"]} -{"id":"busslomme@/melde-fra","persona":"busslomme","need":"trafikkfare","page":"/melde-fra","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du sett i nabolaget som ikke er som det skal?\". Which alternative do they choose?","criteria":{"Få en farlig trafikkplass tatt opp med kommunen":"Sett en farlig plass i trafikken, for eksempel dårlig sikt eller for høy fart? Vi tar det videre til kommunen eller veieier.","Få ødelagt utstyr fikset før noen skader seg":"Er noe på lekeplassen eller langs stien ødelagt eller farlig? Lekeplasskomiteen rykker ut og ser på det."}}},"expect":["Få en farlig trafikkplass tatt opp med kommunen"]} -{"id":"huske@/","persona":"huske","need":"anleggsfeil","page":"/","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.","Lån eller lån ut utstyr til en nabo":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.","Meld deg inn eller endre opplysningene dine":"Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.","Meld fra om noe i nabolaget":"Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det."}}},"expect":["Meld fra om noe i nabolaget"]} -{"id":"huske@/melde-fra","persona":"huske","need":"anleggsfeil","page":"/melde-fra","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du sett i nabolaget som ikke er som det skal?\". Which alternative do they choose?","criteria":{"Få en farlig trafikkplass tatt opp med kommunen":"Sett en farlig plass i trafikken, for eksempel dårlig sikt eller for høy fart? Vi tar det videre til kommunen eller veieier.","Få ødelagt utstyr fikset før noen skader seg":"Er noe på lekeplassen eller langs stien ødelagt eller farlig? Lekeplasskomiteen rykker ut og ser på det."}}},"expect":["Få ødelagt utstyr fikset før noen skader seg"]} -{"id":"bru@/","persona":"bru","need":"anleggsfeil","page":"/","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.","Lån eller lån ut utstyr til en nabo":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.","Meld deg inn eller endre opplysningene dine":"Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.","Meld fra om noe i nabolaget":"Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det."}}},"expect":["Meld fra om noe i nabolaget"]} -{"id":"bru@/melde-fra","persona":"bru","need":"anleggsfeil","page":"/melde-fra","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du sett i nabolaget som ikke er som det skal?\". Which alternative do they choose?","criteria":{"Få en farlig trafikkplass tatt opp med kommunen":"Sett en farlig plass i trafikken, for eksempel dårlig sikt eller for høy fart? Vi tar det videre til kommunen eller veieier.","Få ødelagt utstyr fikset før noen skader seg":"Er noe på lekeplassen eller langs stien ødelagt eller farlig? Lekeplasskomiteen rykker ut og ser på det."}}},"expect":["Få ødelagt utstyr fikset før noen skader seg"]} -{"id":"blokker@/","persona":"blokker","need":"horingsinnspill","page":"/","state":{"body":"Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.","Lån eller lån ut utstyr til en nabo":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.","Meld deg inn eller endre opplysningene dine":"Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.","Meld fra om noe i nabolaget":"Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det."}}},"expect":["Bli med og gjøre en innsats"]} -{"id":"blokker@/bidra","persona":"blokker","need":"horingsinnspill","page":"/bidra","state":{"body":"Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til eller si din mening?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Vi trenger folk til dugnader og arrangementer gjennom året. Si fra hva du kan bidra med, så tar vi kontakt.","Få din mening med i velets høringssvar":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så vurderer styret det til vårt svar.","Få en plass i komiteen som passer deg":"Vi har sju komiteer som trenger folk. Fortell hvilken du er interessert i, så tar styret kontakt."}}},"expect":["Få din mening med i velets høringssvar"]} -{"id":"togtider@/","persona":"togtider","need":"horingsinnspill","page":"/","state":{"body":"Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.","Lån eller lån ut utstyr til en nabo":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.","Meld deg inn eller endre opplysningene dine":"Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.","Meld fra om noe i nabolaget":"Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det."}}},"expect":["Bli med og gjøre en innsats"]} -{"id":"togtider@/bidra","persona":"togtider","need":"horingsinnspill","page":"/bidra","state":{"body":"Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til eller si din mening?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Vi trenger folk til dugnader og arrangementer gjennom året. Si fra hva du kan bidra med, så tar vi kontakt.","Få din mening med i velets høringssvar":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så vurderer styret det til vårt svar.","Få en plass i komiteen som passer deg":"Vi har sju komiteer som trenger folk. Fortell hvilken du er interessert i, så tar styret kontakt."}}},"expect":["Få din mening med i velets høringssvar"]} -{"id":"vafler@/","persona":"vafler","need":"hjelpe-til","page":"/","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.","Lån eller lån ut utstyr til en nabo":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.","Meld deg inn eller endre opplysningene dine":"Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.","Meld fra om noe i nabolaget":"Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det."}}},"expect":["Bli med og gjøre en innsats"]} -{"id":"vafler@/bidra","persona":"vafler","need":"hjelpe-til","page":"/bidra","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til eller si din mening?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Vi trenger folk til dugnader og arrangementer gjennom året. Si fra hva du kan bidra med, så tar vi kontakt.","Få din mening med i velets høringssvar":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så vurderer styret det til vårt svar.","Få en plass i komiteen som passer deg":"Vi har sju komiteer som trenger folk. Fortell hvilken du er interessert i, så tar styret kontakt."}}},"expect":["Bli med på dugnad eller arrangement"]} -{"id":"motorsag@/","persona":"motorsag","need":"hjelpe-til","page":"/","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.","Lån eller lån ut utstyr til en nabo":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.","Meld deg inn eller endre opplysningene dine":"Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.","Meld fra om noe i nabolaget":"Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det."}}},"expect":["Bli med og gjøre en innsats"]} -{"id":"motorsag@/bidra","persona":"motorsag","need":"hjelpe-til","page":"/bidra","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til eller si din mening?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Vi trenger folk til dugnader og arrangementer gjennom året. Si fra hva du kan bidra med, så tar vi kontakt.","Få din mening med i velets høringssvar":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så vurderer styret det til vårt svar.","Få en plass i komiteen som passer deg":"Vi har sju komiteer som trenger folk. Fortell hvilken du er interessert i, så tar styret kontakt."}}},"expect":["Bli med på dugnad eller arrangement"]} -{"id":"pendler@/","persona":"pendler","need":"komite","page":"/","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.","Lån eller lån ut utstyr til en nabo":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.","Meld deg inn eller endre opplysningene dine":"Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.","Meld fra om noe i nabolaget":"Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det."}}},"expect":["Bli med og gjøre en innsats"]} -{"id":"pendler@/bidra","persona":"pendler","need":"komite","page":"/bidra","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til eller si din mening?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Vi trenger folk til dugnader og arrangementer gjennom året. Si fra hva du kan bidra med, så tar vi kontakt.","Få din mening med i velets høringssvar":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så vurderer styret det til vårt svar.","Få en plass i komiteen som passer deg":"Vi har sju komiteer som trenger folk. Fortell hvilken du er interessert i, så tar styret kontakt."}}},"expect":["Få en plass i komiteen som passer deg"]} -{"id":"planlegger@/","persona":"planlegger","need":"komite","page":"/","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.","Lån eller lån ut utstyr til en nabo":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.","Meld deg inn eller endre opplysningene dine":"Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.","Meld fra om noe i nabolaget":"Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det."}}},"expect":["Bli med og gjøre en innsats"]} -{"id":"planlegger@/bidra","persona":"planlegger","need":"komite","page":"/bidra","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til eller si din mening?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Vi trenger folk til dugnader og arrangementer gjennom året. Si fra hva du kan bidra med, så tar vi kontakt.","Få din mening med i velets høringssvar":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så vurderer styret det til vårt svar.","Få en plass i komiteen som passer deg":"Vi har sju komiteer som trenger folk. Fortell hvilken du er interessert i, så tar styret kontakt."}}},"expect":["Få en plass i komiteen som passer deg"]} -{"id":"tilhenger@/","persona":"tilhenger","need":"dele-utstyr","page":"/","state":{"body":"Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.","Lån eller lån ut utstyr til en nabo":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.","Meld deg inn eller endre opplysningene dine":"Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.","Meld fra om noe i nabolaget":"Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det."}}},"expect":["Lån eller lån ut utstyr til en nabo"]} -{"id":"stige@/","persona":"stige","need":"dele-utstyr","page":"/","state":{"body":"Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Meld deg til en komité, still opp på dugnad, eller si din mening om en sak kommunen har på høring.","Lån eller lån ut utstyr til en nabo":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut en melding så andre i Tomter ser den.","Meld deg inn eller endre opplysningene dine":"Meld deg inn i velet, eller gi oss beskjed om at noe har endret seg.","Meld fra om noe i nabolaget":"Har du sett noe farlig i trafikken, eller noe som er ødelagt på lekeplassen eller stien? Fortell oss om det."}}},"expect":["Lån eller lån ut utstyr til en nabo"]} diff --git a/vendor/trainer/runs/tomtervel-claude-2026-09-22/tasks-skim.jsonl b/vendor/trainer/runs/tomtervel-claude-2026-09-22/tasks-skim.jsonl deleted file mode 100644 index 2cf0705..0000000 --- a/vendor/trainer/runs/tomtervel-claude-2026-09-22/tasks-skim.jsonl +++ /dev/null @@ -1,30 +0,0 @@ -{"id":"nyinnflyttet@/","persona":"nyinnflyttet","need":"bli-medlem","page":"/","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Bli med og gjøre en innsats","Lån eller lån ut utstyr til en nabo":"Lån eller lån ut utstyr til en nabo","Meld deg inn eller endre opplysningene dine":"Meld deg inn eller endre opplysningene dine","Meld fra om noe i nabolaget":"Meld fra om noe i nabolaget"}}},"expect":["Meld deg inn eller endre opplysningene dine"]} -{"id":"nyinnflyttet@/medlem","persona":"nyinnflyttet","need":"bli-medlem","page":"/medlem","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre noe ved medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli med i velet":"Bli med i velet","Hold opplysningene dine oppdatert":"Hold opplysningene dine oppdatert"}}},"expect":["Bli med i velet"]} -{"id":"glemte-a-betale@/","persona":"glemte-a-betale","need":"bli-medlem","page":"/","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Bli med og gjøre en innsats","Lån eller lån ut utstyr til en nabo":"Lån eller lån ut utstyr til en nabo","Meld deg inn eller endre opplysningene dine":"Meld deg inn eller endre opplysningene dine","Meld fra om noe i nabolaget":"Meld fra om noe i nabolaget"}}},"expect":["Meld deg inn eller endre opplysningene dine"]} -{"id":"glemte-a-betale@/medlem","persona":"glemte-a-betale","need":"bli-medlem","page":"/medlem","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre noe ved medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli med i velet":"Bli med i velet","Hold opplysningene dine oppdatert":"Hold opplysningene dine oppdatert"}}},"expect":["Bli med i velet"]} -{"id":"ny-epost@/","persona":"ny-epost","need":"endre-medlemskap","page":"/","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Bli med og gjøre en innsats","Lån eller lån ut utstyr til en nabo":"Lån eller lån ut utstyr til en nabo","Meld deg inn eller endre opplysningene dine":"Meld deg inn eller endre opplysningene dine","Meld fra om noe i nabolaget":"Meld fra om noe i nabolaget"}}},"expect":["Meld deg inn eller endre opplysningene dine"]} -{"id":"ny-epost@/medlem","persona":"ny-epost","need":"endre-medlemskap","page":"/medlem","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre noe ved medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli med i velet":"Bli med i velet","Hold opplysningene dine oppdatert":"Hold opplysningene dine oppdatert"}}},"expect":["Hold opplysningene dine oppdatert"]} -{"id":"flytter@/","persona":"flytter","need":"endre-medlemskap","page":"/","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Bli med og gjøre en innsats","Lån eller lån ut utstyr til en nabo":"Lån eller lån ut utstyr til en nabo","Meld deg inn eller endre opplysningene dine":"Meld deg inn eller endre opplysningene dine","Meld fra om noe i nabolaget":"Meld fra om noe i nabolaget"}}},"expect":["Meld deg inn eller endre opplysningene dine"]} -{"id":"flytter@/medlem","persona":"flytter","need":"endre-medlemskap","page":"/medlem","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre noe ved medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli med i velet":"Bli med i velet","Hold opplysningene dine oppdatert":"Hold opplysningene dine oppdatert"}}},"expect":["Hold opplysningene dine oppdatert"]} -{"id":"skolevei@/","persona":"skolevei","need":"trafikkfare","page":"/","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Bli med og gjøre en innsats","Lån eller lån ut utstyr til en nabo":"Lån eller lån ut utstyr til en nabo","Meld deg inn eller endre opplysningene dine":"Meld deg inn eller endre opplysningene dine","Meld fra om noe i nabolaget":"Meld fra om noe i nabolaget"}}},"expect":["Meld fra om noe i nabolaget"]} -{"id":"skolevei@/melde-fra","persona":"skolevei","need":"trafikkfare","page":"/melde-fra","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du sett i nabolaget som ikke er som det skal?\". Which alternative do they choose?","criteria":{"Få en farlig trafikkplass tatt opp med kommunen":"Få en farlig trafikkplass tatt opp med kommunen","Få ødelagt utstyr fikset før noen skader seg":"Få ødelagt utstyr fikset før noen skader seg"}}},"expect":["Få en farlig trafikkplass tatt opp med kommunen"]} -{"id":"busslomme@/","persona":"busslomme","need":"trafikkfare","page":"/","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Bli med og gjøre en innsats","Lån eller lån ut utstyr til en nabo":"Lån eller lån ut utstyr til en nabo","Meld deg inn eller endre opplysningene dine":"Meld deg inn eller endre opplysningene dine","Meld fra om noe i nabolaget":"Meld fra om noe i nabolaget"}}},"expect":["Meld fra om noe i nabolaget"]} -{"id":"busslomme@/melde-fra","persona":"busslomme","need":"trafikkfare","page":"/melde-fra","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du sett i nabolaget som ikke er som det skal?\". Which alternative do they choose?","criteria":{"Få en farlig trafikkplass tatt opp med kommunen":"Få en farlig trafikkplass tatt opp med kommunen","Få ødelagt utstyr fikset før noen skader seg":"Få ødelagt utstyr fikset før noen skader seg"}}},"expect":["Få en farlig trafikkplass tatt opp med kommunen"]} -{"id":"huske@/","persona":"huske","need":"anleggsfeil","page":"/","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Bli med og gjøre en innsats","Lån eller lån ut utstyr til en nabo":"Lån eller lån ut utstyr til en nabo","Meld deg inn eller endre opplysningene dine":"Meld deg inn eller endre opplysningene dine","Meld fra om noe i nabolaget":"Meld fra om noe i nabolaget"}}},"expect":["Meld fra om noe i nabolaget"]} -{"id":"huske@/melde-fra","persona":"huske","need":"anleggsfeil","page":"/melde-fra","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du sett i nabolaget som ikke er som det skal?\". Which alternative do they choose?","criteria":{"Få en farlig trafikkplass tatt opp med kommunen":"Få en farlig trafikkplass tatt opp med kommunen","Få ødelagt utstyr fikset før noen skader seg":"Få ødelagt utstyr fikset før noen skader seg"}}},"expect":["Få ødelagt utstyr fikset før noen skader seg"]} -{"id":"bru@/","persona":"bru","need":"anleggsfeil","page":"/","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Bli med og gjøre en innsats","Lån eller lån ut utstyr til en nabo":"Lån eller lån ut utstyr til en nabo","Meld deg inn eller endre opplysningene dine":"Meld deg inn eller endre opplysningene dine","Meld fra om noe i nabolaget":"Meld fra om noe i nabolaget"}}},"expect":["Meld fra om noe i nabolaget"]} -{"id":"bru@/melde-fra","persona":"bru","need":"anleggsfeil","page":"/melde-fra","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du sett i nabolaget som ikke er som det skal?\". Which alternative do they choose?","criteria":{"Få en farlig trafikkplass tatt opp med kommunen":"Få en farlig trafikkplass tatt opp med kommunen","Få ødelagt utstyr fikset før noen skader seg":"Få ødelagt utstyr fikset før noen skader seg"}}},"expect":["Få ødelagt utstyr fikset før noen skader seg"]} -{"id":"blokker@/","persona":"blokker","need":"horingsinnspill","page":"/","state":{"body":"Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Bli med og gjøre en innsats","Lån eller lån ut utstyr til en nabo":"Lån eller lån ut utstyr til en nabo","Meld deg inn eller endre opplysningene dine":"Meld deg inn eller endre opplysningene dine","Meld fra om noe i nabolaget":"Meld fra om noe i nabolaget"}}},"expect":["Bli med og gjøre en innsats"]} -{"id":"blokker@/bidra","persona":"blokker","need":"horingsinnspill","page":"/bidra","state":{"body":"Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til eller si din mening?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Få din mening med i velets høringssvar":"Få din mening med i velets høringssvar","Få en plass i komiteen som passer deg":"Få en plass i komiteen som passer deg"}}},"expect":["Få din mening med i velets høringssvar"]} -{"id":"togtider@/","persona":"togtider","need":"horingsinnspill","page":"/","state":{"body":"Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Bli med og gjøre en innsats","Lån eller lån ut utstyr til en nabo":"Lån eller lån ut utstyr til en nabo","Meld deg inn eller endre opplysningene dine":"Meld deg inn eller endre opplysningene dine","Meld fra om noe i nabolaget":"Meld fra om noe i nabolaget"}}},"expect":["Bli med og gjøre en innsats"]} -{"id":"togtider@/bidra","persona":"togtider","need":"horingsinnspill","page":"/bidra","state":{"body":"Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til eller si din mening?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Få din mening med i velets høringssvar":"Få din mening med i velets høringssvar","Få en plass i komiteen som passer deg":"Få en plass i komiteen som passer deg"}}},"expect":["Få din mening med i velets høringssvar"]} -{"id":"vafler@/","persona":"vafler","need":"hjelpe-til","page":"/","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Bli med og gjøre en innsats","Lån eller lån ut utstyr til en nabo":"Lån eller lån ut utstyr til en nabo","Meld deg inn eller endre opplysningene dine":"Meld deg inn eller endre opplysningene dine","Meld fra om noe i nabolaget":"Meld fra om noe i nabolaget"}}},"expect":["Bli med og gjøre en innsats"]} -{"id":"vafler@/bidra","persona":"vafler","need":"hjelpe-til","page":"/bidra","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til eller si din mening?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Få din mening med i velets høringssvar":"Få din mening med i velets høringssvar","Få en plass i komiteen som passer deg":"Få en plass i komiteen som passer deg"}}},"expect":["Bli med på dugnad eller arrangement"]} -{"id":"motorsag@/","persona":"motorsag","need":"hjelpe-til","page":"/","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Bli med og gjøre en innsats","Lån eller lån ut utstyr til en nabo":"Lån eller lån ut utstyr til en nabo","Meld deg inn eller endre opplysningene dine":"Meld deg inn eller endre opplysningene dine","Meld fra om noe i nabolaget":"Meld fra om noe i nabolaget"}}},"expect":["Bli med og gjøre en innsats"]} -{"id":"motorsag@/bidra","persona":"motorsag","need":"hjelpe-til","page":"/bidra","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til eller si din mening?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Få din mening med i velets høringssvar":"Få din mening med i velets høringssvar","Få en plass i komiteen som passer deg":"Få en plass i komiteen som passer deg"}}},"expect":["Bli med på dugnad eller arrangement"]} -{"id":"pendler@/","persona":"pendler","need":"komite","page":"/","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Bli med og gjøre en innsats","Lån eller lån ut utstyr til en nabo":"Lån eller lån ut utstyr til en nabo","Meld deg inn eller endre opplysningene dine":"Meld deg inn eller endre opplysningene dine","Meld fra om noe i nabolaget":"Meld fra om noe i nabolaget"}}},"expect":["Bli med og gjøre en innsats"]} -{"id":"pendler@/bidra","persona":"pendler","need":"komite","page":"/bidra","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til eller si din mening?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Få din mening med i velets høringssvar":"Få din mening med i velets høringssvar","Få en plass i komiteen som passer deg":"Få en plass i komiteen som passer deg"}}},"expect":["Få en plass i komiteen som passer deg"]} -{"id":"planlegger@/","persona":"planlegger","need":"komite","page":"/","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Bli med og gjøre en innsats","Lån eller lån ut utstyr til en nabo":"Lån eller lån ut utstyr til en nabo","Meld deg inn eller endre opplysningene dine":"Meld deg inn eller endre opplysningene dine","Meld fra om noe i nabolaget":"Meld fra om noe i nabolaget"}}},"expect":["Bli med og gjøre en innsats"]} -{"id":"planlegger@/bidra","persona":"planlegger","need":"komite","page":"/bidra","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til eller si din mening?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Få din mening med i velets høringssvar":"Få din mening med i velets høringssvar","Få en plass i komiteen som passer deg":"Få en plass i komiteen som passer deg"}}},"expect":["Få en plass i komiteen som passer deg"]} -{"id":"tilhenger@/","persona":"tilhenger","need":"dele-utstyr","page":"/","state":{"body":"Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Bli med og gjøre en innsats","Lån eller lån ut utstyr til en nabo":"Lån eller lån ut utstyr til en nabo","Meld deg inn eller endre opplysningene dine":"Meld deg inn eller endre opplysningene dine","Meld fra om noe i nabolaget":"Meld fra om noe i nabolaget"}}},"expect":["Lån eller lån ut utstyr til en nabo"]} -{"id":"stige@/","persona":"stige","need":"dele-utstyr","page":"/","state":{"body":"Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Bli med og gjøre en innsats":"Bli med og gjøre en innsats","Lån eller lån ut utstyr til en nabo":"Lån eller lån ut utstyr til en nabo","Meld deg inn eller endre opplysningene dine":"Meld deg inn eller endre opplysningene dine","Meld fra om noe i nabolaget":"Meld fra om noe i nabolaget"}}},"expect":["Lån eller lån ut utstyr til en nabo"]} diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/README.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/README.md deleted file mode 100644 index 38058b3..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/README.md +++ /dev/null @@ -1,50 +0,0 @@ -# Tomter Vel, the plan updated: committees as groups, public lists, multi-choice - -`plans/tomtervel.yaml` after the 2026-09-23 revision, built with -Claude Sonnet writing every part of the card (322 s, 31 pages, -verifier green by construction). This is what vel.klingenbergbygg.no -serves from the afternoon of 2026-09-23. Visitor: qwen3:8b, one task -per call, shown each option as its whole card, answering by number. - -What changed in the plan: - -- The seven committees are the desk groups, named as the site names - them, and the committee application draws its options from that - list (`options_from: groups`), ticking any number. -- Traffic reports, playground faults and the noticeboard have a - public read-only list at `/status/`, linked from the page - after sending. Emails, phone numbers and the poster's name are - projected away. -- Volunteers tick several events; helpers tick several things they - can do. -- Hearing input sits on the front door: a resident with an opinion is - not a volunteer. -- Door lines (`who`) name concrete things: snow, shopping, a lift; a - dangerous bend, a broken swing. - -| Visitor could read | Card build, 2026-09-23 morning | This build | -|---|---|---| -| Headings and descriptions | 32 of 40 | 31 of 38 | -| Headings only | 29 of 40 | 30 of 38 | - -Two fewer tasks, since hearing input is now one step, not two. The -misses that remain: - -- "Bli medlem av Tomter Vel" against "Oppdater eller avslutt - medlemskapet": the lapsed member ("I was a member but did not pay - last year") reads themselves as an existing member. Both builds, - both modes. One form for join-and-pay would end it. -- The two hearing personas and the planner still cross between "Få - din mening med i høringssvaret" and "Bli med og gjør en innsats" on - the front door, in both directions. The planner who wants a - committee seat *because* of planning is genuinely between them. -- On the neighbours' page, "Få en nabo til å stille opp" and "Bli - spurt når en nabo trenger en hånd" are still crossed by one persona - each way. "Trenger du hjelp" and "Kan du hjelpe" would be plainer. - -An instrument note: the first scoring of this build read 24 of 38 -with cards, worse than headings alone, because the visitor model, -shown the page's description above the options, copied that -description as its "choice" six times. The answerer now numbers the -options and asks for the number; that is the 31 of 38 above, on the -same site and personas. The old answers are not kept. diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/aggregates.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/aggregates.yaml deleted file mode 100644 index 73a8eaa..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/aggregates.yaml +++ /dev/null @@ -1,162 +0,0 @@ -aggregates: -- bucket: anleggsfeil - initial: open - states: - open: - event: received - tatt_tak_i: - event: tatt_tak_i - utbedret: - event: utbedret - transitions: - open: - - tatt_tak_i - tatt_tak_i: - - utbedret -- bucket: frivillige - initial: open - states: - kontaktet: - event: kontaktet - open: - event: received - satt_opp: - event: satt_opp - takket_nei: - event: takket_nei - transitions: - kontaktet: - - satt_opp - - takket_nei - open: - - kontaktet - - takket_nei -- bucket: hjelpebehov - initial: open - states: - formidlet: - event: formidlet - ikke_lost: - event: ikke_lost - open: - event: received - ordnet: - event: ordnet - transitions: - formidlet: - - ordnet - - ikke_lost - open: - - formidlet - - ikke_lost -- bucket: hjelpere - initial: open - states: - open: - event: received - registrert: - event: registrert - trukket: - event: trukket - transitions: - open: - - registrert - - trukket -- bucket: husstander - initial: open - states: - betalt: - event: betalt - open: - event: received - utmeldt: - event: utmeldt - transitions: - open: - - betalt - - utmeldt -- bucket: innspill - initial: open - states: - ikke_tatt_med: - event: ikke_tatt_med - open: - event: received - tatt_med: - event: tatt_med - transitions: - open: - - tatt_med - - ikke_tatt_med -- bucket: komitesoknader - initial: open - states: - avslatt: - event: avslatt - open: - event: received - plassert: - event: plassert - transitions: - open: - - plassert - - avslatt -- bucket: medlemsendringer - initial: open - states: - open: - event: received - oppdatert: - event: oppdatert - transitions: - open: - - oppdatert -- bucket: oppslag - initial: open - states: - lagt_ut: - event: lagt_ut - open: - event: received - tatt_ned: - event: tatt_ned - transitions: - open: - - lagt_ut - - tatt_ned -- bucket: trafikkmeldinger - initial: open - states: - avvist: - event: avvist - open: - event: received - ordnet: - event: ordnet - tatt_opp: - event: tatt_opp - transitions: - open: - - tatt_opp - - avvist - tatt_opp: - - ordnet - - avvist -- bucket: utlegg - initial: open - states: - avvist: - event: avvist - godkjent: - event: godkjent - open: - event: received - utbetalt: - event: utbetalt - transitions: - godkjent: - - utbetalt - - avvist - open: - - godkjent - - avvist diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/answers-full.jsonl b/vendor/trainer/runs/tomtervel-committees-2026-09-23/answers-full.jsonl deleted file mode 100644 index 2d1e4ac..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/answers-full.jsonl +++ /dev/null @@ -1,38 +0,0 @@ -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"nyinnflyttet@/"} -{"choice":"Bli medlem av Tomter Vel","confidence":0.95,"id":"nyinnflyttet@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"glemte-a-betale@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"glemte-a-betale@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"ny-epost@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"ny-epost@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"flytter@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":1.0,"id":"flytter@/medlem"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"skolevei@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"skolevei@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"busslomme@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"busslomme@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"huske@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"huske@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"bru@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"bru@/melde-fra"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"blokker@/"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"togtider@/"} -{"choice":"Bli med og gjør en innsats","confidence":0.95,"id":"vafler@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"vafler@/bidra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"motorsag@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"motorsag@/bidra"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"pendler@/"} -{"choice":"Sitt i en komité som betyr noe for deg","confidence":0.95,"id":"pendler@/bidra"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"planlegger@/"} -{"choice":"Sitt i en komité som betyr noe for deg","confidence":0.95,"id":"planlegger@/bidra"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"tilhenger@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"tilhenger@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"stige@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"stige@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"snomaking@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"snomaking@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"nyoperert@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"nyoperert@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"hjemmekontor@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"hjemmekontor@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":1.0,"id":"pensjonert-elektriker@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"pensjonert-elektriker@/naboer"} diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/answers-skim.jsonl b/vendor/trainer/runs/tomtervel-committees-2026-09-23/answers-skim.jsonl deleted file mode 100644 index 7cf3011..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/answers-skim.jsonl +++ /dev/null @@ -1,38 +0,0 @@ -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.85,"id":"nyinnflyttet@/"} -{"choice":"Bli medlem av Tomter Vel","confidence":0.95,"id":"nyinnflyttet@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"glemte-a-betale@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"glemte-a-betale@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"ny-epost@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"ny-epost@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"flytter@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"flytter@/medlem"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"skolevei@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"skolevei@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.85,"id":"busslomme@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"busslomme@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.85,"id":"huske@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"huske@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"bru@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"bru@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.85,"id":"blokker@/"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"togtider@/"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"vafler@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"vafler@/bidra"} -{"choice":"Bli med og gjør en innsats","confidence":0.95,"id":"motorsag@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"motorsag@/bidra"} -{"choice":"Bli med og gjør en innsats","confidence":0.85,"id":"pendler@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"pendler@/bidra"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"planlegger@/"} -{"choice":"Sitt i en komité som betyr noe for deg","confidence":0.95,"id":"planlegger@/bidra"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"tilhenger@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"tilhenger@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"stige@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"stige@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"snomaking@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"snomaking@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"nyoperert@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"nyoperert@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"hjemmekontor@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"hjemmekontor@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"pensjonert-elektriker@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"pensjonert-elektriker@/naboer"} diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/build.log b/vendor/trainer/runs/tomtervel-committees-2026-09-23/build.log deleted file mode 100644 index 0dd2398..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/build.log +++ /dev/null @@ -1,45 +0,0 @@ -words: questions/arrangementer/index.yaml -words: questions/bidra/index.yaml -words: questions/decide/dele-utstyr.yaml -words: questions/decide/kan-hjelpe.yaml -words: questions/decide/trenger-hjelp.yaml -words: questions/horingsinstans/index.yaml -words: questions/index.yaml -words: questions/kasserer/index.yaml -words: questions/komiteer/index.yaml -words: questions/komiteer/utlegg-sent.yaml -words: questions/komiteer/utlegg.yaml -words: questions/lekeplasser/index.yaml -words: questions/medlem/index.yaml -words: questions/melde-fra/index.yaml -words: questions/naboer/index.yaml -words: questions/nabohjelp/index.yaml -words: questions/received/anleggsfeil.yaml -words: questions/received/bli-medlem.yaml -words: questions/received/dele-utstyr.yaml -words: questions/received/endre-medlemskap.yaml -words: questions/received/hjelpe-til.yaml -words: questions/received/horingsinnspill.yaml -words: questions/received/kan-hjelpe.yaml -words: questions/received/komite.yaml -words: questions/received/trafikkfare.yaml -words: questions/received/trenger-hjelp.yaml -words: questions/status/anleggsfeil/index.yaml -words: questions/status/oppslag/index.yaml -words: questions/status/trafikkmeldinger/index.yaml -words: questions/styret/index.yaml -words: questions/trafikk/index.yaml -content repo written to runs/tomtervel-committees-2026-09-23 -OK: 31 question(s), 12 aggregate(s) valid -need "bli-medlem": / [Bli medlem eller endre opplysningene dine] -> /medlem [Bli medlem av Tomter Vel] -> "husstander" -need "endre-medlemskap": / [Bli medlem eller endre opplysningene dine] -> /medlem [Oppdater eller avslutt medlemskapet] -> "medlemsendringer" -need "trafikkfare": / [Meld fra om noe som bør fikses] -> /melde-fra [Meld fra om en trafikkfare] -> "trafikkmeldinger" -need "anleggsfeil": / [Meld fra om noe som bør fikses] -> /melde-fra [Meld fra om noe ødelagt] -> "anleggsfeil" -need "horingsinnspill": / [Få din mening med i høringssvaret] -> "innspill" -need "hjelpe-til": / [Bli med og gjør en innsats] -> /bidra [Bli med på dugnad eller arrangement] -> "frivillige" -need "komite": / [Bli med og gjør en innsats] -> /bidra [Sitt i en komité som betyr noe for deg] -> "komitesoknader" -need "trenger-hjelp": / [Få hjelp av naboer, eller gi en hånd selv] -> /naboer [Få en nabo til å stille opp] -> "hjelpebehov" -need "kan-hjelpe": / [Få hjelp av naboer, eller gi en hånd selv] -> /naboer [Bli spurt når en nabo trenger en hånd] -> "hjelpere" -need "dele-utstyr": / [Få hjelp av naboer, eller gi en hånd selv] -> /naboer [Lån ut eller lån av naboen] -> "oppslag" -need "utlegg": /komiteer/utlegg [Få pengene tilbake] -> "utlegg" -OK: 11 need(s) structurally met, 0 planned, 21 persona(s) diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/01-questions_arrangementer_index.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/01-questions_arrangementer_index.yaml.md deleted file mode 100644 index e0236ea..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/01-questions_arrangementer_index.yaml.md +++ /dev/null @@ -1,80 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/arrangementer/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "frivillige": { - "description": "", - "heading": "", - "moves": { - "kontaktet->satt_opp": "satt_opp>", - "kontaktet->takket_nei": "takket_nei>", - "open->kontaktet": "kontaktet>", - "open->takket_nei": "takket_nei>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "frivillige": { - "description": "Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem.", - "heading": "Frivillige til arrangementer og dugnad", - "moves": { - "kontaktet->satt_opp": "Sett opp", - "kontaktet->takket_nei": "Takket nei", - "open->kontaktet": "Merk som kontaktet", - "open->takket_nei": "Takket nei" - } - } - }, - "confirm": "Lagre", - "description": "Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer.", - "links": {}, - "question": "Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/02-questions_bidra_index.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/02-questions_bidra_index.yaml.md deleted file mode 100644 index f5cf08c..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/02-questions_bidra_index.yaml.md +++ /dev/null @@ -1,156 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/bidra/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "hjelpe-til": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "hva": "", - "navn": "", - "telefon": "" - }, - "icon": "", - "labels": { - "hva": "", - "navn": "", - "telefon": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "komite": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "epost": "", - "komite": "", - "navn": "" - }, - "icon": "", - "labels": { - "epost": "", - "komite": "", - "navn": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Vil du stille opp for nabolaget? Her melder du deg til dugnad og arrangementer, eller til en av komiteene.", - "needs": { - "hjelpe-til": { - "button": "Meld meg på", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.", - "encouragement": "Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg.", - "form_description": "Fortell kort hva du kan hjelpe til med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli med på dugnad eller arrangement", - "hints": { - "hva": "Kan hjelpe til på 17. mai, eller stille på dugnad i mai", - "navn": "Kari Nordmann", - "telefon": "912 34 567" - }, - "icon": "hand-helping", - "labels": { - "hva": "Hva kan du hjelpe til med?", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit.", - "road_icon": "clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "users", - "who_title": "Hvem leser dette" - }, - "komite": { - "button": "Meld interesse", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i.", - "encouragement": "Det tar bare et minutt, og noen fra styret svarer deg.", - "form_description": "Skriv hvilken komité du er interessert i.", - "form_title": "Meld deg til en komité", - "heading": "Sitt i en komité som betyr noe for deg", - "hints": { - "epost": "kari@eksempel.no", - "komite": "Elvestien, eller lekeplassene", - "navn": "Kari Nordmann" - }, - "icon": "users", - "labels": { - "epost": "E-post", - "komite": "Hvilken komité?", - "navn": "Navn" - }, - "road_description": "Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå.", - "road_icon": "clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "handshake", - "who_title": "Hvem leser dette" - } - }, - "question": "Vil du hjelpe til i nabolaget?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/03-questions_decide_dele-utstyr.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/03-questions_decide_dele-utstyr.yaml.md deleted file mode 100644 index a080316..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/03-questions_decide_dele-utstyr.yaml.md +++ /dev/null @@ -1,66 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/decide/dele-utstyr.yaml -It is a page the person who sent a form reaches later, through a private link, to make a decision that is theirs: under `moves`, each entry is one thing they can decide. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "moves": { - "tatt_ned": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån.", - "moves": { - "tatt_ned": { - "button": "Ta ned oppslaget", - "description": "Oppslaget fjernes fra siden, så ingen flere spør om å låne det.", - "heading": "Meld at utstyret er tatt ned" - } - }, - "question": "Skal oppslaget om utstyret fortsatt stå ute?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/04-questions_decide_kan-hjelpe.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/04-questions_decide_kan-hjelpe.yaml.md deleted file mode 100644 index 7d38117..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/04-questions_decide_kan-hjelpe.yaml.md +++ /dev/null @@ -1,66 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/decide/kan-hjelpe.yaml -It is a page the person who sent a form reaches later, through a private link, to make a decision that is theirs: under `moves`, each entry is one thing they can decide. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "moves": { - "trukket": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå.", - "moves": { - "trukket": { - "button": "Trekk meg", - "description": "Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre.", - "heading": "Ta en pause fra nabohjelpen" - } - }, - "question": "Vil du fortsatt kunne bli spurt om å hjelpe en nabo?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/05-questions_decide_trenger-hjelp.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/05-questions_decide_trenger-hjelp.yaml.md deleted file mode 100644 index 4bb81af..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/05-questions_decide_trenger-hjelp.yaml.md +++ /dev/null @@ -1,66 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/decide/trenger-hjelp.yaml -It is a page the person who sent a form reaches later, through a private link, to make a decision that is theirs: under `moves`, each entry is one thing they can decide. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "moves": { - "ordnet": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet.", - "moves": { - "ordnet": { - "button": "Merk som ordnet", - "description": "Da vet vi at naboen har fått hjelpen sin, og saken lukkes.", - "heading": "Meld fra at hjelpen er gitt" - } - }, - "question": "Har naboen fått hjelpen de trengte?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/06-questions_horingsinstans_index.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/06-questions_horingsinstans_index.yaml.md deleted file mode 100644 index 2887144..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/06-questions_horingsinstans_index.yaml.md +++ /dev/null @@ -1,76 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/horingsinstans/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "innspill": { - "description": "", - "heading": "", - "moves": { - "open->ikke_tatt_med": "ikke_tatt_med>", - "open->tatt_med": "tatt_med>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "innspill": { - "description": "Her ligger innspill fra beboere til saker kommunen har på høring.", - "heading": "Innspill til høringssvar", - "moves": { - "open->ikke_tatt_med": "Ikke tatt med", - "open->tatt_med": "Tatt med i svaret" - } - } - }, - "confirm": "Send svar", - "description": "Her samler du innspillene og ser hva som er tatt med i velets høringssvar.", - "links": {}, - "question": "Hva sier vi i høringssvaret?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/07-questions_index.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/07-questions_index.yaml.md deleted file mode 100644 index 161b332..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/07-questions_index.yaml.md +++ /dev/null @@ -1,166 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/index.yaml -It is the front door: the first page any visitor sees. `question` is the page's one question. Under `doors`, each entry is one alternative that leads to a page of its own for one kind of visitor: its heading must let that visitor recognise themselves from the heading alone. Under `needs`, each entry is one alternative with a form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "doors": { - "bidra": { - "button": "", - "description": "", - "for_whom": "", - "heading": "", - "icon": "" - }, - "medlem": { - "button": "", - "description": "", - "for_whom": "", - "heading": "", - "icon": "" - }, - "melde-fra": { - "button": "", - "description": "", - "for_whom": "", - "heading": "", - "icon": "" - }, - "naboer": { - "button": "", - "description": "", - "for_whom": "", - "heading": "", - "icon": "" - } - }, - "needs": { - "horingsinnspill": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "innspill": "", - "navn": "", - "sak": "" - }, - "icon": "", - "labels": { - "innspill": "", - "navn": "", - "sak": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Tomter Vel tar vare på nærmiljøet – fra elvestien og lekeplassene til trafikksikkerhet og naboskap. Finn det som gjelder deg.", - "doors": { - "bidra": { - "button": "Bli med", - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.", - "for_whom": "Deg som vil gjøre en innsats", - "heading": "Bli med og gjør en innsats", - "icon": "hand-helping" - }, - "medlem": { - "button": "Til medlemskap", - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.", - "for_whom": "Deg som bor i Tomter", - "heading": "Bli medlem eller endre opplysningene dine", - "icon": "house" - }, - "melde-fra": { - "button": "Meld fra", - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed.", - "for_whom": "Deg som har sett noe som bør fikses", - "heading": "Meld fra om noe som bør fikses", - "icon": "alert-triangle" - }, - "naboer": { - "button": "Til nabohjelp", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.", - "for_whom": "Deg som trenger hjelp eller kan gi en hånd", - "heading": "Få hjelp av naboer, eller gi en hånd selv", - "icon": "heart-handshake" - } - }, - "needs": { - "horingsinnspill": { - "button": "Send innspill", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "encouragement": "Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen.", - "form_description": "Fortell hvilken sak det gjelder og hva du mener.", - "form_title": "Send et høringsinnspill", - "heading": "Få din mening med i høringssvaret", - "hints": { - "innspill": "Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen.", - "navn": "Kari Nordmann", - "sak": "Reguleringsplan for Tomterveien" - }, - "icon": "megaphone", - "labels": { - "innspill": "Hva mener du?", - "navn": "Navn", - "sak": "Hvilken sak gjelder det?" - }, - "road_description": "Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen.", - "road_icon": "route", - "road_title": "Hva skjer videre", - "who_description": "Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no.", - "who_icon": "users", - "who_title": "Hvem leser dette" - } - }, - "question": "Hva gjelder det for deg?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/08-questions_kasserer_index.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/08-questions_kasserer_index.yaml.md deleted file mode 100644 index 69635a8..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/08-questions_kasserer_index.yaml.md +++ /dev/null @@ -1,110 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/kasserer/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "husstander": { - "description": "", - "heading": "", - "moves": { - "open->betalt": "betalt>", - "open->utmeldt": "utmeldt>" - } - }, - "medlemsendringer": { - "description": "", - "heading": "", - "moves": { - "open->oppdatert": "oppdatert>" - } - }, - "utlegg": { - "description": "", - "heading": "", - "moves": { - "godkjent->avvist": "avvist>", - "godkjent->utbetalt": "utbetalt>", - "open->avvist": "avvist>", - "open->godkjent": "godkjent>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "husstander": { - "description": "Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem.", - "heading": "Nye medlemmer som venter på registrering", - "moves": { - "open->betalt": "Registrer betaling", - "open->utmeldt": "Meld ut" - } - }, - "medlemsendringer": { - "description": "Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert.", - "heading": "Endringer som venter på å bli registrert", - "moves": { - "open->oppdatert": "Registrer endring" - } - }, - "utlegg": { - "description": "Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling.", - "heading": "Utlegg som venter på deg", - "moves": { - "godkjent->avvist": "Avvis likevel", - "godkjent->utbetalt": "Merk som utbetalt", - "open->avvist": "Avvis utlegg", - "open->godkjent": "Godkjenn utlegg" - } - } - }, - "confirm": "Lagre", - "description": "Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer.", - "links": {}, - "question": "Hva venter på meg som kasserer akkurat nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/09-questions_komiteer_index.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/09-questions_komiteer_index.yaml.md deleted file mode 100644 index 0ef8881..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/09-questions_komiteer_index.yaml.md +++ /dev/null @@ -1,70 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/komiteer/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": {}, - "confirm": "", - "description": "", - "links": { - "utlegg": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": {}, - "confirm": "Lagre endring", - "description": "Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp.", - "links": { - "utlegg": { - "button": "Send utlegg", - "description": "Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake.", - "heading": "Få tilbake det du har lagt ut" - } - }, - "question": "Hva står ubehandlet i komiteen din nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/10-questions_komiteer_utlegg-sent.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/10-questions_komiteer_utlegg-sent.yaml.md deleted file mode 100644 index 350f2a2..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/10-questions_komiteer_utlegg-sent.yaml.md +++ /dev/null @@ -1,58 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/komiteer/utlegg-sent.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Til forsiden", - "description": "Utlegget er sendt til kasserer. Du får beskjed når det er sjekket.", - "next_description": "Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga.", - "next_heading": "Pengene kommer på konto", - "question": "Hva skjer med utlegget mitt nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/11-questions_komiteer_utlegg.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/11-questions_komiteer_utlegg.yaml.md deleted file mode 100644 index 29afa32..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/11-questions_komiteer_utlegg.yaml.md +++ /dev/null @@ -1,98 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/komiteer/utlegg.yaml -It is a page only one role inside the business can open, holding one form. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "belop": "", - "hva": "", - "navn": "" - }, - "icon": "", - "labels": { - "belop": "", - "hva": "", - "navn": "" - }, - "page_description": "", - "question": "", - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "button": "Send inn", - "description": "Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten.", - "encouragement": "Legg ved bilag om du har det, så går det raskere.", - "form_description": "Ha kvittering eller bilag klart før du fyller ut.", - "form_title": "Krav om refusjon", - "heading": "Få pengene tilbake", - "hints": { - "belop": "450 kr", - "hva": "Kaffe og kjeks til dugnaden", - "navn": "Kari Nordmann" - }, - "icon": "receipt", - "labels": { - "belop": "Beløp", - "hva": "Hva gjaldt det", - "navn": "Navn" - }, - "page_description": "Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake.", - "question": "Har du lagt ut penger for komiteen og vil ha dem tilbake?", - "road_description": "Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor.", - "road_icon": "wallet", - "road_title": "Fra krav til utbetaling", - "who_description": "Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster.", - "who_icon": "coins", - "who_title": "Kasserer ser dette" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/12-questions_lekeplasser_index.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/12-questions_lekeplasser_index.yaml.md deleted file mode 100644 index 8a3681a..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/12-questions_lekeplasser_index.yaml.md +++ /dev/null @@ -1,76 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/lekeplasser/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "anleggsfeil": { - "description": "", - "heading": "", - "moves": { - "open->tatt_tak_i": "tatt_tak_i>", - "tatt_tak_i->utbedret": "utbedret>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "anleggsfeil": { - "description": "Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses.", - "heading": "Det som er meldt inn av skader", - "moves": { - "open->tatt_tak_i": "Ta tak i saken", - "tatt_tak_i->utbedret": "Merk som utbedret" - } - } - }, - "confirm": "Lagre", - "description": "Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset.", - "links": {}, - "question": "Hva må fikses på lekeplassene og stien nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/13-questions_medlem_index.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/13-questions_medlem_index.yaml.md deleted file mode 100644 index ae66041..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/13-questions_medlem_index.yaml.md +++ /dev/null @@ -1,160 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/medlem/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "bli-medlem": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "adresse": "", - "epost": "", - "navn": "", - "telefon": "" - }, - "icon": "", - "labels": { - "adresse": "", - "epost": "", - "navn": "", - "telefon": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "endre-medlemskap": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "adresse": "", - "hva_er_nytt": "", - "navn": "" - }, - "icon": "", - "labels": { - "adresse": "", - "hva_er_nytt": "", - "navn": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Bli medlem av Tomter Vel, eller oppdater opplysningene dine hvis du allerede er medlem.", - "needs": { - "bli-medlem": { - "button": "Bli medlem", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.", - "encouragement": "Kasserer sender deg kontingenten på e-post rett etterpå.", - "form_description": "Ha adressen i Tomter og en e-post du bruker klar.", - "form_title": "Meld deg inn", - "heading": "Bli medlem av Tomter Vel", - "hints": { - "adresse": "Tomterveien 12", - "epost": "ola.nordmann@epost.no", - "navn": "Ola Nordmann", - "telefon": "123 45 678" - }, - "icon": "user-plus", - "labels": { - "adresse": "Adresse", - "epost": "E-post", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem.", - "road_icon": "coins", - "road_title": "Etter innmelding", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "user", - "who_title": "Hvem svarer deg" - }, - "endre-medlemskap": { - "button": "Send endring", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.", - "encouragement": "Det tar bare et par minutter, og kasserer ordner resten.", - "form_description": "Skriv navnet ditt og hva som er nytt.", - "form_title": "Endre medlemskap", - "heading": "Oppdater eller avslutt medlemskapet", - "hints": { - "adresse": "Ny adresse i Tomter", - "hva_er_nytt": "Ny e-post, ny adresse, eller ønske om utmelding", - "navn": "Ola Nordmann" - }, - "icon": "pencil", - "labels": { - "adresse": "Adresse", - "hva_er_nytt": "Hva vil du endre?", - "navn": "Navn" - }, - "road_description": "Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om.", - "road_icon": "refresh-cw", - "road_title": "Etter du sender inn", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "user", - "who_title": "Hvem svarer deg" - } - }, - "question": "Vil du bli medlem, eller endre medlemskapet ditt?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/14-questions_melde-fra_index.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/14-questions_melde-fra_index.yaml.md deleted file mode 100644 index ab2687d..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/14-questions_melde-fra_index.yaml.md +++ /dev/null @@ -1,152 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/melde-fra/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "anleggsfeil": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "hva": "", - "hvor": "" - }, - "icon": "", - "labels": { - "hva": "", - "hvor": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "trafikkfare": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "epost": "", - "hva": "", - "hvor": "" - }, - "icon": "", - "labels": { - "epost": "", - "hva": "", - "hvor": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Har du sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien? Her sier du fra til velet.", - "needs": { - "anleggsfeil": { - "button": "Send inn", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.", - "encouragement": "Det holder med noen ord om hva du så og hvor.", - "form_description": "Fortell hva som er ødelagt og omtrent hvor det er.", - "form_title": "Meld anleggsfeil", - "heading": "Meld fra om noe ødelagt", - "hints": { - "hva": "Løs planke på gjerdet ved husken", - "hvor": "Lekeplassen ved Tomterveien, ved husken" - }, - "icon": "construction", - "labels": { - "hva": "Hva er ødelagt", - "hvor": "Hvor er det" - }, - "road_description": "Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet.", - "road_icon": "wrench", - "road_title": "Hva skjer videre", - "who_description": "Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no.", - "who_icon": "hammer", - "who_title": "Hvem leser dette" - }, - "trafikkfare": { - "button": "Send inn", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.", - "encouragement": "Bare noen linjer om hva og hvor er nok til at vi kan følge opp.", - "form_description": "Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer.", - "form_title": "Meld trafikkfare", - "heading": "Meld fra om en trafikkfare", - "hints": { - "epost": "ola.nordmann@epost.no", - "hva": "Dårlig sikt i krysset, biler kjører fort", - "hvor": "Krysset Tomterveien / Elvestien" - }, - "icon": "alert-triangle", - "labels": { - "epost": "E-post (valgfritt)", - "hva": "Hva så du", - "hvor": "Hvor var det" - }, - "road_description": "Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist.", - "road_icon": "route", - "road_title": "Hva skjer videre", - "who_description": "Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no.", - "who_icon": "car", - "who_title": "Hvem leser dette" - } - }, - "question": "Hva vil du melde fra om?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/15-questions_naboer_index.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/15-questions_naboer_index.yaml.md deleted file mode 100644 index 138bfd6..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/15-questions_naboer_index.yaml.md +++ /dev/null @@ -1,222 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/naboer/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "dele-utstyr": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "har_eller_trenger": "", - "hva": "", - "navn": "" - }, - "icon": "", - "labels": { - "email": "", - "har_eller_trenger": "", - "hva": "", - "navn": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "kan-hjelpe": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "kan": "", - "navn": "", - "telefon": "" - }, - "icon": "", - "labels": { - "email": "", - "kan": "", - "navn": "", - "telefon": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "trenger-hjelp": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "adresse": "", - "email": "", - "hva": "", - "navn": "", - "telefon": "" - }, - "icon": "", - "labels": { - "adresse": "", - "email": "", - "hva": "", - "navn": "", - "telefon": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Godt naboskap gjør hverdagen lettere. Trenger du en hånd, kan gi en, eller har noe å låne bort?", - "needs": { - "dele-utstyr": { - "button": "Legg ut oppslag", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.", - "encouragement": "Vi legger det ut så naboene kan se det.", - "form_description": "Skriv kort hva det gjelder, så folk skjønner det med en gang.", - "form_title": "Lån eller utlån", - "heading": "Lån ut eller lån av naboen", - "hints": { - "email": "ola@eksempel.no", - "har_eller_trenger": "Har til utlån", - "hva": "Hengerfeste til bil, tilhenger, stige", - "navn": "Ola Nordmann" - }, - "icon": "package", - "labels": { - "email": "E-post", - "har_eller_trenger": "Har du eller trenger du", - "hva": "Hva gjelder det", - "navn": "Navn" - }, - "road_description": "Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen.", - "road_icon": "clipboard-list", - "road_title": "Fra oppslag til avtale", - "who_description": "Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden.", - "who_icon": "users", - "who_title": "Hvem ser dette" - }, - "kan-hjelpe": { - "button": "Meld deg", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.", - "encouragement": "Du blir bare kontaktet når noe passer for deg.", - "form_description": "Fortell kort hva du kan bidra med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli spurt når en nabo trenger en hånd", - "hints": { - "email": "kari@eksempel.no", - "kan": "Måke snø, kjøre til butikken, gi skyss til legen", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "hand-helping", - "labels": { - "email": "E-post", - "kan": "Hva kan du hjelpe med", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra.", - "road_icon": "user-check", - "road_title": "Fra påmelding til spørsmål", - "who_description": "Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no.", - "who_icon": "heart-handshake", - "who_title": "Hvem ser dette" - }, - "trenger-hjelp": { - "button": "Be om hjelp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.", - "encouragement": "Vi finner en nabo som kan stille opp så fort som mulig.", - "form_description": "Skriv kort hva du trenger hjelp til.", - "form_title": "Be om en hånd", - "heading": "Få en nabo til å stille opp", - "hints": { - "adresse": "Tomterveien 12", - "email": "kari@eksempel.no", - "hva": "Måke snø på trappa, handle inn litt mat", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "heart-handshake", - "labels": { - "adresse": "Adresse", - "email": "E-post", - "hva": "Hva trenger du hjelp til", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed.", - "road_icon": "hand-helping", - "road_title": "Fra melding til hjelp", - "who_description": "Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden.", - "who_icon": "users", - "who_title": "Hvem ser dette" - } - }, - "question": "Trenger du en hånd, eller kan du gi en?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/16-questions_nabohjelp_index.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/16-questions_nabohjelp_index.yaml.md deleted file mode 100644 index b39e66c..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/16-questions_nabohjelp_index.yaml.md +++ /dev/null @@ -1,96 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/nabohjelp/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "hjelpebehov": { - "description": "", - "heading": "", - "moves": { - "formidlet->ikke_lost": "ikke_lost>", - "formidlet->ordnet": "ordnet>", - "open->formidlet": "formidlet>", - "open->ikke_lost": "ikke_lost>" - } - }, - "hjelpere": { - "description": "", - "heading": "", - "moves": { - "open->registrert": "registrert>", - "open->trukket": "trukket>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "hjelpebehov": { - "description": "Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe.", - "heading": "Naboer som trenger en hånd", - "moves": { - "formidlet->ikke_lost": "Meld ikke løst", - "formidlet->ordnet": "Meld ordnet", - "open->formidlet": "Koble til nabo", - "open->ikke_lost": "Meld ikke løst" - } - }, - "hjelpere": { - "description": "Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem.", - "heading": "Naboer som kan stille opp", - "moves": { - "open->registrert": "Registrer som hjelper", - "open->trukket": "Meld trukket" - } - } - }, - "confirm": "Lagre", - "description": "Her kobler du naboer som trenger hjelp med dem som kan stille opp.", - "links": {}, - "question": "Hvem trenger hjelp, og hvem kan stille opp?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/17-questions_received_anleggsfeil.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/17-questions_received_anleggsfeil.yaml.md deleted file mode 100644 index 5e0f48a..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/17-questions_received_anleggsfeil.yaml.md +++ /dev/null @@ -1,68 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/anleggsfeil.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "", - "see_all": { - "button": "", - "description": "", - "heading": "" - } -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake til forsiden", - "description": "Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt.", - "next_description": "Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg.", - "next_heading": "Komiteen tar tak i det", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se meldte feil", - "description": "Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet.", - "heading": "Se andre meldte feil" - } -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/18-questions_received_bli-medlem.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/18-questions_received_bli-medlem.yaml.md deleted file mode 100644 index bc8f04b..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/18-questions_received_bli-medlem.yaml.md +++ /dev/null @@ -1,58 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/bli-medlem.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake til forsiden", - "description": "Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert.", - "next_description": "Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten.", - "next_heading": "Kasserer sender deg betalingsinfo", - "question": "Hva skjer etter at jeg har meldt meg inn?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/19-questions_received_dele-utstyr.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/19-questions_received_dele-utstyr.yaml.md deleted file mode 100644 index e1b0ad7..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/19-questions_received_dele-utstyr.yaml.md +++ /dev/null @@ -1,68 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/dele-utstyr.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "", - "see_all": { - "button": "", - "description": "", - "heading": "" - } -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake til forsiden", - "description": "Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan.", - "next_description": "En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne.", - "next_heading": "Styret legger det ut for deg", - "question": "Hva skjer med det jeg har lagt ut?", - "see_all": { - "button": "Se hva naboer deler", - "description": "Se hva andre i Tomter har lagt ut til utlån akkurat nå.", - "heading": "Se alt naboene deler" - } -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/20-questions_received_endre-medlemskap.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/20-questions_received_endre-medlemskap.yaml.md deleted file mode 100644 index dad9a11..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/20-questions_received_endre-medlemskap.yaml.md +++ /dev/null @@ -1,58 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/endre-medlemskap.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake til forsiden", - "description": "Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut.", - "next_description": "Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg.", - "next_heading": "Kasserer retter opp opplysningene", - "question": "Hva skjer nå med det jeg meldte inn?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/21-questions_received_hjelpe-til.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/21-questions_received_hjelpe-til.yaml.md deleted file mode 100644 index f54bf3b..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/21-questions_received_hjelpe-til.yaml.md +++ /dev/null @@ -1,58 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/hjelpe-til.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake til forsiden", - "description": "Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg.", - "next_description": "Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden.", - "next_heading": "Komiteen tar kontakt", - "question": "Hva skjer nå som jeg har meldt meg?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/22-questions_received_horingsinnspill.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/22-questions_received_horingsinnspill.yaml.md deleted file mode 100644 index c3da711..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/22-questions_received_horingsinnspill.yaml.md +++ /dev/null @@ -1,50 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/horingsinnspill.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{"back": "Tilbake til forsiden", "description": "Innspillet ditt er sendt til høringsinstansen i velet.", "next_description": "De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med.", "next_heading": "Innspillet ditt inn i vurderingen", "question": "Hva skjer med det jeg har sagt om saken?"} diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/23-questions_received_kan-hjelpe.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/23-questions_received_kan-hjelpe.yaml.md deleted file mode 100644 index 156ae19..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/23-questions_received_kan-hjelpe.yaml.md +++ /dev/null @@ -1,58 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/kan-hjelpe.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake til forsiden", - "description": "Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe.", - "next_description": "Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte.", - "next_heading": "Du blir kontaktet ved behov", - "question": "Hva skjer nå som jeg har registrert meg?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/24-questions_received_komite.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/24-questions_received_komite.yaml.md deleted file mode 100644 index 51d1b6b..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/24-questions_received_komite.yaml.md +++ /dev/null @@ -1,58 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/komite.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake til forsiden", - "description": "Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg.", - "next_description": "Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer.", - "next_heading": "Vi finner riktig komité til deg", - "question": "Hva skjer nå som jeg har meldt interesse for en komité?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/25-questions_received_trafikkfare.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/25-questions_received_trafikkfare.yaml.md deleted file mode 100644 index 4789567..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/25-questions_received_trafikkfare.yaml.md +++ /dev/null @@ -1,68 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/trafikkfare.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "", - "see_all": { - "button": "", - "description": "", - "heading": "" - } -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake til forsiden", - "description": "Meldingen din om trafikkfaren er sendt til komiteen for trafikk.", - "next_description": "Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs.", - "next_heading": "Trafikkomiteen tar den videre", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se andre trafikkfarer", - "description": "Se hva andre har meldt inn, og status på sakene.", - "heading": "Andre meldte trafikkfarer" - } -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/26-questions_received_trenger-hjelp.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/26-questions_received_trenger-hjelp.yaml.md deleted file mode 100644 index 3a00c20..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/26-questions_received_trenger-hjelp.yaml.md +++ /dev/null @@ -1,58 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/trenger-hjelp.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Til forsiden", - "description": "Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp.", - "next_description": "Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer.", - "next_heading": "Vi finner en nabo til deg", - "question": "Hva skjer nå som jeg har bedt om hjelp?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/27-questions_status_anleggsfeil_index.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/27-questions_status_anleggsfeil_index.yaml.md deleted file mode 100644 index 9fdeed0..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/27-questions_status_anleggsfeil_index.yaml.md +++ /dev/null @@ -1,56 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/status/anleggsfeil/index.yaml -It is a public page anyone can open, listing everything sent in to one bucket and where each one stands, read-only. `question` is what this page asks; `heading` names the list. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "heading": "", - "list_description": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Tilbake til meldinger", - "description": "Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet.", - "heading": "Status på meldte anleggsfeil", - "list_description": "Alle meldinger er åpne for alle å se.", - "question": "Hva skjer med det jeg har meldt fra om?" -} diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/28-questions_status_oppslag_index.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/28-questions_status_oppslag_index.yaml.md deleted file mode 100644 index 3064f15..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/28-questions_status_oppslag_index.yaml.md +++ /dev/null @@ -1,58 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/status/oppslag/index.yaml -It is a public page anyone can open, listing everything sent in to one bucket and where each one stands, read-only. `question` is what this page asks; `heading` names the list. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "heading": "", - "list_description": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake", - "description": "Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet.", - "heading": "Oversikt over det som er meldt inn", - "list_description": "Åpen liste – navn og detaljer vises ikke.", - "question": "Hva er sendt inn, og hvor langt har det kommet?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/29-questions_status_trafikkmeldinger_index.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/29-questions_status_trafikkmeldinger_index.yaml.md deleted file mode 100644 index 1b4dadd..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/29-questions_status_trafikkmeldinger_index.yaml.md +++ /dev/null @@ -1,56 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/status/trafikkmeldinger/index.yaml -It is a public page anyone can open, listing everything sent in to one bucket and where each one stands, read-only. `question` is what this page asks; `heading` names the list. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "heading": "", - "list_description": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Tilbake", - "description": "Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet.", - "heading": "Trafikkmeldinger og status", - "list_description": "Alle meldinger som er sendt inn, og hvor de står nå.", - "question": "Er det meldt fra om noe farlig i trafikken der jeg bor?" -} diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/30-questions_styret_index.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/30-questions_styret_index.yaml.md deleted file mode 100644 index 1c366ad..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/30-questions_styret_index.yaml.md +++ /dev/null @@ -1,112 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/styret/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "innspill": { - "description": "", - "heading": "", - "moves": {} - }, - "komitesoknader": { - "description": "", - "heading": "", - "moves": { - "open->avslatt": "avslatt>", - "open->plassert": "plassert>" - } - }, - "oppslag": { - "description": "", - "heading": "", - "moves": { - "open->lagt_ut": "lagt_ut>", - "open->tatt_ned": "tatt_ned>" - } - }, - "trafikkmeldinger": { - "description": "", - "heading": "", - "moves": {} - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "innspill": { - "description": "Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar.", - "heading": "Høringsinnspill fra beboerne", - "moves": {} - }, - "komitesoknader": { - "description": "Her ligger alle som har meldt seg til en komité og venter på en plass.", - "heading": "Søknader til komiteene", - "moves": { - "open->avslatt": "Avslå søknaden", - "open->plassert": "Sett i komité" - } - }, - "oppslag": { - "description": "Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut.", - "heading": "Utstyr til utlån blant naboer", - "moves": { - "open->lagt_ut": "Legg ut oppslaget", - "open->tatt_ned": "Ta ned oppslaget" - } - }, - "trafikkmeldinger": { - "description": "Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier.", - "heading": "Meldinger om trafikkfarer", - "moves": {} - } - }, - "confirm": "Lagre", - "description": "Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.", - "links": {}, - "question": "Hva venter på styret akkurat nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/31-questions_trafikk_index.yaml.md b/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/31-questions_trafikk_index.yaml.md deleted file mode 100644 index 61c3685..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/llm/31-questions_trafikk_index.yaml.md +++ /dev/null @@ -1,80 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/trafikk/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "trafikkmeldinger": { - "description": "", - "heading": "", - "moves": { - "open->avvist": "avvist>", - "open->tatt_opp": "tatt_opp>", - "tatt_opp->avvist": "avvist>", - "tatt_opp->ordnet": "ordnet>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "trafikkmeldinger": { - "description": "Farlige steder i trafikken som naboer har meldt inn.", - "heading": "Farlige steder i trafikken", - "moves": { - "open->avvist": "Avvis meldingen", - "open->tatt_opp": "Ta opp med kommunen", - "tatt_opp->avvist": "Avvis meldingen", - "tatt_opp->ordnet": "Meld ordnet" - } - } - }, - "confirm": "Lagre", - "description": "Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier.", - "links": {}, - "question": "Hvilke trafikkfarer må følges opp?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/model.json b/vendor/trainer/runs/tomtervel-committees-2026-09-23/model.json deleted file mode 100644 index 95732e2..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/model.json +++ /dev/null @@ -1,1496 +0,0 @@ -{ - "buckets": { - "anleggsfeil": { - "desks": [ - { - "group": "lekeplasser", - "moves": [ - { - "from": "open", - "label": "Ta tak i saken", - "to": "tatt_tak_i" - }, - { - "from": "tatt_tak_i", - "label": "Merk som utbedret", - "to": "utbedret" - } - ], - "page": "/lekeplasser" - }, - { - "group": null, - "moves": [], - "page": "/status/anleggsfeil" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "tatt_tak_i" - ], - "tatt_tak_i": [ - "utbedret" - ] - } - }, - "frivillige": { - "desks": [ - { - "group": "arrangementer", - "moves": [ - { - "from": "kontaktet", - "label": "Sett opp", - "to": "satt_opp" - }, - { - "from": "kontaktet", - "label": "Takket nei", - "to": "takket_nei" - }, - { - "from": "open", - "label": "Merk som kontaktet", - "to": "kontaktet" - }, - { - "from": "open", - "label": "Takket nei", - "to": "takket_nei" - } - ], - "page": "/arrangementer" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "kontaktet": [ - "satt_opp", - "takket_nei" - ], - "open": [ - "kontaktet", - "takket_nei" - ] - } - }, - "hjelpebehov": { - "desks": [ - { - "group": "nabohjelp", - "moves": [ - { - "from": "formidlet", - "label": "Meld ordnet", - "to": "ordnet" - }, - { - "from": "formidlet", - "label": "Meld ikke løst", - "to": "ikke_lost" - }, - { - "from": "open", - "label": "Koble til nabo", - "to": "formidlet" - }, - { - "from": "open", - "label": "Meld ikke løst", - "to": "ikke_lost" - } - ], - "page": "/nabohjelp" - } - ], - "initial": "open", - "self_moves": [ - "ordnet" - ], - "transitions": { - "formidlet": [ - "ordnet", - "ikke_lost" - ], - "open": [ - "formidlet", - "ikke_lost" - ] - } - }, - "hjelpere": { - "desks": [ - { - "group": "nabohjelp", - "moves": [ - { - "from": "open", - "label": "Registrer som hjelper", - "to": "registrert" - }, - { - "from": "open", - "label": "Meld trukket", - "to": "trukket" - } - ], - "page": "/nabohjelp" - } - ], - "initial": "open", - "self_moves": [ - "trukket" - ], - "transitions": { - "open": [ - "registrert", - "trukket" - ] - } - }, - "husstander": { - "desks": [ - { - "group": "kasserer", - "moves": [ - { - "from": "open", - "label": "Registrer betaling", - "to": "betalt" - }, - { - "from": "open", - "label": "Meld ut", - "to": "utmeldt" - } - ], - "page": "/kasserer" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "betalt", - "utmeldt" - ] - } - }, - "innspill": { - "desks": [ - { - "group": "horingsinstans", - "moves": [ - { - "from": "open", - "label": "Tatt med i svaret", - "to": "tatt_med" - }, - { - "from": "open", - "label": "Ikke tatt med", - "to": "ikke_tatt_med" - } - ], - "page": "/horingsinstans" - }, - { - "group": "styret", - "moves": [], - "page": "/styret" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "tatt_med", - "ikke_tatt_med" - ] - } - }, - "komitesoknader": { - "desks": [ - { - "group": "styret", - "moves": [ - { - "from": "open", - "label": "Sett i komité", - "to": "plassert" - }, - { - "from": "open", - "label": "Avslå søknaden", - "to": "avslatt" - } - ], - "page": "/styret" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "plassert", - "avslatt" - ] - } - }, - "medlemsendringer": { - "desks": [ - { - "group": "kasserer", - "moves": [ - { - "from": "open", - "label": "Registrer endring", - "to": "oppdatert" - } - ], - "page": "/kasserer" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "oppdatert" - ] - } - }, - "oppslag": { - "desks": [ - { - "group": null, - "moves": [], - "page": "/status/oppslag" - }, - { - "group": "styret", - "moves": [ - { - "from": "open", - "label": "Legg ut oppslaget", - "to": "lagt_ut" - }, - { - "from": "open", - "label": "Ta ned oppslaget", - "to": "tatt_ned" - } - ], - "page": "/styret" - } - ], - "initial": "open", - "self_moves": [ - "tatt_ned" - ], - "transitions": { - "open": [ - "lagt_ut", - "tatt_ned" - ] - } - }, - "trafikkmeldinger": { - "desks": [ - { - "group": null, - "moves": [], - "page": "/status/trafikkmeldinger" - }, - { - "group": "styret", - "moves": [], - "page": "/styret" - }, - { - "group": "trafikk", - "moves": [ - { - "from": "open", - "label": "Ta opp med kommunen", - "to": "tatt_opp" - }, - { - "from": "open", - "label": "Avvis meldingen", - "to": "avvist" - }, - { - "from": "tatt_opp", - "label": "Meld ordnet", - "to": "ordnet" - }, - { - "from": "tatt_opp", - "label": "Avvis meldingen", - "to": "avvist" - } - ], - "page": "/trafikk" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "tatt_opp", - "avvist" - ], - "tatt_opp": [ - "ordnet", - "avvist" - ] - } - }, - "utlegg": { - "desks": [ - { - "group": "kasserer", - "moves": [ - { - "from": "godkjent", - "label": "Merk som utbetalt", - "to": "utbetalt" - }, - { - "from": "godkjent", - "label": "Avvis likevel", - "to": "avvist" - }, - { - "from": "open", - "label": "Godkjenn utlegg", - "to": "godkjent" - }, - { - "from": "open", - "label": "Avvis utlegg", - "to": "avvist" - } - ], - "page": "/kasserer" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "godkjent": [ - "utbetalt", - "avvist" - ], - "open": [ - "godkjent", - "avvist" - ] - } - } - }, - "needs": [ - { - "done_when": [ - "betalt", - "utmeldt" - ], - "enters_as": null, - "handled_by": "kasserer", - "id": "bli-medlem", - "lands_in": "husstander", - "steps": [ - { - "alternative": "Bli medlem eller endre opplysningene dine", - "expect": [ - "Bli medlem eller endre opplysningene dine" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.", - "name": "Bli medlem eller endre opplysningene dine" - }, - { - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed.", - "name": "Meld fra om noe som bør fikses" - }, - { - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.", - "name": "Bli med og gjør en innsats" - }, - { - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.", - "name": "Få hjelp av naboer, eller gi en hånd selv" - }, - { - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "name": "Få din mening med i høringssvaret" - } - ], - "page": "/", - "question": "Hva gjelder det for deg?" - }, - { - "alternative": "Bli medlem av Tomter Vel", - "expect": [ - "Bli medlem av Tomter Vel" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Adresse", - "name": "adresse", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "E-post", - "name": "epost", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Telefon", - "name": "telefon", - "optional": true, - "options": [], - "type": "tel" - } - ], - "options": [ - { - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.", - "name": "Bli medlem av Tomter Vel" - }, - { - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.", - "name": "Oppdater eller avslutt medlemskapet" - } - ], - "page": "/medlem", - "question": "Vil du bli medlem, eller endre medlemskapet ditt?" - } - ], - "success": [ - "betalt" - ], - "wants": "å bli medlem og få betalt kontingenten", - "who": "en husstand i Tomter" - }, - { - "done_when": [ - "oppdatert" - ], - "enters_as": null, - "handled_by": "kasserer", - "id": "endre-medlemskap", - "lands_in": "medlemsendringer", - "steps": [ - { - "alternative": "Bli medlem eller endre opplysningene dine", - "expect": [ - "Bli medlem eller endre opplysningene dine" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.", - "name": "Bli medlem eller endre opplysningene dine" - }, - { - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed.", - "name": "Meld fra om noe som bør fikses" - }, - { - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.", - "name": "Bli med og gjør en innsats" - }, - { - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.", - "name": "Få hjelp av naboer, eller gi en hånd selv" - }, - { - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "name": "Få din mening med i høringssvaret" - } - ], - "page": "/", - "question": "Hva gjelder det for deg?" - }, - { - "alternative": "Oppdater eller avslutt medlemskapet", - "expect": [ - "Oppdater eller avslutt medlemskapet" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Adresse", - "name": "adresse", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hva vil du endre?", - "name": "hva_er_nytt", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.", - "name": "Bli medlem av Tomter Vel" - }, - { - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.", - "name": "Oppdater eller avslutt medlemskapet" - } - ], - "page": "/medlem", - "question": "Vil du bli medlem, eller endre medlemskapet ditt?" - } - ], - "success": [ - "oppdatert" - ], - "wants": "at velet har riktige opplysninger om dem", - "who": "et medlem som har flyttet, byttet e-post eller vil melde seg ut" - }, - { - "done_when": [ - "ordnet", - "avvist" - ], - "enters_as": null, - "handled_by": "trafikk", - "id": "trafikkfare", - "lands_in": "trafikkmeldinger", - "steps": [ - { - "alternative": "Meld fra om noe som bør fikses", - "expect": [ - "Meld fra om noe som bør fikses" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.", - "name": "Bli medlem eller endre opplysningene dine" - }, - { - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed.", - "name": "Meld fra om noe som bør fikses" - }, - { - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.", - "name": "Bli med og gjør en innsats" - }, - { - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.", - "name": "Få hjelp av naboer, eller gi en hånd selv" - }, - { - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "name": "Få din mening med i høringssvaret" - } - ], - "page": "/", - "question": "Hva gjelder det for deg?" - }, - { - "alternative": "Meld fra om en trafikkfare", - "expect": [ - "Meld fra om en trafikkfare" - ], - "fields": [ - { - "label": "Hvor var det", - "name": "hvor", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hva så du", - "name": "hva", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "E-post (valgfritt)", - "name": "epost", - "optional": true, - "options": [], - "type": "email" - } - ], - "options": [ - { - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.", - "name": "Meld fra om en trafikkfare" - }, - { - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.", - "name": "Meld fra om noe ødelagt" - } - ], - "page": "/melde-fra", - "question": "Hva vil du melde fra om?" - } - ], - "success": [ - "ordnet" - ], - "wants": "at velet tar det opp med kommunen eller den som eier veien", - "who": "en som har sett et farlig sted i trafikken" - }, - { - "done_when": [ - "utbedret" - ], - "enters_as": null, - "handled_by": "lekeplasser", - "id": "anleggsfeil", - "lands_in": "anleggsfeil", - "steps": [ - { - "alternative": "Meld fra om noe som bør fikses", - "expect": [ - "Meld fra om noe som bør fikses" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.", - "name": "Bli medlem eller endre opplysningene dine" - }, - { - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed.", - "name": "Meld fra om noe som bør fikses" - }, - { - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.", - "name": "Bli med og gjør en innsats" - }, - { - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.", - "name": "Få hjelp av naboer, eller gi en hånd selv" - }, - { - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "name": "Få din mening med i høringssvaret" - } - ], - "page": "/", - "question": "Hva gjelder det for deg?" - }, - { - "alternative": "Meld fra om noe ødelagt", - "expect": [ - "Meld fra om noe ødelagt" - ], - "fields": [ - { - "label": "Hvor er det", - "name": "hvor", - "optional": false, - "options": [ - "Lekeplassen", - "Elvestien", - "Skøytebanen", - "Et annet sted" - ], - "type": "select" - }, - { - "label": "Hva er ødelagt", - "name": "hva", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.", - "name": "Meld fra om en trafikkfare" - }, - { - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.", - "name": "Meld fra om noe ødelagt" - } - ], - "page": "/melde-fra", - "question": "Hva vil du melde fra om?" - } - ], - "success": [ - "utbedret" - ], - "wants": "at det blir fikset før noen skader seg", - "who": "en som ser at noe på lekeplassen eller stien er ødelagt" - }, - { - "done_when": [ - "tatt_med", - "ikke_tatt_med" - ], - "enters_as": null, - "handled_by": "horingsinstans", - "id": "horingsinnspill", - "lands_in": "innspill", - "steps": [ - { - "alternative": "Få din mening med i høringssvaret", - "expect": [ - "Få din mening med i høringssvaret" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hvilken sak gjelder det?", - "name": "sak", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hva mener du?", - "name": "innspill", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.", - "name": "Bli medlem eller endre opplysningene dine" - }, - { - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed.", - "name": "Meld fra om noe som bør fikses" - }, - { - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.", - "name": "Bli med og gjør en innsats" - }, - { - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.", - "name": "Få hjelp av naboer, eller gi en hånd selv" - }, - { - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "name": "Få din mening med i høringssvaret" - } - ], - "page": "/", - "question": "Hva gjelder det for deg?" - } - ], - "success": [ - "tatt_med" - ], - "wants": "at velet tar det med i sitt svar", - "who": "en beboer som har en mening om en sak kommunen har på høring" - }, - { - "done_when": [ - "satt_opp", - "takket_nei" - ], - "enters_as": null, - "handled_by": "arrangementer", - "id": "hjelpe-til", - "lands_in": "frivillige", - "steps": [ - { - "alternative": "Bli med og gjør en innsats", - "expect": [ - "Bli med og gjør en innsats" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.", - "name": "Bli medlem eller endre opplysningene dine" - }, - { - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed.", - "name": "Meld fra om noe som bør fikses" - }, - { - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.", - "name": "Bli med og gjør en innsats" - }, - { - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.", - "name": "Få hjelp av naboer, eller gi en hånd selv" - }, - { - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "name": "Få din mening med i høringssvaret" - } - ], - "page": "/", - "question": "Hva gjelder det for deg?" - }, - { - "alternative": "Bli med på dugnad eller arrangement", - "expect": [ - "Bli med på dugnad eller arrangement" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Telefon", - "name": "telefon", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "Hva kan du hjelpe til med?", - "name": "hva", - "optional": false, - "options": [ - "17. mai", - "Juletregranstenning", - "Skøytedag", - "Dugnad på elvestien", - "Det som trengs" - ], - "type": "select" - } - ], - "options": [ - { - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.", - "name": "Bli med på dugnad eller arrangement" - }, - { - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i.", - "name": "Sitt i en komité som betyr noe for deg" - } - ], - "page": "/bidra", - "question": "Vil du hjelpe til i nabolaget?" - } - ], - "success": [ - "satt_opp" - ], - "wants": "å bli satt opp på noe som passer dem", - "who": "en som vil hjelpe til på et arrangement eller en dugnad" - }, - { - "done_when": [ - "plassert", - "avslatt" - ], - "enters_as": null, - "handled_by": "styret", - "id": "komite", - "lands_in": "komitesoknader", - "steps": [ - { - "alternative": "Bli med og gjør en innsats", - "expect": [ - "Bli med og gjør en innsats" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.", - "name": "Bli medlem eller endre opplysningene dine" - }, - { - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed.", - "name": "Meld fra om noe som bør fikses" - }, - { - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.", - "name": "Bli med og gjør en innsats" - }, - { - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.", - "name": "Få hjelp av naboer, eller gi en hånd selv" - }, - { - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "name": "Få din mening med i høringssvaret" - } - ], - "page": "/", - "question": "Hva gjelder det for deg?" - }, - { - "alternative": "Sitt i en komité som betyr noe for deg", - "expect": [ - "Sitt i en komité som betyr noe for deg" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "E-post", - "name": "epost", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Hvilken komité?", - "name": "komite", - "optional": false, - "options": [ - "Arrangementer", - "Elvesti", - "Høringsinstans", - "Leke- og møteplasser", - "Miljøgate", - "Pendlerforhold", - "Trafikkforhold" - ], - "type": "select" - } - ], - "options": [ - { - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.", - "name": "Bli med på dugnad eller arrangement" - }, - { - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i.", - "name": "Sitt i en komité som betyr noe for deg" - } - ], - "page": "/bidra", - "question": "Vil du hjelpe til i nabolaget?" - } - ], - "success": [ - "plassert" - ], - "wants": "en plass i den komiteen som driver med det de bryr seg om", - "who": "en som vil sitte i en komité" - }, - { - "done_when": [ - "ordnet", - "ikke_lost" - ], - "enters_as": null, - "handled_by": "nabohjelp", - "id": "trenger-hjelp", - "lands_in": "hjelpebehov", - "steps": [ - { - "alternative": "Få hjelp av naboer, eller gi en hånd selv", - "expect": [ - "Få hjelp av naboer, eller gi en hånd selv" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.", - "name": "Bli medlem eller endre opplysningene dine" - }, - { - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed.", - "name": "Meld fra om noe som bør fikses" - }, - { - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.", - "name": "Bli med og gjør en innsats" - }, - { - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.", - "name": "Få hjelp av naboer, eller gi en hånd selv" - }, - { - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "name": "Få din mening med i høringssvaret" - } - ], - "page": "/", - "question": "Hva gjelder det for deg?" - }, - { - "alternative": "Få en nabo til å stille opp", - "expect": [ - "Få en nabo til å stille opp" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "E-post", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Adresse", - "name": "adresse", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hva trenger du hjelp til", - "name": "hva", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "Telefon", - "name": "telefon", - "optional": true, - "options": [], - "type": "tel" - } - ], - "options": [ - { - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.", - "name": "Få en nabo til å stille opp" - }, - { - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.", - "name": "Bli spurt når en nabo trenger en hånd" - }, - { - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.", - "name": "Lån ut eller lån av naboen" - } - ], - "page": "/naboer", - "question": "Trenger du en hånd, eller kan du gi en?" - } - ], - "success": [ - "ordnet" - ], - "wants": "at en nabo stiller opp", - "who": "en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss" - }, - { - "done_when": [ - "registrert", - "trukket" - ], - "enters_as": null, - "handled_by": "nabohjelp", - "id": "kan-hjelpe", - "lands_in": "hjelpere", - "steps": [ - { - "alternative": "Få hjelp av naboer, eller gi en hånd selv", - "expect": [ - "Få hjelp av naboer, eller gi en hånd selv" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.", - "name": "Bli medlem eller endre opplysningene dine" - }, - { - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed.", - "name": "Meld fra om noe som bør fikses" - }, - { - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.", - "name": "Bli med og gjør en innsats" - }, - { - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.", - "name": "Få hjelp av naboer, eller gi en hånd selv" - }, - { - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "name": "Få din mening med i høringssvaret" - } - ], - "page": "/", - "question": "Hva gjelder det for deg?" - }, - { - "alternative": "Bli spurt når en nabo trenger en hånd", - "expect": [ - "Bli spurt når en nabo trenger en hånd" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "E-post", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Telefon", - "name": "telefon", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "Hva kan du hjelpe med", - "name": "kan", - "optional": false, - "options": [ - "Snømåking", - "Handling", - "Kjøring", - "Småfiks i huset", - "En prat og litt selskap", - "Det som trengs" - ], - "type": "select" - } - ], - "options": [ - { - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.", - "name": "Få en nabo til å stille opp" - }, - { - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.", - "name": "Bli spurt når en nabo trenger en hånd" - }, - { - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.", - "name": "Lån ut eller lån av naboen" - } - ], - "page": "/naboer", - "question": "Trenger du en hånd, eller kan du gi en?" - } - ], - "success": [ - "registrert" - ], - "wants": "å bli spurt når det passer", - "who": "en nabo som kan stille opp når noen trenger det" - }, - { - "done_when": [ - "lagt_ut", - "tatt_ned" - ], - "enters_as": null, - "handled_by": "styret", - "id": "dele-utstyr", - "lands_in": "oppslag", - "steps": [ - { - "alternative": "Få hjelp av naboer, eller gi en hånd selv", - "expect": [ - "Få hjelp av naboer, eller gi en hånd selv" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.", - "name": "Bli medlem eller endre opplysningene dine" - }, - { - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed.", - "name": "Meld fra om noe som bør fikses" - }, - { - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.", - "name": "Bli med og gjør en innsats" - }, - { - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.", - "name": "Få hjelp av naboer, eller gi en hånd selv" - }, - { - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "name": "Få din mening med i høringssvaret" - } - ], - "page": "/", - "question": "Hva gjelder det for deg?" - }, - { - "alternative": "Lån ut eller lån av naboen", - "expect": [ - "Lån ut eller lån av naboen" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "E-post", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Har du eller trenger du", - "name": "har_eller_trenger", - "optional": false, - "options": [ - "Jeg har noe å låne ut", - "Jeg trenger å låne noe" - ], - "type": "select" - }, - { - "label": "Hva gjelder det", - "name": "hva", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.", - "name": "Få en nabo til å stille opp" - }, - { - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.", - "name": "Bli spurt når en nabo trenger en hånd" - }, - { - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.", - "name": "Lån ut eller lån av naboen" - } - ], - "page": "/naboer", - "question": "Trenger du en hånd, eller kan du gi en?" - } - ], - "success": [ - "lagt_ut" - ], - "wants": "et oppslag som naboene ser", - "who": "en nabo som har noe å låne ut, eller trenger å låne noe" - }, - { - "done_when": [ - "utbetalt", - "avvist" - ], - "enters_as": "komiteer", - "handled_by": "kasserer", - "id": "utlegg", - "lands_in": "utlegg", - "steps": [ - { - "alternative": "Få pengene tilbake", - "expect": [ - "Få pengene tilbake" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Beløp", - "name": "belop", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hva gjaldt det", - "name": "hva", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten.", - "name": "Få pengene tilbake" - } - ], - "page": "/komiteer/utlegg", - "question": "Har du lagt ut penger for komiteen og vil ha dem tilbake?" - } - ], - "success": [ - "utbetalt" - ], - "wants": "pengene tilbake", - "who": "en i en komité som har lagt ut for noe" - } - ], - "personas": [ - { - "id": "nyinnflyttet", - "need": "bli-medlem", - "text": "Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?" - }, - { - "id": "glemte-a-betale", - "need": "bli-medlem", - "text": "Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?" - }, - { - "id": "ny-epost", - "need": "endre-medlemskap", - "text": "Vi har byttet e-postadresse og får ikke lenger noe fra dere." - }, - { - "id": "flytter", - "need": "endre-medlemskap", - "text": "Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista." - }, - { - "id": "skolevei", - "need": "trafikkfare", - "text": "Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går." - }, - { - "id": "busslomme", - "need": "trafikkfare", - "text": "Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy." - }, - { - "id": "huske", - "need": "anleggsfeil", - "text": "Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt." - }, - { - "id": "bru", - "need": "anleggsfeil", - "text": "Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom." - }, - { - "id": "blokker", - "need": "horingsinnspill", - "text": "Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?" - }, - { - "id": "togtider", - "need": "horingsinnspill", - "text": "Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det." - }, - { - "id": "vafler", - "need": "hjelpe-til", - "text": "Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk." - }, - { - "id": "motorsag", - "need": "hjelpe-til", - "text": "Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad." - }, - { - "id": "pendler", - "need": "komite", - "text": "Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det." - }, - { - "id": "planlegger", - "need": "komite", - "text": "Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring." - }, - { - "id": "tilhenger", - "need": "dele-utstyr", - "text": "Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp." - }, - { - "id": "stige", - "need": "dele-utstyr", - "text": "Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?" - }, - { - "id": "snomaking", - "need": "trenger-hjelp", - "text": "Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?" - }, - { - "id": "nyoperert", - "need": "trenger-hjelp", - "text": "Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?" - }, - { - "id": "hjemmekontor", - "need": "kan-hjelpe", - "text": "Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv." - }, - { - "id": "pensjonert-elektriker", - "need": "kan-hjelpe", - "text": "Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting." - }, - { - "id": "kvittering", - "need": "utlegg", - "text": "Jeg kjøpte pølser og kakao til skøytedagen for 1 840 kroner, her er kvitteringa, vil ha det igjen." - } - ] -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/needs.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/needs.yaml deleted file mode 100644 index f741b40..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/needs.yaml +++ /dev/null @@ -1,265 +0,0 @@ -needs: -- done_when: - - betalt - - utmeldt - enters: / - handled_by: kasserer - id: bli-medlem - lands_in: husstander - max_fields: 3 - max_steps: 2 - stages: - - open - - betalt - - utmeldt - success: - - betalt - via: Bli medlem eller endre opplysningene dine - wants: å bli medlem og få betalt kontingenten - who: en husstand i Tomter -- done_when: - - oppdatert - enters: / - handled_by: kasserer - id: endre-medlemskap - lands_in: medlemsendringer - max_fields: 3 - max_steps: 2 - stages: - - open - - oppdatert - success: - - oppdatert - via: Bli medlem eller endre opplysningene dine - wants: at velet har riktige opplysninger om dem - who: et medlem som har flyttet, byttet e-post eller vil melde seg ut -- done_when: - - ordnet - - avvist - enters: / - handled_by: trafikk - id: trafikkfare - lands_in: trafikkmeldinger - max_fields: 2 - max_steps: 2 - stages: - - open - - tatt_opp - - ordnet - - avvist - success: - - ordnet - via: Meld fra om noe som bør fikses - wants: at velet tar det opp med kommunen eller den som eier veien - who: en som har sett et farlig sted i trafikken -- done_when: - - utbedret - enters: / - handled_by: lekeplasser - id: anleggsfeil - lands_in: anleggsfeil - max_fields: 2 - max_steps: 2 - stages: - - open - - tatt_tak_i - - utbedret - success: - - utbedret - via: Meld fra om noe som bør fikses - wants: at det blir fikset før noen skader seg - who: en som ser at noe på lekeplassen eller stien er ødelagt -- done_when: - - tatt_med - - ikke_tatt_med - enters: / - handled_by: horingsinstans - id: horingsinnspill - lands_in: innspill - max_fields: 3 - max_steps: 1 - stages: - - open - - tatt_med - - ikke_tatt_med - success: - - tatt_med - via: Få din mening med i høringssvaret - wants: at velet tar det med i sitt svar - who: en beboer som har en mening om en sak kommunen har på høring -- done_when: - - satt_opp - - takket_nei - enters: / - handled_by: arrangementer - id: hjelpe-til - lands_in: frivillige - max_fields: 3 - max_steps: 2 - stages: - - open - - kontaktet - - satt_opp - - takket_nei - success: - - satt_opp - via: Bli med og gjør en innsats - wants: å bli satt opp på noe som passer dem - who: en som vil hjelpe til på et arrangement eller en dugnad -- done_when: - - plassert - - avslatt - enters: / - handled_by: styret - id: komite - lands_in: komitesoknader - max_fields: 3 - max_steps: 2 - stages: - - open - - plassert - - avslatt - success: - - plassert - via: Bli med og gjør en innsats - wants: en plass i den komiteen som driver med det de bryr seg om - who: en som vil sitte i en komité -- done_when: - - ordnet - - ikke_lost - enters: / - handled_by: nabohjelp - id: trenger-hjelp - lands_in: hjelpebehov - max_fields: 4 - max_steps: 2 - stages: - - open - - formidlet - - ordnet - - ikke_lost - success: - - ordnet - via: Få hjelp av naboer, eller gi en hånd selv - wants: at en nabo stiller opp - who: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss -- done_when: - - registrert - - trukket - enters: / - handled_by: nabohjelp - id: kan-hjelpe - lands_in: hjelpere - max_fields: 4 - max_steps: 2 - stages: - - open - - registrert - - trukket - success: - - registrert - via: Få hjelp av naboer, eller gi en hånd selv - wants: å bli spurt når det passer - who: en nabo som kan stille opp når noen trenger det -- done_when: - - lagt_ut - - tatt_ned - enters: / - handled_by: styret - id: dele-utstyr - lands_in: oppslag - max_fields: 4 - max_steps: 2 - stages: - - open - - lagt_ut - - tatt_ned - success: - - lagt_ut - via: Få hjelp av naboer, eller gi en hånd selv - wants: et oppslag som naboene ser - who: en nabo som har noe å låne ut, eller trenger å låne noe -- done_when: - - utbetalt - - avvist - enters: /komiteer/utlegg - enters_as: komiteer - handled_by: kasserer - id: utlegg - lands_in: utlegg - max_fields: 3 - max_steps: 1 - stages: - - open - - godkjent - - utbetalt - - avvist - success: - - utbetalt - via: Få pengene tilbake - wants: pengene tilbake - who: en i en komité som har lagt ut for noe -personas: -- id: nyinnflyttet - need: bli-medlem - text: Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det? -- id: glemte-a-betale - need: bli-medlem - text: Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem? -- id: ny-epost - need: endre-medlemskap - text: Vi har byttet e-postadresse og får ikke lenger noe fra dere. -- id: flytter - need: endre-medlemskap - text: Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista. -- id: skolevei - need: trafikkfare - text: Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går. -- id: busslomme - need: trafikkfare - text: Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy. -- id: huske - need: anleggsfeil - text: Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt. -- id: bru - need: anleggsfeil - text: Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom. -- id: blokker - need: horingsinnspill - text: Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra? -- id: togtider - need: horingsinnspill - text: Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det. -- id: vafler - need: hjelpe-til - text: Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk. -- id: motorsag - need: hjelpe-til - text: Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad. -- id: pendler - need: komite - text: Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det. -- id: planlegger - need: komite - text: Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring. -- id: tilhenger - need: dele-utstyr - text: Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp. -- id: stige - need: dele-utstyr - text: Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har? -- id: snomaking - need: trenger-hjelp - text: Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør? -- id: nyoperert - need: trenger-hjelp - text: Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg? -- id: hjemmekontor - need: kan-hjelpe - text: Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv. -- id: pensjonert-elektriker - need: kan-hjelpe - text: Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting. -- id: kvittering - need: utlegg - text: Jeg kjøpte pølser og kakao til skøytedagen for 1 840 kroner, her er kvitteringa, vil ha det igjen. diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/arrangementer/_section.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/arrangementer/_section.yaml deleted file mode 100644 index 94afa0f..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/arrangementer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: arrangementer diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/arrangementer/index.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/arrangementer/index.yaml deleted file mode 100644 index 00eb3a9..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/arrangementer/index.yaml +++ /dev/null @@ -1,32 +0,0 @@ -alternatives: -- action: /arrangementer - consequence: - - Lagre - description: Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem. - features: - - description: '' - name: '' - resource: - requires_group: arrangementer - source: - bucket: frivillige - kind: kv - transitions: - - from: kontaktet - label: Sett opp - to: satt_opp - - from: kontaktet - label: Takket nei - to: takket_nei - - from: open - label: Merk som kontaktet - to: kontaktet - - from: open - label: Takket nei - to: takket_nei - name: Frivillige til arrangementer og dugnad -description: Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer. -name: Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/bidra/index.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/bidra/index.yaml deleted file mode 100644 index 7d24674..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/bidra/index.yaml +++ /dev/null @@ -1,82 +0,0 @@ -alternatives: -- action: /received/hjelpe-til - consequence: - - Meld meg på - description: 17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer. - encouragements: - - Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg. - features: - - description: Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit. - icon: lucide:clipboard-list - name: Hva skjer videre - - description: Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem leser dette - - description: Fortell kort hva du kan hjelpe til med. - icon: lucide:hand-helping - name: Meld deg som hjelper - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: Telefon - name: telefon - placeholder: 912 34 567 - type: tel - - label: Hva kan du hjelpe til med? - multiple: true - name: hva - options: - - 17. mai - - Juletregranstenning - - Skøytedag - - Dugnad på elvestien - - Det som trengs - type: select - name: Bli med på dugnad eller arrangement - record_as: frivillige -- action: /received/komite - consequence: - - Meld interesse - description: Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i. - encouragements: - - Det tar bare et minutt, og noen fra styret svarer deg. - features: - - description: Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå. - icon: lucide:clipboard-list - name: Hva skjer videre - - description: Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:handshake - name: Hvem leser dette - - description: Skriv hvilken komité du er interessert i. - icon: lucide:users - name: Meld deg til en komité - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: epost - placeholder: kari@eksempel.no - type: email - - label: Hvilken komité? - multiple: true - name: komite - options: - - Arrangementer - - Elvesti - - Høringsinstans - - Leke- og møteplasser - - Miljøgate - - Pendlerforhold - - Trafikkforhold - type: select - name: Sitt i en komité som betyr noe for deg - record_as: komitesoknader -description: Vil du stille opp for nabolaget? Her melder du deg til dugnad og arrangementer, eller til en av komiteene. -name: Vil du hjelpe til i nabolaget? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/decide/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/decide/dele-utstyr.yaml deleted file mode 100644 index dfece00..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/decide/dele-utstyr.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Oppslaget fjernes fra siden, så ingen flere spør om å låne det. - name: Meld at utstyret er tatt ned - self_transition: - bucket: oppslag - label: Ta ned oppslaget - to: tatt_ned -description: Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån. -name: Skal oppslaget om utstyret fortsatt stå ute? diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/decide/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/decide/kan-hjelpe.yaml deleted file mode 100644 index 2598b32..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/decide/kan-hjelpe.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre. - name: Ta en pause fra nabohjelpen - self_transition: - bucket: hjelpere - label: Trekk meg - to: trukket -description: Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå. -name: Vil du fortsatt kunne bli spurt om å hjelpe en nabo? diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/decide/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/decide/trenger-hjelp.yaml deleted file mode 100644 index 7aad76e..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/decide/trenger-hjelp.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Da vet vi at naboen har fått hjelpen sin, og saken lukkes. - name: Meld fra at hjelpen er gitt - self_transition: - bucket: hjelpebehov - label: Merk som ordnet - to: ordnet -description: Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet. -name: Har naboen fått hjelpen de trengte? diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/horingsinstans/_section.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/horingsinstans/_section.yaml deleted file mode 100644 index ad97e31..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/horingsinstans/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: horingsinstans diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/horingsinstans/index.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/horingsinstans/index.yaml deleted file mode 100644 index baff123..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/horingsinstans/index.yaml +++ /dev/null @@ -1,26 +0,0 @@ -alternatives: -- action: /horingsinstans - consequence: - - Send svar - description: Her ligger innspill fra beboere til saker kommunen har på høring. - features: - - description: '' - name: '' - resource: - requires_group: horingsinstans - source: - bucket: innspill - kind: kv - transitions: - - from: open - label: Tatt med i svaret - to: tatt_med - - from: open - label: Ikke tatt med - to: ikke_tatt_med - name: Innspill til høringssvar -description: Her samler du innspillene og ser hva som er tatt med i velets høringssvar. -name: Hva sier vi i høringssvaret? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/index.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/index.yaml deleted file mode 100644 index eec23ff..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/index.yaml +++ /dev/null @@ -1,73 +0,0 @@ -alternatives: -- action: /medlem - consequence: - - Til medlemskap - description: Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding. - features: - - description: '' - icon: lucide:house - name: Deg som bor i Tomter - name: Bli medlem eller endre opplysningene dine -- action: /melde-fra - consequence: - - Meld fra - description: Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed. - features: - - description: '' - icon: lucide:alert-triangle - name: Deg som har sett noe som bør fikses - name: Meld fra om noe som bør fikses -- action: /bidra - consequence: - - Bli med - description: Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse. - features: - - description: '' - icon: lucide:hand-helping - name: Deg som vil gjøre en innsats - name: Bli med og gjør en innsats -- action: /naboer - consequence: - - Til nabohjelp - description: Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere. - features: - - description: '' - icon: lucide:heart-handshake - name: Deg som trenger hjelp eller kan gi en hånd - name: Få hjelp av naboer, eller gi en hånd selv -- action: /received/horingsinnspill - consequence: - - Send innspill - description: Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar. - encouragements: - - Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen. - features: - - description: Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen. - icon: lucide:route - name: Hva skjer videre - - description: Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no. - icon: lucide:users - name: Hvem leser dette - - description: Fortell hvilken sak det gjelder og hva du mener. - icon: lucide:megaphone - name: Send et høringsinnspill - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: Hvilken sak gjelder det? - name: sak - placeholder: Reguleringsplan for Tomterveien - type: text - - label: Hva mener du? - name: innspill - placeholder: Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen. - type: textarea - name: Få din mening med i høringssvaret - record_as: innspill -description: Tomter Vel tar vare på nærmiljøet – fra elvestien og lekeplassene til trafikksikkerhet og naboskap. Finn det som gjelder deg. -name: Hva gjelder det for deg? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/kasserer/_section.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/kasserer/_section.yaml deleted file mode 100644 index 2f8af2f..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/kasserer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: kasserer diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/kasserer/index.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/kasserer/index.yaml deleted file mode 100644 index 1143154..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/kasserer/index.yaml +++ /dev/null @@ -1,69 +0,0 @@ -alternatives: -- action: /kasserer - consequence: - - Lagre - description: Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: husstander - kind: kv - transitions: - - from: open - label: Registrer betaling - to: betalt - - from: open - label: Meld ut - to: utmeldt - name: Nye medlemmer som venter på registrering -- action: /kasserer - consequence: - - Lagre - description: Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: medlemsendringer - kind: kv - transitions: - - from: open - label: Registrer endring - to: oppdatert - name: Endringer som venter på å bli registrert -- action: /kasserer - consequence: - - Lagre - description: Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: utlegg - kind: kv - transitions: - - from: godkjent - label: Merk som utbetalt - to: utbetalt - - from: godkjent - label: Avvis likevel - to: avvist - - from: open - label: Godkjenn utlegg - to: godkjent - - from: open - label: Avvis utlegg - to: avvist - name: Utlegg som venter på deg -description: Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer. -name: Hva venter på meg som kasserer akkurat nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/komiteer/_section.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/komiteer/_section.yaml deleted file mode 100644 index 57e3295..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/komiteer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: komiteer diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/komiteer/index.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/komiteer/index.yaml deleted file mode 100644 index 1375cf1..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/komiteer/index.yaml +++ /dev/null @@ -1,11 +0,0 @@ -alternatives: -- action: /komiteer/utlegg - consequence: - - Send utlegg - description: Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake. - name: Få tilbake det du har lagt ut -description: Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp. -name: Hva står ubehandlet i komiteen din nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/komiteer/utlegg-sent.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/komiteer/utlegg-sent.yaml deleted file mode 100644 index e347ad3..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/komiteer/utlegg-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga. - name: Pengene kommer på konto -- action: /komiteer - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Utlegget er sendt til kasserer. Du får beskjed når det er sjekket. -name: Hva skjer med utlegget mitt nå? diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/komiteer/utlegg.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/komiteer/utlegg.yaml deleted file mode 100644 index 5d94ad3..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/komiteer/utlegg.yaml +++ /dev/null @@ -1,38 +0,0 @@ -alternatives: -- action: /komiteer/utlegg-sent - consequence: - - Send inn - description: Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten. - encouragements: - - Legg ved bilag om du har det, så går det raskere. - features: - - description: Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor. - icon: lucide:wallet - name: Fra krav til utbetaling - - description: Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster. - icon: lucide:coins - name: Kasserer ser dette - - description: Ha kvittering eller bilag klart før du fyller ut. - icon: lucide:receipt - name: Krav om refusjon - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: Beløp - name: belop - placeholder: 450 kr - type: text - - label: Hva gjaldt det - name: hva - placeholder: Kaffe og kjeks til dugnaden - type: textarea - name: Få pengene tilbake - record_as: utlegg -description: Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake. -followup: false -name: Har du lagt ut penger for komiteen og vil ha dem tilbake? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/lekeplasser/_section.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/lekeplasser/_section.yaml deleted file mode 100644 index 1652221..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/lekeplasser/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: lekeplasser diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/lekeplasser/index.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/lekeplasser/index.yaml deleted file mode 100644 index 3f9dd93..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/lekeplasser/index.yaml +++ /dev/null @@ -1,26 +0,0 @@ -alternatives: -- action: /lekeplasser - consequence: - - Lagre - description: Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses. - features: - - description: '' - name: '' - resource: - requires_group: lekeplasser - source: - bucket: anleggsfeil - kind: kv - transitions: - - from: open - label: Ta tak i saken - to: tatt_tak_i - - from: tatt_tak_i - label: Merk som utbedret - to: utbedret - name: Det som er meldt inn av skader -description: Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset. -name: Hva må fikses på lekeplassene og stien nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/medlem/index.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/medlem/index.yaml deleted file mode 100644 index 6bbab74..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/medlem/index.yaml +++ /dev/null @@ -1,73 +0,0 @@ -alternatives: -- action: /received/bli-medlem - consequence: - - Bli medlem - description: Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet. - encouragements: - - Kasserer sender deg kontingenten på e-post rett etterpå. - features: - - description: Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem. - icon: lucide:coins - name: Etter innmelding - - description: Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden. - icon: lucide:user - name: Hvem svarer deg - - description: Ha adressen i Tomter og en e-post du bruker klar. - icon: lucide:user-plus - name: Meld deg inn - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: Adresse - name: adresse - placeholder: Tomterveien 12 - type: text - - label: E-post - name: epost - placeholder: ola.nordmann@epost.no - type: email - - label: Telefon - name: telefon - optional: true - placeholder: 123 45 678 - type: tel - name: Bli medlem av Tomter Vel - record_as: husstander -- action: /received/endre-medlemskap - consequence: - - Send endring - description: Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger. - encouragements: - - Det tar bare et par minutter, og kasserer ordner resten. - features: - - description: Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om. - icon: lucide:refresh-cw - name: Etter du sender inn - - description: Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden. - icon: lucide:user - name: Hvem svarer deg - - description: Skriv navnet ditt og hva som er nytt. - icon: lucide:pencil - name: Endre medlemskap - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: Adresse - name: adresse - placeholder: Ny adresse i Tomter - type: text - - label: Hva vil du endre? - name: hva_er_nytt - placeholder: Ny e-post, ny adresse, eller ønske om utmelding - type: textarea - name: Oppdater eller avslutt medlemskapet - record_as: medlemsendringer -description: Bli medlem av Tomter Vel, eller oppdater opplysningene dine hvis du allerede er medlem. -name: Vil du bli medlem, eller endre medlemskapet ditt? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/melde-fra/index.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/melde-fra/index.yaml deleted file mode 100644 index 560dd8f..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/melde-fra/index.yaml +++ /dev/null @@ -1,69 +0,0 @@ -alternatives: -- action: /received/trafikkfare - consequence: - - Send inn - description: Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre. - encouragements: - - Bare noen linjer om hva og hvor er nok til at vi kan følge opp. - features: - - description: Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist. - icon: lucide:route - name: Hva skjer videre - - description: Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no. - icon: lucide:car - name: Hvem leser dette - - description: Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer. - icon: lucide:alert-triangle - name: Meld trafikkfare - requirements: - - label: Hvor var det - name: hvor - placeholder: Krysset Tomterveien / Elvestien - type: text - - label: Hva så du - name: hva - placeholder: Dårlig sikt i krysset, biler kjører fort - type: textarea - - label: E-post (valgfritt) - name: epost - optional: true - placeholder: ola.nordmann@epost.no - type: email - name: Meld fra om en trafikkfare - record_as: trafikkmeldinger -- action: /received/anleggsfeil - consequence: - - Send inn - description: Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det. - encouragements: - - Det holder med noen ord om hva du så og hvor. - features: - - description: Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet. - icon: lucide:wrench - name: Hva skjer videre - - description: Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no. - icon: lucide:hammer - name: Hvem leser dette - - description: Fortell hva som er ødelagt og omtrent hvor det er. - icon: lucide:construction - name: Meld anleggsfeil - requirements: - - label: Hvor er det - name: hvor - options: - - Lekeplassen - - Elvestien - - Skøytebanen - - Et annet sted - type: select - - label: Hva er ødelagt - name: hva - placeholder: Løs planke på gjerdet ved husken - type: textarea - name: Meld fra om noe ødelagt - record_as: anleggsfeil -description: Har du sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien? Her sier du fra til velet. -name: Hva vil du melde fra om? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/naboer/index.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/naboer/index.yaml deleted file mode 100644 index d8efcd4..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/naboer/index.yaml +++ /dev/null @@ -1,125 +0,0 @@ -alternatives: -- action: /received/trenger-hjelp - consequence: - - Be om hjelp - description: Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp. - encouragements: - - Vi finner en nabo som kan stille opp så fort som mulig. - features: - - description: Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed. - icon: lucide:hand-helping - name: Fra melding til hjelp - - description: Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem ser dette - - description: Skriv kort hva du trenger hjelp til. - icon: lucide:heart-handshake - name: Be om en hånd - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: email - placeholder: kari@eksempel.no - type: email - - label: Adresse - name: adresse - placeholder: Tomterveien 12 - type: text - - label: Hva trenger du hjelp til - name: hva - placeholder: Måke snø på trappa, handle inn litt mat - type: textarea - - label: Telefon - name: telefon - optional: true - placeholder: 123 45 678 - type: tel - name: Få en nabo til å stille opp - record_as: hjelpebehov -- action: /received/kan-hjelpe - consequence: - - Meld deg - description: Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer. - encouragements: - - Du blir bare kontaktet når noe passer for deg. - features: - - description: Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra. - icon: lucide:user-check - name: Fra påmelding til spørsmål - - description: Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no. - icon: lucide:heart-handshake - name: Hvem ser dette - - description: Fortell kort hva du kan bidra med. - icon: lucide:hand-helping - name: Meld deg som hjelper - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: email - placeholder: kari@eksempel.no - type: email - - label: Telefon - name: telefon - placeholder: 123 45 678 - type: tel - - label: Hva kan du hjelpe med - multiple: true - name: kan - options: - - Snømåking - - Handling - - Kjøring - - Småfiks i huset - - En prat og litt selskap - - Det som trengs - type: select - name: Bli spurt når en nabo trenger en hånd - record_as: hjelpere -- action: /received/dele-utstyr - consequence: - - Legg ut oppslag - description: Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det. - encouragements: - - Vi legger det ut så naboene kan se det. - features: - - description: Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen. - icon: lucide:clipboard-list - name: Fra oppslag til avtale - - description: Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem ser dette - - description: Skriv kort hva det gjelder, så folk skjønner det med en gang. - icon: lucide:package - name: Lån eller utlån - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: E-post - name: email - placeholder: ola@eksempel.no - type: email - - label: Har du eller trenger du - name: har_eller_trenger - options: - - Jeg har noe å låne ut - - Jeg trenger å låne noe - type: select - - label: Hva gjelder det - name: hva - placeholder: Hengerfeste til bil, tilhenger, stige - type: textarea - name: Lån ut eller lån av naboen - record_as: oppslag -description: Godt naboskap gjør hverdagen lettere. Trenger du en hånd, kan gi en, eller har noe å låne bort? -name: Trenger du en hånd, eller kan du gi en? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/nabohjelp/_section.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/nabohjelp/_section.yaml deleted file mode 100644 index 5b3a2ad..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/nabohjelp/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: nabohjelp diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/nabohjelp/index.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/nabohjelp/index.yaml deleted file mode 100644 index f4fa53f..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/nabohjelp/index.yaml +++ /dev/null @@ -1,52 +0,0 @@ -alternatives: -- action: /nabohjelp - consequence: - - Lagre - description: Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: hjelpebehov - kind: kv - transitions: - - from: formidlet - label: Meld ordnet - to: ordnet - - from: formidlet - label: Meld ikke løst - to: ikke_lost - - from: open - label: Koble til nabo - to: formidlet - - from: open - label: Meld ikke løst - to: ikke_lost - name: Naboer som trenger en hånd -- action: /nabohjelp - consequence: - - Lagre - description: Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: hjelpere - kind: kv - transitions: - - from: open - label: Registrer som hjelper - to: registrert - - from: open - label: Meld trukket - to: trukket - name: Naboer som kan stille opp -description: Her kobler du naboer som trenger hjelp med dem som kan stille opp. -name: Hvem trenger hjelp, og hvem kan stille opp? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/anleggsfeil.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/anleggsfeil.yaml deleted file mode 100644 index 09d4976..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/anleggsfeil.yaml +++ /dev/null @@ -1,15 +0,0 @@ -alternatives: -- description: Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg. - name: Komiteen tar tak i det -- action: /status/anleggsfeil - consequence: - - Se meldte feil - description: Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet. - name: Se andre meldte feil -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt. -name: Hva skjer med meldingen min nå? diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/bli-medlem.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/bli-medlem.yaml deleted file mode 100644 index 533f8a6..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/bli-medlem.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten. - name: Kasserer sender deg betalingsinfo -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert. -name: Hva skjer etter at jeg har meldt meg inn? diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/dele-utstyr.yaml deleted file mode 100644 index 761313b..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/dele-utstyr.yaml +++ /dev/null @@ -1,15 +0,0 @@ -alternatives: -- description: En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne. - name: Styret legger det ut for deg -- action: /status/oppslag - consequence: - - Se hva naboer deler - description: Se hva andre i Tomter har lagt ut til utlån akkurat nå. - name: Se alt naboene deler -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan. -name: Hva skjer med det jeg har lagt ut? diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/endre-medlemskap.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/endre-medlemskap.yaml deleted file mode 100644 index c58d676..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/endre-medlemskap.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg. - name: Kasserer retter opp opplysningene -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut. -name: Hva skjer nå med det jeg meldte inn? diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/hjelpe-til.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/hjelpe-til.yaml deleted file mode 100644 index 3c61af4..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/hjelpe-til.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden. - name: Komiteen tar kontakt -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg. -name: Hva skjer nå som jeg har meldt meg? diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/horingsinnspill.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/horingsinnspill.yaml deleted file mode 100644 index bf87c92..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/horingsinnspill.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med. - name: Innspillet ditt inn i vurderingen -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Innspillet ditt er sendt til høringsinstansen i velet. -name: Hva skjer med det jeg har sagt om saken? diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/kan-hjelpe.yaml deleted file mode 100644 index 0ac67b5..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/kan-hjelpe.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte. - name: Du blir kontaktet ved behov -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe. -name: Hva skjer nå som jeg har registrert meg? diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/komite.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/komite.yaml deleted file mode 100644 index a36dfda..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/komite.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer. - name: Vi finner riktig komité til deg -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg. -name: Hva skjer nå som jeg har meldt interesse for en komité? diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/trafikkfare.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/trafikkfare.yaml deleted file mode 100644 index 82da494..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/trafikkfare.yaml +++ /dev/null @@ -1,15 +0,0 @@ -alternatives: -- description: Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs. - name: Trafikkomiteen tar den videre -- action: /status/trafikkmeldinger - consequence: - - Se andre trafikkfarer - description: Se hva andre har meldt inn, og status på sakene. - name: Andre meldte trafikkfarer -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Meldingen din om trafikkfaren er sendt til komiteen for trafikk. -name: Hva skjer med meldingen min nå? diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/trenger-hjelp.yaml deleted file mode 100644 index beec6e5..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/received/trenger-hjelp.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer. - name: Vi finner en nabo til deg -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp. -name: Hva skjer nå som jeg har bedt om hjelp? diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/status/anleggsfeil/index.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/status/anleggsfeil/index.yaml deleted file mode 100644 index 805a464..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/status/anleggsfeil/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- description: Alle meldinger er åpne for alle å se. - features: - - description: '' - name: '' - resource: - jq: '.[] | .responses |= {hva: .hva, hvor: .hvor}' - public: true - source: - bucket: anleggsfeil - kind: kv - name: Status på meldte anleggsfeil -- action: / - consequence: - - Tilbake til meldinger - description: '' - name: Tilbake til meldinger -description: Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet. -name: Hva skjer med det jeg har meldt fra om? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/status/oppslag/index.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/status/oppslag/index.yaml deleted file mode 100644 index cf172af..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/status/oppslag/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- description: Åpen liste – navn og detaljer vises ikke. - features: - - description: '' - name: '' - resource: - jq: '.[] | .responses |= {har_eller_trenger: .har_eller_trenger, hva: .hva}' - public: true - source: - bucket: oppslag - kind: kv - name: Oversikt over det som er meldt inn -- action: / - consequence: - - Tilbake - description: '' - name: Tilbake -description: Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet. -name: Hva er sendt inn, og hvor langt har det kommet? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/status/trafikkmeldinger/index.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/status/trafikkmeldinger/index.yaml deleted file mode 100644 index 7444f44..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/status/trafikkmeldinger/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- description: Alle meldinger som er sendt inn, og hvor de står nå. - features: - - description: '' - name: '' - resource: - jq: '.[] | .responses |= {hva: .hva, hvor: .hvor}' - public: true - source: - bucket: trafikkmeldinger - kind: kv - name: Trafikkmeldinger og status -- action: / - consequence: - - Tilbake - description: '' - name: Tilbake -description: Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet. -name: Er det meldt fra om noe farlig i trafikken der jeg bor? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/styret/_section.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/styret/_section.yaml deleted file mode 100644 index 5a34160..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/styret/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: styret diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/styret/index.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/styret/index.yaml deleted file mode 100644 index bfad0cd..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/styret/index.yaml +++ /dev/null @@ -1,74 +0,0 @@ -alternatives: -- action: /styret - consequence: - - Lagre - description: Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: innspill - kind: kv - transitions: [] - name: Høringsinnspill fra beboerne -- action: /styret - consequence: - - Lagre - description: Her ligger alle som har meldt seg til en komité og venter på en plass. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: komitesoknader - kind: kv - transitions: - - from: open - label: Sett i komité - to: plassert - - from: open - label: Avslå søknaden - to: avslatt - name: Søknader til komiteene -- action: /styret - consequence: - - Lagre - description: Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: oppslag - kind: kv - transitions: - - from: open - label: Legg ut oppslaget - to: lagt_ut - - from: open - label: Ta ned oppslaget - to: tatt_ned - name: Utstyr til utlån blant naboer -- action: /styret - consequence: - - Lagre - description: Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: trafikkmeldinger - kind: kv - transitions: [] - name: Meldinger om trafikkfarer -description: 'Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.' -name: Hva venter på styret akkurat nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/trafikk/_section.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/trafikk/_section.yaml deleted file mode 100644 index dbe5246..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/trafikk/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: trafikk diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/trafikk/index.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/trafikk/index.yaml deleted file mode 100644 index fa01bbc..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/questions/trafikk/index.yaml +++ /dev/null @@ -1,32 +0,0 @@ -alternatives: -- action: /trafikk - consequence: - - Lagre - description: Farlige steder i trafikken som naboer har meldt inn. - features: - - description: '' - name: '' - resource: - requires_group: trafikk - source: - bucket: trafikkmeldinger - kind: kv - transitions: - - from: open - label: Ta opp med kommunen - to: tatt_opp - - from: open - label: Avvis meldingen - to: avvist - - from: tatt_opp - label: Meld ordnet - to: ordnet - - from: tatt_opp - label: Avvis meldingen - to: avvist - name: Farlige steder i trafikken -description: Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier. -name: Hvilke trafikkfarer må følges opp? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/rate.json b/vendor/trainer/runs/tomtervel-committees-2026-09-23/rate.json deleted file mode 100644 index 2548e2a..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/rate.json +++ /dev/null @@ -1,497 +0,0 @@ -{ - "anleggsfeil": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 26.64003436426117, - "options": 5, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 24.74264705882353, - "options": 2, - "overloaded": false, - "page": "/melde-fra", - "personas": 2, - "required_fields": 2, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "bli-medlem": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 26.64003436426117, - "options": 5, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 40.0, - "options": 2, - "overloaded": false, - "page": "/medlem", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "dele-utstyr": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 26.64003436426117, - "options": 5, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 23.359472588480223, - "options": 3, - "overloaded": false, - "page": "/naboer", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "endre-medlemskap": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 26.64003436426117, - "options": 5, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 35.306306306306304, - "options": 2, - "overloaded": false, - "page": "/medlem", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "hjelpe-til": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 26.64003436426117, - "options": 5, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 27.804347826086957, - "options": 2, - "overloaded": false, - "page": "/bidra", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "horingsinnspill": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 27.32857142857143, - "options": 5, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 1 - } - } - ], - "steps": 1 - }, - "kan-hjelpe": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 26.64003436426117, - "options": 5, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 1, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 24.504761904761907, - "options": 3, - "overloaded": false, - "page": "/naboer", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "komite": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 26.64003436426117, - "options": 5, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 1, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 23.465206185567013, - "options": 2, - "overloaded": false, - "page": "/bidra", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "trafikkfare": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 26.64003436426117, - "options": 5, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 32.047619047619044, - "options": 2, - "overloaded": false, - "page": "/melde-fra", - "personas": 2, - "required_fields": 2, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "trenger-hjelp": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 26.64003436426117, - "options": 5, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 1, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 21.909090909090907, - "options": 3, - "overloaded": false, - "page": "/naboer", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "utlegg": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 36.333333333333336, - "options": 1, - "overloaded": false, - "page": "/komiteer/utlegg", - "personas": 1, - "required_fields": 3, - "understanding": { - "asked": 1, - "next": 1, - "where": 1, - "which": 1 - } - } - ], - "steps": 1 - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/rate.txt b/vendor/trainer/runs/tomtervel-committees-2026-09-23/rate.txt deleted file mode 100644 index ce627f2..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/rate.txt +++ /dev/null @@ -1,21 +0,0 @@ -need LIX which where asked next gutted twin says page load -bli-medlem @/ 27 very easy 1/2 2/2 2/2 - 0/0/0/- ok 5 options, 0 required -bli-medlem @/medlem 40 takes effort 2/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 3 required -endre-medlemskap @/ 27 very easy 2/2 2/2 2/2 - 0/0/0/- ok 5 options, 0 required -endre-medlemskap @/medlem 35 easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 3 required -trafikkfare @/ 27 very easy 1/2 2/2 2/2 - 0/0/0/- ok 5 options, 0 required -trafikkfare @/melde-fra 32 easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 2 required -anleggsfeil @/ 27 very easy 2/2 2/2 2/2 - 0/0/0/- ok 5 options, 0 required -anleggsfeil @/melde-fra 25 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 2 required -horingsinnspill 27 very easy 1/2 2/2 2/2 2/2 0/0/0/0 ok 5 options, 3 required -hjelpe-til @/ 27 very easy 2/2 2/2 2/2 - 0/0/0/- ok 5 options, 0 required -hjelpe-til @/bidra 28 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 3 required -komite @/ 27 very easy 2/2 2/2 2/2 - 0/0/0/- ok 5 options, 0 required -komite @/bidra 23 very easy 2/2 2/2 2/2 2/2 0/1/0/0 FAILED: where 2 options, 3 required -trenger-hjelp @/ 27 very easy 1/2 2/2 2/2 - 0/0/0/- ok 5 options, 0 required -trenger-hjelp @/naboer 22 very easy 2/2 2/2 2/2 2/2 0/1/0/0 FAILED: where 3 options, 4 required -kan-hjelpe @/ 27 very easy 2/2 2/2 2/2 - 0/0/0/- ok 5 options, 0 required -kan-hjelpe @/naboer 25 very easy 2/2 2/2 2/2 2/2 0/1/0/0 FAILED: where 3 options, 4 required -dele-utstyr @/ 27 very easy 2/2 2/2 2/2 - 0/0/0/- ok 5 options, 0 required -dele-utstyr @/naboer 23 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 3 options, 4 required -utlegg 36 easy 1/1 1/1 1/1 1/1 0/0/0/0 ok 1 options, 3 required diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/score-full.txt b/vendor/trainer/runs/tomtervel-committees-2026-09-23/score-full.txt deleted file mode 100644 index a2262a6..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/score-full.txt +++ /dev/null @@ -1,8 +0,0 @@ -MISROUTE: glemte-a-betale@/medlem: picked "Oppdater eller avslutt medlemskapet" (0.95), the need is met by ["Bli medlem av Tomter Vel"] -MISROUTE: busslomme@/melde-fra: picked "Meld fra om noe ødelagt" (0.95), the need is met by ["Meld fra om en trafikkfare"] -MISROUTE: togtider@/: picked "Meld fra om noe som bør fikses" (0.95), the need is met by ["Få din mening med i høringssvaret"] -MISROUTE: motorsag@/: picked "Meld fra om noe som bør fikses" (0.95), the need is met by ["Bli med og gjør en innsats"] -MISROUTE: pendler@/: picked "Få din mening med i høringssvaret" (0.95), the need is met by ["Bli med og gjør en innsats"] -MISROUTE: planlegger@/: picked "Få din mening med i høringssvaret" (0.95), the need is met by ["Bli med og gjør en innsats"] -MISROUTE: hjemmekontor@/naboer: picked "Få en nabo til å stille opp" (0.95), the need is met by ["Bli spurt når en nabo trenger en hånd"] -wording: 31/38 routed right (82%) diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/score-skim.txt b/vendor/trainer/runs/tomtervel-committees-2026-09-23/score-skim.txt deleted file mode 100644 index 5e623db..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/score-skim.txt +++ /dev/null @@ -1,9 +0,0 @@ -MISROUTE: glemte-a-betale@/medlem: picked "Oppdater eller avslutt medlemskapet" (0.95), the need is met by ["Bli medlem av Tomter Vel"] -MISROUTE: blokker@/: picked "Meld fra om noe som bør fikses" (0.85), the need is met by ["Få din mening med i høringssvaret"] -MISROUTE: vafler@/: picked "Få hjelp av naboer, eller gi en hånd selv" (0.95), the need is met by ["Bli med og gjør en innsats"] -MISROUTE: pendler@/bidra: picked "Bli med på dugnad eller arrangement" (0.95), the need is met by ["Sitt i en komité som betyr noe for deg"] -MISROUTE: planlegger@/: picked "Få din mening med i høringssvaret" (0.95), the need is met by ["Bli med og gjør en innsats"] -MISROUTE: snomaking@/naboer: picked "Bli spurt når en nabo trenger en hånd" (0.95), the need is met by ["Få en nabo til å stille opp"] -MISROUTE: nyoperert@/naboer: picked "Lån ut eller lån av naboen" (0.95), the need is met by ["Få en nabo til å stille opp"] -MISROUTE: pensjonert-elektriker@/naboer: picked "Lån ut eller lån av naboen" (0.95), the need is met by ["Bli spurt når en nabo trenger en hånd"] -wording: 30/38 routed right (79%) diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/site.yaml b/vendor/trainer/runs/tomtervel-committees-2026-09-23/site.yaml deleted file mode 100644 index e1c5866..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/site.yaml +++ /dev/null @@ -1,2 +0,0 @@ -lang: no -title: Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/tasks-full.jsonl b/vendor/trainer/runs/tomtervel-committees-2026-09-23/tasks-full.jsonl deleted file mode 100644 index 0799a40..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/tasks-full.jsonl +++ /dev/null @@ -1,38 +0,0 @@ -{"id":"nyinnflyttet@/","persona":"nyinnflyttet","need":"bli-medlem","page":"/","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"nyinnflyttet@/medlem","persona":"nyinnflyttet","need":"bli-medlem","page":"/medlem","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger."}}},"expect":["Bli medlem av Tomter Vel"]} -{"id":"glemte-a-betale@/","persona":"glemte-a-betale","need":"bli-medlem","page":"/","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"glemte-a-betale@/medlem","persona":"glemte-a-betale","need":"bli-medlem","page":"/medlem","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger."}}},"expect":["Bli medlem av Tomter Vel"]} -{"id":"ny-epost@/","persona":"ny-epost","need":"endre-medlemskap","page":"/","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"ny-epost@/medlem","persona":"ny-epost","need":"endre-medlemskap","page":"/medlem","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger."}}},"expect":["Oppdater eller avslutt medlemskapet"]} -{"id":"flytter@/","persona":"flytter","need":"endre-medlemskap","page":"/","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"flytter@/medlem","persona":"flytter","need":"endre-medlemskap","page":"/medlem","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger."}}},"expect":["Oppdater eller avslutt medlemskapet"]} -{"id":"skolevei@/","persona":"skolevei","need":"trafikkfare","page":"/","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Meld fra om noe som bør fikses"]} -{"id":"skolevei@/melde-fra","persona":"skolevei","need":"trafikkfare","page":"/melde-fra","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du melde fra om?\". Which alternative do they choose?","criteria":{"Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det."}}},"expect":["Meld fra om en trafikkfare"]} -{"id":"busslomme@/","persona":"busslomme","need":"trafikkfare","page":"/","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Meld fra om noe som bør fikses"]} -{"id":"busslomme@/melde-fra","persona":"busslomme","need":"trafikkfare","page":"/melde-fra","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du melde fra om?\". Which alternative do they choose?","criteria":{"Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det."}}},"expect":["Meld fra om en trafikkfare"]} -{"id":"huske@/","persona":"huske","need":"anleggsfeil","page":"/","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Meld fra om noe som bør fikses"]} -{"id":"huske@/melde-fra","persona":"huske","need":"anleggsfeil","page":"/melde-fra","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du melde fra om?\". Which alternative do they choose?","criteria":{"Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det."}}},"expect":["Meld fra om noe ødelagt"]} -{"id":"bru@/","persona":"bru","need":"anleggsfeil","page":"/","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Meld fra om noe som bør fikses"]} -{"id":"bru@/melde-fra","persona":"bru","need":"anleggsfeil","page":"/melde-fra","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du melde fra om?\". Which alternative do they choose?","criteria":{"Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det."}}},"expect":["Meld fra om noe ødelagt"]} -{"id":"blokker@/","persona":"blokker","need":"horingsinnspill","page":"/","state":{"body":"Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Få din mening med i høringssvaret"]} -{"id":"togtider@/","persona":"togtider","need":"horingsinnspill","page":"/","state":{"body":"Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Få din mening med i høringssvaret"]} -{"id":"vafler@/","persona":"vafler","need":"hjelpe-til","page":"/","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Bli med og gjør en innsats"]} -{"id":"vafler@/bidra","persona":"vafler","need":"hjelpe-til","page":"/bidra","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til i nabolaget?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Bli med på dugnad eller arrangement"]} -{"id":"motorsag@/","persona":"motorsag","need":"hjelpe-til","page":"/","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Bli med og gjør en innsats"]} -{"id":"motorsag@/bidra","persona":"motorsag","need":"hjelpe-til","page":"/bidra","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til i nabolaget?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Bli med på dugnad eller arrangement"]} -{"id":"pendler@/","persona":"pendler","need":"komite","page":"/","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Bli med og gjør en innsats"]} -{"id":"pendler@/bidra","persona":"pendler","need":"komite","page":"/bidra","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til i nabolaget?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Sitt i en komité som betyr noe for deg"]} -{"id":"planlegger@/","persona":"planlegger","need":"komite","page":"/","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Bli med og gjør en innsats"]} -{"id":"planlegger@/bidra","persona":"planlegger","need":"komite","page":"/bidra","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til i nabolaget?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Sitt i en komité som betyr noe for deg"]} -{"id":"tilhenger@/","persona":"tilhenger","need":"dele-utstyr","page":"/","state":{"body":"Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"tilhenger@/naboer","persona":"tilhenger","need":"dele-utstyr","page":"/naboer","state":{"body":"Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det."}}},"expect":["Lån ut eller lån av naboen"]} -{"id":"stige@/","persona":"stige","need":"dele-utstyr","page":"/","state":{"body":"Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"stige@/naboer","persona":"stige","need":"dele-utstyr","page":"/naboer","state":{"body":"Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det."}}},"expect":["Lån ut eller lån av naboen"]} -{"id":"snomaking@/","persona":"snomaking","need":"trenger-hjelp","page":"/","state":{"body":"Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"snomaking@/naboer","persona":"snomaking","need":"trenger-hjelp","page":"/naboer","state":{"body":"Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det."}}},"expect":["Få en nabo til å stille opp"]} -{"id":"nyoperert@/","persona":"nyoperert","need":"trenger-hjelp","page":"/","state":{"body":"Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"nyoperert@/naboer","persona":"nyoperert","need":"trenger-hjelp","page":"/naboer","state":{"body":"Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det."}}},"expect":["Få en nabo til å stille opp"]} -{"id":"hjemmekontor@/","persona":"hjemmekontor","need":"kan-hjelpe","page":"/","state":{"body":"Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"hjemmekontor@/naboer","persona":"hjemmekontor","need":"kan-hjelpe","page":"/naboer","state":{"body":"Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det."}}},"expect":["Bli spurt når en nabo trenger en hånd"]} -{"id":"pensjonert-elektriker@/","persona":"pensjonert-elektriker","need":"kan-hjelpe","page":"/","state":{"body":"Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"pensjonert-elektriker@/naboer","persona":"pensjonert-elektriker","need":"kan-hjelpe","page":"/naboer","state":{"body":"Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det."}}},"expect":["Bli spurt når en nabo trenger en hånd"]} diff --git a/vendor/trainer/runs/tomtervel-committees-2026-09-23/tasks-skim.jsonl b/vendor/trainer/runs/tomtervel-committees-2026-09-23/tasks-skim.jsonl deleted file mode 100644 index 88d7ab6..0000000 --- a/vendor/trainer/runs/tomtervel-committees-2026-09-23/tasks-skim.jsonl +++ /dev/null @@ -1,38 +0,0 @@ -{"id":"nyinnflyttet@/","persona":"nyinnflyttet","need":"bli-medlem","page":"/","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"nyinnflyttet@/medlem","persona":"nyinnflyttet","need":"bli-medlem","page":"/medlem","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet"}}},"expect":["Bli medlem av Tomter Vel"]} -{"id":"glemte-a-betale@/","persona":"glemte-a-betale","need":"bli-medlem","page":"/","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"glemte-a-betale@/medlem","persona":"glemte-a-betale","need":"bli-medlem","page":"/medlem","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet"}}},"expect":["Bli medlem av Tomter Vel"]} -{"id":"ny-epost@/","persona":"ny-epost","need":"endre-medlemskap","page":"/","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"ny-epost@/medlem","persona":"ny-epost","need":"endre-medlemskap","page":"/medlem","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet"}}},"expect":["Oppdater eller avslutt medlemskapet"]} -{"id":"flytter@/","persona":"flytter","need":"endre-medlemskap","page":"/","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"flytter@/medlem","persona":"flytter","need":"endre-medlemskap","page":"/medlem","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet"}}},"expect":["Oppdater eller avslutt medlemskapet"]} -{"id":"skolevei@/","persona":"skolevei","need":"trafikkfare","page":"/","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Meld fra om noe som bør fikses"]} -{"id":"skolevei@/melde-fra","persona":"skolevei","need":"trafikkfare","page":"/melde-fra","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du melde fra om?\". Which alternative do they choose?","criteria":{"Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt"}}},"expect":["Meld fra om en trafikkfare"]} -{"id":"busslomme@/","persona":"busslomme","need":"trafikkfare","page":"/","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Meld fra om noe som bør fikses"]} -{"id":"busslomme@/melde-fra","persona":"busslomme","need":"trafikkfare","page":"/melde-fra","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du melde fra om?\". Which alternative do they choose?","criteria":{"Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt"}}},"expect":["Meld fra om en trafikkfare"]} -{"id":"huske@/","persona":"huske","need":"anleggsfeil","page":"/","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Meld fra om noe som bør fikses"]} -{"id":"huske@/melde-fra","persona":"huske","need":"anleggsfeil","page":"/melde-fra","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du melde fra om?\". Which alternative do they choose?","criteria":{"Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt"}}},"expect":["Meld fra om noe ødelagt"]} -{"id":"bru@/","persona":"bru","need":"anleggsfeil","page":"/","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Meld fra om noe som bør fikses"]} -{"id":"bru@/melde-fra","persona":"bru","need":"anleggsfeil","page":"/melde-fra","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du melde fra om?\". Which alternative do they choose?","criteria":{"Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt"}}},"expect":["Meld fra om noe ødelagt"]} -{"id":"blokker@/","persona":"blokker","need":"horingsinnspill","page":"/","state":{"body":"Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Få din mening med i høringssvaret"]} -{"id":"togtider@/","persona":"togtider","need":"horingsinnspill","page":"/","state":{"body":"Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Få din mening med i høringssvaret"]} -{"id":"vafler@/","persona":"vafler","need":"hjelpe-til","page":"/","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Bli med og gjør en innsats"]} -{"id":"vafler@/bidra","persona":"vafler","need":"hjelpe-til","page":"/bidra","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til i nabolaget?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Bli med på dugnad eller arrangement"]} -{"id":"motorsag@/","persona":"motorsag","need":"hjelpe-til","page":"/","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Bli med og gjør en innsats"]} -{"id":"motorsag@/bidra","persona":"motorsag","need":"hjelpe-til","page":"/bidra","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til i nabolaget?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Bli med på dugnad eller arrangement"]} -{"id":"pendler@/","persona":"pendler","need":"komite","page":"/","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Bli med og gjør en innsats"]} -{"id":"pendler@/bidra","persona":"pendler","need":"komite","page":"/bidra","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til i nabolaget?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Sitt i en komité som betyr noe for deg"]} -{"id":"planlegger@/","persona":"planlegger","need":"komite","page":"/","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Bli med og gjør en innsats"]} -{"id":"planlegger@/bidra","persona":"planlegger","need":"komite","page":"/bidra","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til i nabolaget?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Sitt i en komité som betyr noe for deg"]} -{"id":"tilhenger@/","persona":"tilhenger","need":"dele-utstyr","page":"/","state":{"body":"Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"tilhenger@/naboer","persona":"tilhenger","need":"dele-utstyr","page":"/naboer","state":{"body":"Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen"}}},"expect":["Lån ut eller lån av naboen"]} -{"id":"stige@/","persona":"stige","need":"dele-utstyr","page":"/","state":{"body":"Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"stige@/naboer","persona":"stige","need":"dele-utstyr","page":"/naboer","state":{"body":"Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen"}}},"expect":["Lån ut eller lån av naboen"]} -{"id":"snomaking@/","persona":"snomaking","need":"trenger-hjelp","page":"/","state":{"body":"Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"snomaking@/naboer","persona":"snomaking","need":"trenger-hjelp","page":"/naboer","state":{"body":"Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen"}}},"expect":["Få en nabo til å stille opp"]} -{"id":"nyoperert@/","persona":"nyoperert","need":"trenger-hjelp","page":"/","state":{"body":"Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"nyoperert@/naboer","persona":"nyoperert","need":"trenger-hjelp","page":"/naboer","state":{"body":"Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen"}}},"expect":["Få en nabo til å stille opp"]} -{"id":"hjemmekontor@/","persona":"hjemmekontor","need":"kan-hjelpe","page":"/","state":{"body":"Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"hjemmekontor@/naboer","persona":"hjemmekontor","need":"kan-hjelpe","page":"/naboer","state":{"body":"Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen"}}},"expect":["Bli spurt når en nabo trenger en hånd"]} -{"id":"pensjonert-elektriker@/","persona":"pensjonert-elektriker","need":"kan-hjelpe","page":"/","state":{"body":"Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjelder det for deg?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"pensjonert-elektriker@/naboer","persona":"pensjonert-elektriker","need":"kan-hjelpe","page":"/naboer","state":{"body":"Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen"}}},"expect":["Bli spurt når en nabo trenger en hånd"]} diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/README.md b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/README.md deleted file mode 100644 index a280aa6..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/README.md +++ /dev/null @@ -1,16 +0,0 @@ -# Tomter Vel without "Tilbake" alternatives (deployed) - -Rebuilt from `plans/tomtervel.yaml` with the words in use -(`runs/tomtervel-frontdoor-2026-09-28/site/words.json`) after the -builder stopped writing a back alternative. Exactly fourteen -alternatives went away - "Tilbake til forsiden" on eleven pages after -sending, "Tilbake" / "Tilbake til meldinger" on the three public lists -- and nothing else changed. - -Portal v0.5.3 replaces them on every page: an arrow at the left edge -and "← Tilbake til starten" at the foot, to the nearest page below -that the visitor may open. The vel's portal was moved to v0.5.3 first -(`PORTAL_RELEASE` in the host's `.env` and in `.env.example` of -tomtervel/infrastructure, deploy run 461), so there was no window -without a way back; then tomtervel/questions took this content with its -lint on iris v0.5.3 (lint run 462). diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/aggregates.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/aggregates.yaml deleted file mode 100644 index 590d28b..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/aggregates.yaml +++ /dev/null @@ -1,192 +0,0 @@ -aggregates: -- bucket: anleggsfeil - initial: open - states: - open: - event: received - tatt_tak_i: - event: tatt_tak_i - utbedret: - event: utbedret - transitions: - open: - - tatt_tak_i - tatt_tak_i: - - utbedret -- bucket: frivillige - initial: open - states: - open: - event: received - kontaktet: - event: kontaktet - satt_opp: - event: satt_opp - takket_nei: - event: takket_nei - transitions: - kontaktet: - - satt_opp - - takket_nei - open: - - kontaktet - - takket_nei -- bucket: hjelpebehov - initial: open - states: - open: - event: received - mail: - to: submitter - subject: Vi leter etter en nabo til deg - body: Vi har mottatt det du trenger hjelp til, og ser etter en nabo som kan stille opp. Du hører fra oss så snart vi har funnet noen. - formidlet: - event: formidlet - mail: - to: submitter - subject: En nabo er koblet på - body: |- - Vi har funnet en nabo som kan hjelpe. De tar kontakt med deg direkte. - - Det du kan gjøre nå: {site}/decide/trenger-hjelp?chain={chain}&email={email} - ordnet: - event: ordnet - mail: - to: submitter - subject: Bra det løste seg - body: Godt å høre at det ordnet seg. Takk for at du sa fra, og lykke til videre. - ikke_lost: - event: ikke_lost - transitions: - formidlet: - - ordnet - - ikke_lost - open: - - formidlet - - ikke_lost -- bucket: hjelpere - initial: open - states: - open: - event: received - registrert: - event: registrert - trukket: - event: trukket - transitions: - open: - - registrert - - trukket -- bucket: husstander - initial: open - states: - open: - event: received - mail: - to: submitter - subject: Nesten i mål som medlem - body: |- - Takk for at du vil bli medlem. Du får en betalingsoppfordring med kontonummer og beløp så snart kasserer har sett på saken. - - Det du kan gjøre nå: {site}/decide/bli-medlem?chain={chain}&email={email} - betalt: - event: betalt - mail: - to: submitter - subject: Medlemskapet er i orden - body: Kontingenten er registrert betalt. Du er nå medlem av Tomter Vel - velkommen med! - utmeldt: - event: utmeldt - transitions: - open: - - betalt - - utmeldt -- bucket: innspill - initial: open - states: - open: - event: received - tatt_med: - event: tatt_med - ikke_tatt_med: - event: ikke_tatt_med - transitions: - open: - - tatt_med - - ikke_tatt_med -- bucket: komitesoknader - initial: open - states: - open: - event: received - plassert: - event: plassert - avslatt: - event: avslatt - transitions: - open: - - plassert - - avslatt -- bucket: medlemsendringer - initial: open - states: - open: - event: received - oppdatert: - event: oppdatert - transitions: - open: - - oppdatert -- bucket: oppslag - initial: open - states: - open: - event: received - lagt_ut: - event: lagt_ut - mail: - to: submitter - subject: Oppslaget er synlig for naboene - body: Oppslaget ditt er lagt ut, og naboene kan nå se det. - tatt_ned: - event: tatt_ned - transitions: - open: - - lagt_ut - - tatt_ned -- bucket: trafikkmeldinger - initial: open - states: - open: - event: received - tatt_opp: - event: tatt_opp - ordnet: - event: ordnet - avvist: - event: avvist - transitions: - open: - - tatt_opp - - avvist - tatt_opp: - - ordnet - - avvist -- bucket: utlegg - initial: open - states: - open: - event: received - godkjent: - event: godkjent - utbetalt: - event: utbetalt - avvist: - event: avvist - transitions: - godkjent: - - utbetalt - - avvist - open: - - godkjent - - avvist diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/needs.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/needs.yaml deleted file mode 100644 index 1d74b9a..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/needs.yaml +++ /dev/null @@ -1,312 +0,0 @@ -needs: -- id: bli-medlem - who: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten - enters: / - via: Bli medlem eller endre opplysningene dine - lands_in: husstander - handled_by: kasserer - stages: - - open - - betalt - - utmeldt - done_when: - - betalt - - utmeldt - success: - - betalt - max_steps: 2 - max_fields: 3 - stage_words: - open: mottatt - betalt: betalt - utmeldt: meldt ut -- id: endre-medlemskap - who: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem - enters: / - via: Bli medlem eller endre opplysningene dine - lands_in: medlemsendringer - handled_by: kasserer - stages: - - open - - oppdatert - done_when: - - oppdatert - success: - - oppdatert - max_steps: 2 - max_fields: 3 - stage_words: - open: mottatt - oppdatert: oppdatert -- id: trafikkfare - who: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien - enters: / - via: Meld fra om noe som bør fikses - lands_in: trafikkmeldinger - handled_by: trafikk - stages: - - open - - tatt_opp - - ordnet - - avvist - done_when: - - ordnet - - avvist - success: - - ordnet - max_steps: 2 - max_fields: 2 - stage_words: - open: mottatt - tatt_opp: tatt opp med kommunen - ordnet: ordnet - avvist: avvist -- id: anleggsfeil - who: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg - enters: / - via: Meld fra om noe som bør fikses - lands_in: anleggsfeil - handled_by: lekeplasser - stages: - - open - - tatt_tak_i - - utbedret - done_when: - - utbedret - success: - - utbedret - max_steps: 2 - max_fields: 2 - stage_words: - open: mottatt - tatt_tak_i: tatt tak i - utbedret: utbedret -- id: horingsinnspill - who: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar - enters: / - via: Få din mening med i høringssvaret - lands_in: innspill - handled_by: horingsinstans - stages: - - open - - tatt_med - - ikke_tatt_med - done_when: - - tatt_med - - ikke_tatt_med - success: - - tatt_med - max_steps: 1 - max_fields: 3 - stage_words: - open: mottatt - tatt_med: tatt med i høringssvaret - ikke_tatt_med: ikke tatt med -- id: hjelpe-til - who: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem - enters: / - via: Bli med og gjør en innsats - lands_in: frivillige - handled_by: arrangementer - stages: - - open - - kontaktet - - satt_opp - - takket_nei - done_when: - - satt_opp - - takket_nei - success: - - satt_opp - max_steps: 2 - max_fields: 3 - stage_words: - open: mottatt - kontaktet: kontaktet - satt_opp: satt opp - takket_nei: takket nei -- id: komite - who: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om - enters: / - via: Bli med og gjør en innsats - lands_in: komitesoknader - handled_by: styret - stages: - - open - - plassert - - avslatt - done_when: - - plassert - - avslatt - success: - - plassert - max_steps: 2 - max_fields: 3 - stage_words: - open: mottatt - plassert: plassert i en komité - avslatt: avslått -- id: trenger-hjelp - who: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp - enters: / - via: Få hjelp av naboer, eller gi en hånd selv - lands_in: hjelpebehov - handled_by: nabohjelp - stages: - - open - - formidlet - - ordnet - - ikke_lost - done_when: - - ordnet - - ikke_lost - success: - - ordnet - max_steps: 2 - max_fields: 4 - stage_words: - open: mottatt - formidlet: formidlet til en nabo - ordnet: ordnet - ikke_lost: ikke løst -- id: kan-hjelpe - who: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer - enters: / - via: Få hjelp av naboer, eller gi en hånd selv - lands_in: hjelpere - handled_by: nabohjelp - stages: - - open - - registrert - - trukket - done_when: - - registrert - - trukket - success: - - registrert - max_steps: 2 - max_fields: 4 - stage_words: - open: mottatt - registrert: registrert som hjelper - trukket: trukket -- id: dele-utstyr - who: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser - enters: / - via: Få hjelp av naboer, eller gi en hånd selv - lands_in: oppslag - handled_by: styret - stages: - - open - - lagt_ut - - tatt_ned - done_when: - - lagt_ut - - tatt_ned - success: - - lagt_ut - max_steps: 2 - max_fields: 4 - stage_words: - open: mottatt - lagt_ut: lagt ut - tatt_ned: tatt ned -- id: utlegg - who: en i en komité som har lagt ut for noe - wants: pengene tilbake - enters: /komiteer/utlegg - via: Få pengene tilbake - lands_in: utlegg - handled_by: kasserer - stages: - - open - - godkjent - - utbetalt - - avvist - done_when: - - utbetalt - - avvist - success: - - utbetalt - max_steps: 1 - max_fields: 3 - stage_words: - open: mottatt - godkjent: godkjent - utbetalt: utbetalt - avvist: avvist - enters_as: komiteer -personas: -- id: nyinnflyttet - need: bli-medlem - text: Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det? -- id: glemte-a-betale - need: bli-medlem - text: Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem? -- id: ny-epost - need: endre-medlemskap - text: Vi har byttet e-postadresse og får ikke lenger noe fra dere. -- id: flytter - need: endre-medlemskap - text: Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista. -- id: skolevei - need: trafikkfare - text: Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går. -- id: busslomme - need: trafikkfare - text: Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy. -- id: huske - need: anleggsfeil - text: Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt. -- id: bru - need: anleggsfeil - text: Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom. -- id: blokker - need: horingsinnspill - text: Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra? -- id: togtider - need: horingsinnspill - text: Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det. -- id: vafler - need: hjelpe-til - text: Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk. -- id: motorsag - need: hjelpe-til - text: Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad. -- id: pendler - need: komite - text: Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det. -- id: planlegger - need: komite - text: Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring. -- id: tilhenger - need: dele-utstyr - text: Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp. -- id: stige - need: dele-utstyr - text: Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har? -- id: snomaking - need: trenger-hjelp - text: Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør? -- id: nyoperert - need: trenger-hjelp - text: Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg? -- id: hjemmekontor - need: kan-hjelpe - text: Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv. -- id: pensjonert-elektriker - need: kan-hjelpe - text: Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting. -- id: kvittering - need: utlegg - text: Jeg kjøpte pølser og kakao til skøytedagen for 1 840 kroner, her er kvitteringa, vil ha det igjen. diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/arrangementer/_section.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/arrangementer/_section.yaml deleted file mode 100644 index 94afa0f..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/arrangementer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: arrangementer diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/arrangementer/index.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/arrangementer/index.yaml deleted file mode 100644 index 8f0c49b..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/arrangementer/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -name: Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp? -description: Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Frivillige til arrangementer og dugnad - description: Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem. - action: /arrangementer - consequence: - - Lagre - features: - - name: Frivillige - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: frivillige - requires_group: arrangementer - transitions: - - from: kontaktet - to: satt_opp - label: Sett opp - - from: kontaktet - to: takket_nei - label: Takket nei - - from: open - to: kontaktet - label: Merk som kontaktet - - from: open - to: takket_nei - label: Takket nei -- name: Inviter noen inn i Arrangementer - description: De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /arrangementer - consequence: - - Inviter - invite: - group: arrangementer - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - action: /arrangementer - consequence: - - Lagre - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: arrangementer - transitions: - - from: open - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/bidra/index.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/bidra/index.yaml deleted file mode 100644 index 65dada0..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/bidra/index.yaml +++ /dev/null @@ -1,82 +0,0 @@ -name: Vil du hjelpe til i nabolaget? -description: Vil du stille opp for nabolaget? Her melder du deg til dugnad og arrangementer, eller til en av komiteene. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Bli med på dugnad eller arrangement - description: 17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer. - action: /received/hjelpe-til - consequence: - - Meld meg på - record_as: frivillige - features: - - name: Hva skjer videre - description: Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit. - icon: lucide:clipboard-list - - name: Hvem leser dette - description: Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:users - - name: Meld deg som hjelper - requirements: - - name: navn - label: Navn - type: text - placeholder: Kari Nordmann - - name: telefon - label: Telefon - type: tel - placeholder: 912 34 567 - - name: hva - label: Hva kan du hjelpe til med? - type: select - options: - - 17. mai - - Juletregranstenning - - Skøytedag - - Dugnad på elvestien - - Det som trengs - multiple: true - description: Fortell kort hva du kan hjelpe til med. - icon: lucide:hand-helping - encouragements: - - Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg. -- name: Sitt i en komité som betyr noe for deg - description: Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i. - action: /received/komite - consequence: - - Meld interesse - record_as: komitesoknader - features: - - name: Hva skjer videre - description: Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå. - icon: lucide:clipboard-list - - name: Hvem leser dette - description: Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:handshake - - name: Meld deg til en komité - requirements: - - name: navn - label: Navn - type: text - placeholder: Kari Nordmann - - name: epost - label: E-post - type: email - placeholder: kari@eksempel.no - - name: komite - label: Hvilken komité? - type: select - options: - - Arrangementer - - Elvesti - - Høringsinstans - - Leke- og møteplasser - - Miljøgate - - Pendlerforhold - - Trafikkforhold - multiple: true - description: Skriv hvilken komité du er interessert i. - icon: lucide:users - encouragements: - - Det tar bare et minutt, og noen fra styret svarer deg. diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/decide/bli-medlem.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/decide/bli-medlem.yaml deleted file mode 100644 index 2453aa6..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/decide/bli-medlem.yaml +++ /dev/null @@ -1,11 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Utmeldt - description: '' - self_transition: - bucket: husstander - to: utmeldt - from: - - open - label: Utmeldt diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/decide/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/decide/dele-utstyr.yaml deleted file mode 100644 index 11765d8..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/decide/dele-utstyr.yaml +++ /dev/null @@ -1,11 +0,0 @@ -name: Skal oppslaget om utstyret fortsatt stå ute? -description: Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån. -alternatives: -- name: Meld at utstyret er tatt ned - description: Oppslaget fjernes fra siden, så ingen flere spør om å låne det. - self_transition: - bucket: oppslag - to: tatt_ned - from: - - open - label: Ta ned oppslaget diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/decide/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/decide/kan-hjelpe.yaml deleted file mode 100644 index 8205c75..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/decide/kan-hjelpe.yaml +++ /dev/null @@ -1,11 +0,0 @@ -name: Vil du fortsatt kunne bli spurt om å hjelpe en nabo? -description: Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå. -alternatives: -- name: Ta en pause fra nabohjelpen - description: Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre. - self_transition: - bucket: hjelpere - to: trukket - from: - - open - label: Trekk meg diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/decide/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/decide/trenger-hjelp.yaml deleted file mode 100644 index c7adb18..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/decide/trenger-hjelp.yaml +++ /dev/null @@ -1,11 +0,0 @@ -name: Har naboen fått hjelpen de trengte? -description: Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet. -alternatives: -- name: Meld fra at hjelpen er gitt - description: Da vet vi at naboen har fått hjelpen sin, og saken lukkes. - self_transition: - bucket: hjelpebehov - to: ordnet - from: - - formidlet - label: Merk som ordnet diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/horingsinstans/_section.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/horingsinstans/_section.yaml deleted file mode 100644 index ad97e31..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/horingsinstans/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: horingsinstans diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/horingsinstans/index.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/horingsinstans/index.yaml deleted file mode 100644 index dad2664..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/horingsinstans/index.yaml +++ /dev/null @@ -1,59 +0,0 @@ -name: Hva sier vi i høringssvaret? -description: Her samler du innspillene og ser hva som er tatt med i velets høringssvar. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Innspill til høringssvar - description: Her ligger innspill fra beboere til saker kommunen har på høring. - action: /horingsinstans - consequence: - - Send svar - features: - - name: Innspill - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: innspill - requires_group: horingsinstans - transitions: - - from: open - to: tatt_med - label: Tatt med i svaret - - from: open - to: ikke_tatt_med - label: Ikke tatt med -- name: Inviter noen inn i Høringsinstans - description: De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /horingsinstans - consequence: - - Inviter - invite: - group: horingsinstans - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - action: /horingsinstans - consequence: - - Send svar - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: horingsinstans - transitions: - - from: open - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/index.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/index.yaml deleted file mode 100644 index 327e15e..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/index.yaml +++ /dev/null @@ -1,118 +0,0 @@ -name: Hva gjør Tomter Vel, og hva kan du få her? -description: Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Velforeningen for Tomter siden 1947 - description: Vi er sju komiteer som jobber på fritida for bygda vår. 157 husstander er med. - features: - - name: 157 husstander er medlemmer - description: Kontingenten går til arrangementer, lekeplasser, elvestien og arbeidet for tryggere trafikk. - icon: lucide:users - - name: Naboer som stiller opp for hverandre - description: Trenger du hjelp med snømåking, handling eller skyss, finner vi en nabo som kan. Du kan også låne og låne ut utstyr. - icon: lucide:heart-handshake -- name: Siste fra bygda - description: Nye meldinger og oppslag, slik de står akkurat nå. - features: - - name: Feil på lekeplasser og sti - description: Det som er meldt inn, og hvor langt vi har kommet med å fikse det. [Alle feilmeldinger](/status/anleggsfeil) - icon: lucide:construction - resource: - source: - kind: kv - bucket: anleggsfeil - public: true - states: [] - empty: Ingenting er meldt ødelagt akkurat nå. Ser du noe, si fra. - jq: 'sort_by(.submitted_ms) | reverse | .[:3] | .[] | .responses |= {hva: .hva, hvor: .hvor}' - - name: Oppslagstavla for naboer - description: Utstyr som er til låns, og det naboene leter etter. [Hele oppslagstavla](/status/oppslag) - icon: lucide:list - resource: - source: - kind: kv - bucket: oppslag - public: true - states: [] - empty: Tavla er tom nå. Legg gjerne ut det første oppslaget. - jq: 'sort_by(.submitted_ms) | reverse | .[:3] | .[] | .responses |= {har_eller_trenger: .har_eller_trenger, hva: .hva}' - - name: Farlige steder i trafikken - description: Det naboer har meldt fra om, og hva velet har gjort med det. [Alle trafikkmeldinger](/status/trafikkmeldinger) - icon: lucide:car - resource: - source: - kind: kv - bucket: trafikkmeldinger - public: true - states: [] - empty: Ingen farlige steder er meldt inn nå. Har du sett et, fortell oss. - jq: 'sort_by(.submitted_ms) | reverse | .[:3] | .[] | .responses |= {hva: .hva, hvor: .hvor}' -- name: Bli medlem eller endre opplysningene dine - description: Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding. - action: /medlem - consequence: - - Til medlemskap - features: - - name: Deg som bor i Tomter - description: Å bli medlem og få betalt kontingenten, at velet har riktige opplysninger om dem. - icon: lucide:house -- name: Meld fra om noe som bør fikses - description: Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed. - action: /melde-fra - consequence: - - Meld fra - features: - - name: Deg som har sett noe som bør fikses - description: At velet tar det opp med kommunen eller den som eier veien, at det blir fikset før noen skader seg. - icon: lucide:alert-triangle -- name: Bli med og gjør en innsats - description: Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse. - action: /bidra - consequence: - - Bli med - features: - - name: Deg som vil gjøre en innsats - description: Å bli satt opp på noe som passer dem, en plass i den komiteen som driver med det de bryr seg om. - icon: lucide:hand-helping -- name: Få hjelp av naboer, eller gi en hånd selv - description: Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere. - action: /naboer - consequence: - - Til nabohjelp - features: - - name: Deg som trenger hjelp eller kan gi en hånd - description: At en nabo stiller opp, å bli spurt når det passer, et oppslag som naboene ser. - icon: lucide:heart-handshake -- name: Få din mening med i høringssvaret - description: Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar. - action: /received/horingsinnspill - consequence: - - Send innspill - record_as: innspill - features: - - name: Hva skjer videre - description: Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen. - icon: lucide:route - - name: Hvem leser dette - description: Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no. - icon: lucide:users - - name: Send et høringsinnspill - requirements: - - name: navn - label: Navn - type: text - placeholder: Kari Nordmann - - name: sak - label: Hvilken sak gjelder det? - type: text - placeholder: Reguleringsplan for Tomterveien - - name: innspill - label: Hva mener du? - type: textarea - placeholder: Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen. - description: Fortell hvilken sak det gjelder og hva du mener. - icon: lucide:megaphone - encouragements: - - Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen. diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/kasserer/_section.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/kasserer/_section.yaml deleted file mode 100644 index 2f8af2f..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/kasserer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: kasserer diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/kasserer/index.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/kasserer/index.yaml deleted file mode 100644 index 0acf94d..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/kasserer/index.yaml +++ /dev/null @@ -1,102 +0,0 @@ -name: Hva venter på meg som kasserer akkurat nå? -description: Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Nye medlemmer som venter på registrering - description: Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem. - action: /kasserer - consequence: - - Lagre - features: - - name: Husstander - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: husstander - requires_group: kasserer - transitions: - - from: open - to: betalt - label: Registrer betaling - - from: open - to: utmeldt - label: Meld ut -- name: Endringer som venter på å bli registrert - description: Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert. - action: /kasserer - consequence: - - Lagre - features: - - name: Medlemsendringer - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: medlemsendringer - requires_group: kasserer - transitions: - - from: open - to: oppdatert - label: Registrer endring -- name: Utlegg som venter på deg - description: Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling. - action: /kasserer - consequence: - - Lagre - features: - - name: Utlegg - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: utlegg - requires_group: kasserer - transitions: - - from: godkjent - to: utbetalt - label: Merk som utbetalt - - from: godkjent - to: avvist - label: Avvis likevel - - from: open - to: godkjent - label: Godkjenn utlegg - - from: open - to: avvist - label: Avvis utlegg -- name: Inviter noen inn i kassereren - description: De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /kasserer - consequence: - - Inviter - invite: - group: kasserer - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - action: /kasserer - consequence: - - Lagre - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: kasserer - transitions: - - from: open - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/komiteer/_section.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/komiteer/_section.yaml deleted file mode 100644 index 57e3295..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/komiteer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: komiteer diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/komiteer/index.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/komiteer/index.yaml deleted file mode 100644 index 3016d12..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/komiteer/index.yaml +++ /dev/null @@ -1,44 +0,0 @@ -name: Hva står ubehandlet i komiteen din nå? -description: Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Få tilbake det du har lagt ut - description: Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake. - action: /komiteer/utlegg - consequence: - - Send utlegg -- name: Inviter noen inn i komiteene - description: De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /komiteer - consequence: - - Inviter - invite: - group: komiteer - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - action: /komiteer - consequence: - - Confirm - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: komiteer - transitions: - - from: open - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/komiteer/utlegg-sent.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/komiteer/utlegg-sent.yaml deleted file mode 100644 index 92f5c74..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/komiteer/utlegg-sent.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: Hva skjer med utlegget mitt nå? -description: Utlegget er sendt til kasserer. Du får beskjed når det er sjekket. -alternatives: -- name: Pengene kommer på konto - description: Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga. diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/komiteer/utlegg.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/komiteer/utlegg.yaml deleted file mode 100644 index e419f0d..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/komiteer/utlegg.yaml +++ /dev/null @@ -1,38 +0,0 @@ -followup: false -name: Har du lagt ut penger for komiteen og vil ha dem tilbake? -description: Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Få pengene tilbake - description: Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten. - action: /komiteer/utlegg-sent - consequence: - - Send inn - record_as: utlegg - features: - - name: Fra krav til utbetaling - description: Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor. - icon: lucide:wallet - - name: Kasserer ser dette - description: Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster. - icon: lucide:coins - - name: Krav om refusjon - requirements: - - name: navn - label: Navn - type: text - placeholder: Kari Nordmann - - name: belop - label: Beløp - type: text - placeholder: 450 kr - - name: hva - label: Hva gjaldt det - type: textarea - placeholder: Kaffe og kjeks til dugnaden - description: Ha kvittering eller bilag klart før du fyller ut. - icon: lucide:receipt - encouragements: - - Legg ved bilag om du har det, så går det raskere. diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/lekeplasser/_section.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/lekeplasser/_section.yaml deleted file mode 100644 index 1652221..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/lekeplasser/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: lekeplasser diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/lekeplasser/index.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/lekeplasser/index.yaml deleted file mode 100644 index a30dd6f..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/lekeplasser/index.yaml +++ /dev/null @@ -1,59 +0,0 @@ -name: Hva må fikses på lekeplassene og stien nå? -description: Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Det som er meldt inn av skader - description: Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses. - action: /lekeplasser - consequence: - - Lagre - features: - - name: Anleggsfeil - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: anleggsfeil - requires_group: lekeplasser - transitions: - - from: open - to: tatt_tak_i - label: Ta tak i saken - - from: tatt_tak_i - to: utbedret - label: Merk som utbedret -- name: Inviter noen inn i Leke- og møteplasser - description: De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /lekeplasser - consequence: - - Inviter - invite: - group: lekeplasser - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - action: /lekeplasser - consequence: - - Lagre - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: lekeplasser - transitions: - - from: open - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/medlem/index.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/medlem/index.yaml deleted file mode 100644 index 264baba..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/medlem/index.yaml +++ /dev/null @@ -1,72 +0,0 @@ -name: Vil du bli medlem, eller endre medlemskapet ditt? -description: Bli medlem av Tomter Vel, eller oppdater opplysningene dine hvis du allerede er medlem. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Bli medlem av Tomter Vel - description: Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet. - action: /received/bli-medlem - consequence: - - Bli medlem - record_as: husstander - features: - - name: Etter innmelding - description: Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem. - icon: lucide:coins - - name: Hvem svarer deg - description: Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden. - icon: lucide:user - - name: Meld deg inn - requirements: - - name: navn - label: Navn - type: text - placeholder: Ola Nordmann - - name: adresse - label: Adresse - type: text - placeholder: Tomterveien 12 - - name: email - label: Email - type: email - - name: telefon - label: Telefon - type: tel - optional: true - placeholder: 123 45 678 - description: Ha adressen i Tomter og en e-post du bruker klar. - icon: lucide:user-plus - encouragements: - - Kasserer sender deg kontingenten på e-post rett etterpå. -- name: Oppdater eller avslutt medlemskapet - description: Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger. - action: /received/endre-medlemskap - consequence: - - Send endring - record_as: medlemsendringer - features: - - name: Etter du sender inn - description: Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om. - icon: lucide:refresh-cw - - name: Hvem svarer deg - description: Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden. - icon: lucide:user - - name: Endre medlemskap - requirements: - - name: navn - label: Navn - type: text - placeholder: Ola Nordmann - - name: adresse - label: Adresse - type: text - placeholder: Ny adresse i Tomter - - name: hva_er_nytt - label: Hva vil du endre? - type: textarea - placeholder: Ny e-post, ny adresse, eller ønske om utmelding - description: Skriv navnet ditt og hva som er nytt. - icon: lucide:pencil - encouragements: - - Det tar bare et par minutter, og kasserer ordner resten. diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/melde-fra/index.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/melde-fra/index.yaml deleted file mode 100644 index cee30e1..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/melde-fra/index.yaml +++ /dev/null @@ -1,69 +0,0 @@ -name: Hva vil du melde fra om? -description: Har du sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien? Her sier du fra til velet. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Meld fra om en trafikkfare - description: Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre. - action: /received/trafikkfare - consequence: - - Send inn - record_as: trafikkmeldinger - features: - - name: Hva skjer videre - description: Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist. - icon: lucide:route - - name: Hvem leser dette - description: Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no. - icon: lucide:car - - name: Meld trafikkfare - requirements: - - name: hvor - label: Hvor var det - type: text - placeholder: Krysset Tomterveien / Elvestien - - name: hva - label: Hva så du - type: textarea - placeholder: Dårlig sikt i krysset, biler kjører fort - - name: epost - label: E-post (valgfritt) - type: email - optional: true - placeholder: ola.nordmann@epost.no - description: Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer. - icon: lucide:alert-triangle - encouragements: - - Bare noen linjer om hva og hvor er nok til at vi kan følge opp. -- name: Meld fra om noe ødelagt - description: Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det. - action: /received/anleggsfeil - consequence: - - Send inn - record_as: anleggsfeil - features: - - name: Hva skjer videre - description: Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet. - icon: lucide:wrench - - name: Hvem leser dette - description: Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no. - icon: lucide:hammer - - name: Meld anleggsfeil - requirements: - - name: hvor - label: Hvor er det - type: select - options: - - Lekeplassen - - Elvestien - - Skøytebanen - - Et annet sted - - name: hva - label: Hva er ødelagt - type: textarea - placeholder: Løs planke på gjerdet ved husken - description: Fortell hva som er ødelagt og omtrent hvor det er. - icon: lucide:construction - encouragements: - - Det holder med noen ord om hva du så og hvor. diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/naboer/index.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/naboer/index.yaml deleted file mode 100644 index 0a9eaab..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/naboer/index.yaml +++ /dev/null @@ -1,125 +0,0 @@ -name: Trenger du en hånd, eller kan du gi en? -description: Godt naboskap gjør hverdagen lettere. Trenger du en hånd, kan gi en, eller har noe å låne bort? -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Få en nabo til å stille opp - description: Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp. - action: /received/trenger-hjelp - consequence: - - Be om hjelp - record_as: hjelpebehov - features: - - name: Fra melding til hjelp - description: Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed. - icon: lucide:hand-helping - - name: Hvem ser dette - description: Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden. - icon: lucide:users - - name: Be om en hånd - requirements: - - name: navn - label: Navn - type: text - placeholder: Kari Nordmann - - name: email - label: E-post - type: email - placeholder: kari@eksempel.no - - name: adresse - label: Adresse - type: text - placeholder: Tomterveien 12 - - name: hva - label: Hva trenger du hjelp til - type: textarea - placeholder: Måke snø på trappa, handle inn litt mat - - name: telefon - label: Telefon - type: tel - optional: true - placeholder: 123 45 678 - description: Skriv kort hva du trenger hjelp til. - icon: lucide:heart-handshake - encouragements: - - Vi finner en nabo som kan stille opp så fort som mulig. -- name: Bli spurt når en nabo trenger en hånd - description: Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer. - action: /received/kan-hjelpe - consequence: - - Meld deg - record_as: hjelpere - features: - - name: Fra påmelding til spørsmål - description: Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra. - icon: lucide:user-check - - name: Hvem ser dette - description: Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no. - icon: lucide:heart-handshake - - name: Meld deg som hjelper - requirements: - - name: navn - label: Navn - type: text - placeholder: Kari Nordmann - - name: email - label: E-post - type: email - placeholder: kari@eksempel.no - - name: telefon - label: Telefon - type: tel - placeholder: 123 45 678 - - name: kan - label: Hva kan du hjelpe med - type: select - options: - - Snømåking - - Handling - - Kjøring - - Småfiks i huset - - En prat og litt selskap - - Det som trengs - multiple: true - description: Fortell kort hva du kan bidra med. - icon: lucide:hand-helping - encouragements: - - Du blir bare kontaktet når noe passer for deg. -- name: Lån ut eller lån av naboen - description: Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det. - action: /received/dele-utstyr - consequence: - - Legg ut oppslag - record_as: oppslag - features: - - name: Fra oppslag til avtale - description: Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen. - icon: lucide:clipboard-list - - name: Hvem ser dette - description: Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden. - icon: lucide:users - - name: Lån eller utlån - requirements: - - name: navn - label: Navn - type: text - placeholder: Ola Nordmann - - name: email - label: E-post - type: email - placeholder: ola@eksempel.no - - name: har_eller_trenger - label: Har du eller trenger du - type: select - options: - - Jeg har noe å låne ut - - Jeg trenger å låne noe - - name: hva - label: Hva gjelder det - type: textarea - placeholder: Hengerfeste til bil, tilhenger, stige - description: Skriv kort hva det gjelder, så folk skjønner det med en gang. - icon: lucide:package - encouragements: - - Vi legger det ut så naboene kan se det. diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/nabohjelp/_section.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/nabohjelp/_section.yaml deleted file mode 100644 index 5b3a2ad..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/nabohjelp/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: nabohjelp diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/nabohjelp/index.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/nabohjelp/index.yaml deleted file mode 100644 index 8f574e8..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/nabohjelp/index.yaml +++ /dev/null @@ -1,85 +0,0 @@ -name: Hvem trenger hjelp, og hvem kan stille opp? -description: Her kobler du naboer som trenger hjelp med dem som kan stille opp. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Naboer som trenger en hånd - description: Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe. - action: /nabohjelp - consequence: - - Lagre - features: - - name: Hjelpebehov - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: hjelpebehov - requires_group: nabohjelp - transitions: - - from: formidlet - to: ordnet - label: Meld ordnet - - from: formidlet - to: ikke_lost - label: Meld ikke løst - - from: open - to: formidlet - label: Koble til nabo - - from: open - to: ikke_lost - label: Meld ikke løst -- name: Naboer som kan stille opp - description: Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem. - action: /nabohjelp - consequence: - - Lagre - features: - - name: Hjelpere - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: hjelpere - requires_group: nabohjelp - transitions: - - from: open - to: registrert - label: Registrer som hjelper - - from: open - to: trukket - label: Meld trukket -- name: Inviter noen inn i nabohjelpen - description: De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /nabohjelp - consequence: - - Inviter - invite: - group: nabohjelp - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - action: /nabohjelp - consequence: - - Lagre - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: nabohjelp - transitions: - - from: open - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/anleggsfeil.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/anleggsfeil.yaml deleted file mode 100644 index ebedd65..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/anleggsfeil.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: Hva skjer med meldingen min nå? -description: Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt. -alternatives: -- name: Komiteen tar tak i det - description: Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg. -- name: Se andre meldte feil - description: Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet. - action: /status/anleggsfeil - consequence: - - Se meldte feil diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/bli-medlem.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/bli-medlem.yaml deleted file mode 100644 index 5cab090..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/bli-medlem.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: Hva skjer etter at jeg har meldt meg inn? -description: Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert. -alternatives: -- name: Kasserer sender deg betalingsinfo - description: Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten. diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/dele-utstyr.yaml deleted file mode 100644 index 9559abd..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/dele-utstyr.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: Hva skjer med det jeg har lagt ut? -description: Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan. -alternatives: -- name: Styret legger det ut for deg - description: En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne. -- name: Se alt naboene deler - description: Se hva andre i Tomter har lagt ut til utlån akkurat nå. - action: /status/oppslag - consequence: - - Se hva naboer deler diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/endre-medlemskap.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/endre-medlemskap.yaml deleted file mode 100644 index 54f47ec..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/endre-medlemskap.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: Hva skjer nå med det jeg meldte inn? -description: Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut. -alternatives: -- name: Kasserer retter opp opplysningene - description: Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg. diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/hjelpe-til.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/hjelpe-til.yaml deleted file mode 100644 index a1ec5b1..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/hjelpe-til.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: Hva skjer nå som jeg har meldt meg? -description: Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg. -alternatives: -- name: Komiteen tar kontakt - description: Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden. diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/horingsinnspill.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/horingsinnspill.yaml deleted file mode 100644 index e86afc6..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/horingsinnspill.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: Hva skjer med det jeg har sagt om saken? -description: Innspillet ditt er sendt til høringsinstansen i velet. -alternatives: -- name: Innspillet ditt inn i vurderingen - description: De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med. diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/kan-hjelpe.yaml deleted file mode 100644 index 15be94e..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/kan-hjelpe.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: Hva skjer nå som jeg har registrert meg? -description: Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe. -alternatives: -- name: Du blir kontaktet ved behov - description: Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte. diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/komite.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/komite.yaml deleted file mode 100644 index 450a7c3..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/komite.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: Hva skjer nå som jeg har meldt interesse for en komité? -description: Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg. -alternatives: -- name: Vi finner riktig komité til deg - description: Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer. diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/trafikkfare.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/trafikkfare.yaml deleted file mode 100644 index 7fb87a9..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/trafikkfare.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: Hva skjer med meldingen min nå? -description: Meldingen din om trafikkfaren er sendt til komiteen for trafikk. -alternatives: -- name: Trafikkomiteen tar den videre - description: Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs. -- name: Andre meldte trafikkfarer - description: Se hva andre har meldt inn, og status på sakene. - action: /status/trafikkmeldinger - consequence: - - Se andre trafikkfarer diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/trenger-hjelp.yaml deleted file mode 100644 index 15f7ed8..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/received/trenger-hjelp.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: Hva skjer nå som jeg har bedt om hjelp? -description: Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp. -alternatives: -- name: Vi finner en nabo til deg - description: Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer. diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/status/anleggsfeil/index.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/status/anleggsfeil/index.yaml deleted file mode 100644 index 32a6199..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/status/anleggsfeil/index.yaml +++ /dev/null @@ -1,19 +0,0 @@ -name: Hva skjer med det jeg har meldt fra om? -description: Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Status på meldte anleggsfeil - description: Alle meldinger er åpne for alle å se. - features: - - name: Anleggsfeil - description: Hver rad er én sak og hvor langt den har kommet. Navn og kontaktopplysninger vises ikke her. - resource: - source: - kind: kv - bucket: anleggsfeil - public: true - states: [] - empty: Ingenting her ennå. - jq: 'sort_by(.submitted_ms) | reverse | .[] | .responses |= {hva: .hva, hvor: .hvor}' diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/status/oppslag/index.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/status/oppslag/index.yaml deleted file mode 100644 index dafe397..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/status/oppslag/index.yaml +++ /dev/null @@ -1,19 +0,0 @@ -name: Hva er sendt inn, og hvor langt har det kommet? -description: Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Oversikt over det som er meldt inn - description: Åpen liste – navn og detaljer vises ikke. - features: - - name: Oppslag - description: Hver rad er én sak og hvor langt den har kommet. Navn og kontaktopplysninger vises ikke her. - resource: - source: - kind: kv - bucket: oppslag - public: true - states: [] - empty: Ingenting her ennå. - jq: 'sort_by(.submitted_ms) | reverse | .[] | .responses |= {har_eller_trenger: .har_eller_trenger, hva: .hva}' diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/status/trafikkmeldinger/index.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/status/trafikkmeldinger/index.yaml deleted file mode 100644 index aa2c5ee..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/status/trafikkmeldinger/index.yaml +++ /dev/null @@ -1,19 +0,0 @@ -name: Er det meldt fra om noe farlig i trafikken der jeg bor? -description: Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Trafikkmeldinger og status - description: Alle meldinger som er sendt inn, og hvor de står nå. - features: - - name: Trafikkmeldinger - description: Hver rad er én sak og hvor langt den har kommet. Navn og kontaktopplysninger vises ikke her. - resource: - source: - kind: kv - bucket: trafikkmeldinger - public: true - states: [] - empty: Ingenting her ennå. - jq: 'sort_by(.submitted_ms) | reverse | .[] | .responses |= {hva: .hva, hvor: .hvor}' diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/styret/_section.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/styret/_section.yaml deleted file mode 100644 index 5a34160..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/styret/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: styret diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/styret/index.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/styret/index.yaml deleted file mode 100644 index 5b2a7f9..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/styret/index.yaml +++ /dev/null @@ -1,219 +0,0 @@ -name: Hva venter på styret akkurat nå? -description: 'Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.' -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Høringsinnspill fra beboerne - description: Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar. - action: /styret - consequence: - - Lagre - features: - - name: Innspill - description: Hver rad er én sak og hvor langt den har kommet. En annen pult flytter disse. - resource: - source: - kind: kv - bucket: innspill - requires_group: styret - transitions: [] -- name: Søknader til komiteene - description: Her ligger alle som har meldt seg til en komité og venter på en plass. - action: /styret - consequence: - - Lagre - features: - - name: Komitesoknader - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: komitesoknader - requires_group: styret - transitions: - - from: open - to: plassert - label: Sett i komité - - from: open - to: avslatt - label: Avslå søknaden -- name: Utstyr til utlån blant naboer - description: Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut. - action: /styret - consequence: - - Lagre - features: - - name: Oppslag - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: oppslag - requires_group: styret - transitions: - - from: open - to: lagt_ut - label: Legg ut oppslaget - - from: open - to: tatt_ned - label: Ta ned oppslaget -- name: Meldinger om trafikkfarer - description: Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier. - action: /styret - consequence: - - Lagre - features: - - name: Trafikkmeldinger - description: Hver rad er én sak og hvor langt den har kommet. En annen pult flytter disse. - resource: - source: - kind: kv - bucket: trafikkmeldinger - requires_group: styret - transitions: [] -- name: Inviter noen inn i Arrangementer - description: De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: arrangementer - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Inviter noen inn i Høringsinstans - description: De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: horingsinstans - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Inviter noen inn i kassereren - description: De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: kasserer - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Inviter noen inn i komiteene - description: De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: komiteer - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Inviter noen inn i Leke- og møteplasser - description: De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: lekeplasser - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Inviter noen inn i nabohjelpen - description: De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: nabohjelp - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Inviter noen inn i styret - description: De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: styret - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Inviter noen inn i Trafikkforhold - description: De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: trafikk - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - action: /styret - consequence: - - Lagre - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: styret - transitions: - - from: open - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/trafikk/_section.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/trafikk/_section.yaml deleted file mode 100644 index dbe5246..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/trafikk/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: trafikk diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/trafikk/index.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/trafikk/index.yaml deleted file mode 100644 index 8fde653..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/questions/trafikk/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -name: Hvilke trafikkfarer må følges opp? -description: Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Farlige steder i trafikken - description: Farlige steder i trafikken som naboer har meldt inn. - action: /trafikk - consequence: - - Lagre - features: - - name: Trafikkmeldinger - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: trafikkmeldinger - requires_group: trafikk - transitions: - - from: open - to: tatt_opp - label: Ta opp med kommunen - - from: open - to: avvist - label: Avvis meldingen - - from: tatt_opp - to: ordnet - label: Meld ordnet - - from: tatt_opp - to: avvist - label: Avvis meldingen -- name: Inviter noen inn i Trafikkforhold - description: De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /trafikk - consequence: - - Inviter - invite: - group: trafikk - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - action: /trafikk - consequence: - - Lagre - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: trafikk - transitions: - - from: open - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/site.yaml b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/site.yaml deleted file mode 100644 index c264291..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/site.yaml +++ /dev/null @@ -1,16 +0,0 @@ -title: Tomter Vel -lang: no -mail: - from: Tomter Vel - reply_to: post@tomtervel.no - invite: - subject: Din konto hos {site_name} - body: |- - Hei {name}, - - {site_name} har laget en konto til deg og lagt deg til i {group}. Brukernavnet ditt er {username}. - - Velg passord her før {expires}: - {link} - - Etterpå logger du inn på {site}. diff --git a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/words.json b/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/words.json deleted file mode 100644 index f9b6f38..0000000 --- a/vendor/trainer/runs/tomtervel-downtree-2026-09-29/site/words.json +++ /dev/null @@ -1,1054 +0,0 @@ -{ - "aggregates.yaml": { - "hjelpebehov": { - "formidlet": { - "subject": "En nabo er koblet på", - "body": "Vi har funnet en nabo som kan hjelpe. De tar kontakt med deg direkte.\n\nDet du kan gjøre nå: {site}/decide/trenger-hjelp?chain={chain}&email={email}" - }, - "open": { - "subject": "Vi leter etter en nabo til deg", - "body": "Vi har mottatt det du trenger hjelp til, og ser etter en nabo som kan stille opp. Du hører fra oss så snart vi har funnet noen." - }, - "ordnet": { - "subject": "Bra det løste seg", - "body": "Godt å høre at det ordnet seg. Takk for at du sa fra, og lykke til videre." - } - }, - "husstander": { - "betalt": { - "subject": "Medlemskapet er i orden", - "body": "Kontingenten er registrert betalt. Du er nå medlem av Tomter Vel - velkommen med!" - }, - "open": { - "subject": "Nesten i mål som medlem", - "body": "Takk for at du vil bli medlem. Du får en betalingsoppfordring med kontonummer og beløp så snart kasserer har sett på saken.\n\nDet du kan gjøre nå: {site}/decide/bli-medlem?chain={chain}&email={email}" - } - }, - "oppslag": { - "lagt_ut": { - "subject": "Oppslaget er synlig for naboene", - "body": "Oppslaget ditt er lagt ut, og naboene kan nå se det." - } - } - }, - "questions/arrangementer/index.yaml": { - "question": "Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp?", - "description": "Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer.", - "confirm": "Lagre", - "buckets": { - "frivillige": { - "heading": "Frivillige til arrangementer og dugnad", - "description": "Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem.", - "moves": { - "kontaktet->satt_opp": "Sett opp", - "kontaktet->takket_nei": "Takket nei", - "open->kontaktet": "Merk som kontaktet", - "open->takket_nei": "Takket nei" - }, - "list_title": "Frivillige", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - } - }, - "links": {}, - "invites": { - "arrangementer": { - "heading": "Inviter noen inn i Arrangementer", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt." - } - }, - "questions/bidra/index.yaml": { - "question": "Vil du hjelpe til i nabolaget?", - "description": "Vil du stille opp for nabolaget? Her melder du deg til dugnad og arrangementer, eller til en av komiteene.", - "needs": { - "hjelpe-til": { - "heading": "Bli med på dugnad eller arrangement", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.", - "button": "Meld meg på", - "encouragement": "Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg.", - "icon": "hand-helping", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Hva skjer videre", - "road_description": "Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit.", - "road_icon": "lucide:clipboard-list", - "who_title": "Hvem leser dette", - "who_description": "Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "form_title": "Meld deg som hjelper", - "form_description": "Fortell kort hva du kan hjelpe til med.", - "labels": { - "navn": "Navn", - "telefon": "Telefon", - "hva": "Hva kan du hjelpe til med?" - }, - "hints": { - "navn": "Kari Nordmann", - "telefon": "912 34 567", - "hva": "" - } - }, - "komite": { - "heading": "Sitt i en komité som betyr noe for deg", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i.", - "button": "Meld interesse", - "encouragement": "Det tar bare et minutt, og noen fra styret svarer deg.", - "icon": "users", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Hva skjer videre", - "road_description": "Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå.", - "road_icon": "lucide:clipboard-list", - "who_title": "Hvem leser dette", - "who_description": "Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:handshake", - "form_title": "Meld deg til en komité", - "form_description": "Skriv hvilken komité du er interessert i.", - "labels": { - "navn": "Navn", - "epost": "E-post", - "komite": "Hvilken komité?" - }, - "hints": { - "navn": "Kari Nordmann", - "epost": "kari@eksempel.no", - "komite": "" - } - } - } - }, - "questions/decide/bli-medlem.yaml": { - "question": "What would you like to do?", - "description": "", - "moves": { - "utmeldt": { - "heading": "Utmeldt", - "description": "", - "button": "Utmeldt" - } - } - }, - "questions/decide/dele-utstyr.yaml": { - "question": "Skal oppslaget om utstyret fortsatt stå ute?", - "description": "Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån.", - "moves": { - "tatt_ned": { - "heading": "Meld at utstyret er tatt ned", - "description": "Oppslaget fjernes fra siden, så ingen flere spør om å låne det.", - "button": "Ta ned oppslaget" - } - } - }, - "questions/decide/kan-hjelpe.yaml": { - "question": "Vil du fortsatt kunne bli spurt om å hjelpe en nabo?", - "description": "Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå.", - "moves": { - "trukket": { - "heading": "Ta en pause fra nabohjelpen", - "description": "Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre.", - "button": "Trekk meg" - } - } - }, - "questions/decide/trenger-hjelp.yaml": { - "question": "Har naboen fått hjelpen de trengte?", - "description": "Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet.", - "moves": { - "ordnet": { - "heading": "Meld fra at hjelpen er gitt", - "description": "Da vet vi at naboen har fått hjelpen sin, og saken lukkes.", - "button": "Merk som ordnet" - } - } - }, - "questions/horingsinstans/index.yaml": { - "question": "Hva sier vi i høringssvaret?", - "description": "Her samler du innspillene og ser hva som er tatt med i velets høringssvar.", - "confirm": "Send svar", - "buckets": { - "innspill": { - "heading": "Innspill til høringssvar", - "description": "Her ligger innspill fra beboere til saker kommunen har på høring.", - "moves": { - "open->tatt_med": "Tatt med i svaret", - "open->ikke_tatt_med": "Ikke tatt med" - }, - "list_title": "Innspill", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - } - }, - "links": {}, - "invites": { - "horingsinstans": { - "heading": "Inviter noen inn i Høringsinstans", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt." - } - }, - "questions/index.yaml": { - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "description": "Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står.", - "opener": { - "heading": "Velforeningen for Tomter siden 1947", - "description": "Vi er sju komiteer som jobber på fritida for bygda vår. 157 husstander er med.", - "features": { - "medlem": { - "heading": "157 husstander er medlemmer", - "description": "Kontingenten går til arrangementer, lekeplasser, elvestien og arbeidet for tryggere trafikk.", - "icon": "users" - }, - "nabo": { - "heading": "Naboer som stiller opp for hverandre", - "description": "Trenger du hjelp med snømåking, handling eller skyss, finner vi en nabo som kan. Du kan også låne og låne ut utstyr.", - "icon": "heart-handshake" - } - } - }, - "shopping": { - "heading": "Siste fra bygda", - "description": "Nye meldinger og oppslag, slik de står akkurat nå.", - "items": { - "status-anleggsfeil": { - "heading": "Feil på lekeplasser og sti", - "description": "Det som er meldt inn, og hvor langt vi har kommet med å fikse det.", - "link": "Alle feilmeldinger", - "empty": "Ingenting er meldt ødelagt akkurat nå. Ser du noe, si fra.", - "icon": "construction" - }, - "status-oppslag": { - "heading": "Oppslagstavla for naboer", - "description": "Utstyr som er til låns, og det naboene leter etter.", - "link": "Hele oppslagstavla", - "empty": "Tavla er tom nå. Legg gjerne ut det første oppslaget.", - "icon": "list" - }, - "status-trafikkmeldinger": { - "heading": "Farlige steder i trafikken", - "description": "Det naboer har meldt fra om, og hva velet har gjort med det.", - "link": "Alle trafikkmeldinger", - "empty": "Ingen farlige steder er meldt inn nå. Har du sett et, fortell oss.", - "icon": "car" - } - } - }, - "doors": { - "medlem": { - "heading": "Bli medlem eller endre opplysningene dine", - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.", - "button": "Til medlemskap", - "icon": "house", - "for_whom": "Deg som bor i Tomter", - "behind": "Å bli medlem og få betalt kontingenten, at velet har riktige opplysninger om dem." - }, - "melde-fra": { - "heading": "Meld fra om noe som bør fikses", - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed.", - "button": "Meld fra", - "icon": "alert-triangle", - "for_whom": "Deg som har sett noe som bør fikses", - "behind": "At velet tar det opp med kommunen eller den som eier veien, at det blir fikset før noen skader seg." - }, - "bidra": { - "heading": "Bli med og gjør en innsats", - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.", - "button": "Bli med", - "icon": "hand-helping", - "for_whom": "Deg som vil gjøre en innsats", - "behind": "Å bli satt opp på noe som passer dem, en plass i den komiteen som driver med det de bryr seg om." - }, - "naboer": { - "heading": "Få hjelp av naboer, eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.", - "button": "Til nabohjelp", - "icon": "heart-handshake", - "for_whom": "Deg som trenger hjelp eller kan gi en hånd", - "behind": "At en nabo stiller opp, å bli spurt når det passer, et oppslag som naboene ser." - } - }, - "needs": { - "horingsinnspill": { - "heading": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "button": "Send innspill", - "encouragement": "Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen.", - "icon": "megaphone", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Hva skjer videre", - "road_description": "Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen.", - "road_icon": "lucide:route", - "who_title": "Hvem leser dette", - "who_description": "Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:users", - "form_title": "Send et høringsinnspill", - "form_description": "Fortell hvilken sak det gjelder og hva du mener.", - "labels": { - "navn": "Navn", - "sak": "Hvilken sak gjelder det?", - "innspill": "Hva mener du?" - }, - "hints": { - "navn": "Kari Nordmann", - "sak": "Reguleringsplan for Tomterveien", - "innspill": "Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen." - } - } - } - }, - "questions/kasserer/index.yaml": { - "question": "Hva venter på meg som kasserer akkurat nå?", - "description": "Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer.", - "confirm": "Lagre", - "buckets": { - "husstander": { - "heading": "Nye medlemmer som venter på registrering", - "description": "Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem.", - "moves": { - "open->betalt": "Registrer betaling", - "open->utmeldt": "Meld ut" - }, - "list_title": "Husstander", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - }, - "medlemsendringer": { - "heading": "Endringer som venter på å bli registrert", - "description": "Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert.", - "moves": { - "open->oppdatert": "Registrer endring" - }, - "list_title": "Medlemsendringer", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - }, - "utlegg": { - "heading": "Utlegg som venter på deg", - "description": "Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling.", - "moves": { - "godkjent->utbetalt": "Merk som utbetalt", - "godkjent->avvist": "Avvis likevel", - "open->godkjent": "Godkjenn utlegg", - "open->avvist": "Avvis utlegg" - }, - "list_title": "Utlegg", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - } - }, - "links": {}, - "invites": { - "kasserer": { - "heading": "Inviter noen inn i kassereren", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt." - } - }, - "questions/komiteer/index.yaml": { - "question": "Hva står ubehandlet i komiteen din nå?", - "description": "Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp.", - "confirm": "Confirm", - "buckets": {}, - "links": { - "utlegg": { - "heading": "Få tilbake det du har lagt ut", - "description": "Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake.", - "button": "Send utlegg" - } - }, - "invites": { - "komiteer": { - "heading": "Inviter noen inn i komiteene", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt." - } - }, - "questions/komiteer/utlegg-sent.yaml": { - "question": "Hva skjer med utlegget mitt nå?", - "description": "Utlegget er sendt til kasserer. Du får beskjed når det er sjekket.", - "next_heading": "Pengene kommer på konto", - "next_description": "Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga." - }, - "questions/komiteer/utlegg.yaml": { - "heading": "Få pengene tilbake", - "description": "Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten.", - "button": "Send inn", - "encouragement": "Legg ved bilag om du har det, så går det raskere.", - "icon": "receipt", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Fra krav til utbetaling", - "road_description": "Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor.", - "road_icon": "lucide:wallet", - "who_title": "Kasserer ser dette", - "who_description": "Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster.", - "who_icon": "lucide:coins", - "form_title": "Krav om refusjon", - "form_description": "Ha kvittering eller bilag klart før du fyller ut.", - "labels": { - "navn": "Navn", - "belop": "Beløp", - "hva": "Hva gjaldt det" - }, - "hints": { - "navn": "Kari Nordmann", - "belop": "450 kr", - "hva": "Kaffe og kjeks til dugnaden" - }, - "question": "Har du lagt ut penger for komiteen og vil ha dem tilbake?", - "page_description": "Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake." - }, - "questions/lekeplasser/index.yaml": { - "question": "Hva må fikses på lekeplassene og stien nå?", - "description": "Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset.", - "confirm": "Lagre", - "buckets": { - "anleggsfeil": { - "heading": "Det som er meldt inn av skader", - "description": "Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses.", - "moves": { - "open->tatt_tak_i": "Ta tak i saken", - "tatt_tak_i->utbedret": "Merk som utbedret" - }, - "list_title": "Anleggsfeil", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - } - }, - "links": {}, - "invites": { - "lekeplasser": { - "heading": "Inviter noen inn i Leke- og møteplasser", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt." - } - }, - "questions/medlem/index.yaml": { - "question": "Vil du bli medlem, eller endre medlemskapet ditt?", - "description": "Bli medlem av Tomter Vel, eller oppdater opplysningene dine hvis du allerede er medlem.", - "needs": { - "bli-medlem": { - "heading": "Bli medlem av Tomter Vel", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.", - "button": "Bli medlem", - "encouragement": "Kasserer sender deg kontingenten på e-post rett etterpå.", - "icon": "user-plus", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Etter innmelding", - "road_description": "Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem.", - "road_icon": "lucide:coins", - "who_title": "Hvem svarer deg", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "form_title": "Meld deg inn", - "form_description": "Ha adressen i Tomter og en e-post du bruker klar.", - "labels": { - "navn": "Navn", - "adresse": "Adresse", - "email": "Email", - "telefon": "Telefon" - }, - "hints": { - "navn": "Ola Nordmann", - "adresse": "Tomterveien 12", - "email": "", - "telefon": "123 45 678" - } - }, - "endre-medlemskap": { - "heading": "Oppdater eller avslutt medlemskapet", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.", - "button": "Send endring", - "encouragement": "Det tar bare et par minutter, og kasserer ordner resten.", - "icon": "pencil", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Etter du sender inn", - "road_description": "Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om.", - "road_icon": "lucide:refresh-cw", - "who_title": "Hvem svarer deg", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "form_title": "Endre medlemskap", - "form_description": "Skriv navnet ditt og hva som er nytt.", - "labels": { - "navn": "Navn", - "adresse": "Adresse", - "hva_er_nytt": "Hva vil du endre?" - }, - "hints": { - "navn": "Ola Nordmann", - "adresse": "Ny adresse i Tomter", - "hva_er_nytt": "Ny e-post, ny adresse, eller ønske om utmelding" - } - } - } - }, - "questions/melde-fra/index.yaml": { - "question": "Hva vil du melde fra om?", - "description": "Har du sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien? Her sier du fra til velet.", - "needs": { - "trafikkfare": { - "heading": "Meld fra om en trafikkfare", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.", - "button": "Send inn", - "encouragement": "Bare noen linjer om hva og hvor er nok til at vi kan følge opp.", - "icon": "alert-triangle", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Hva skjer videre", - "road_description": "Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist.", - "road_icon": "lucide:route", - "who_title": "Hvem leser dette", - "who_description": "Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:car", - "form_title": "Meld trafikkfare", - "form_description": "Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer.", - "labels": { - "hvor": "Hvor var det", - "hva": "Hva så du", - "epost": "E-post (valgfritt)" - }, - "hints": { - "hvor": "Krysset Tomterveien / Elvestien", - "hva": "Dårlig sikt i krysset, biler kjører fort", - "epost": "ola.nordmann@epost.no" - } - }, - "anleggsfeil": { - "heading": "Meld fra om noe ødelagt", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.", - "button": "Send inn", - "encouragement": "Det holder med noen ord om hva du så og hvor.", - "icon": "construction", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Hva skjer videre", - "road_description": "Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet.", - "road_icon": "lucide:wrench", - "who_title": "Hvem leser dette", - "who_description": "Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:hammer", - "form_title": "Meld anleggsfeil", - "form_description": "Fortell hva som er ødelagt og omtrent hvor det er.", - "labels": { - "hvor": "Hvor er det", - "hva": "Hva er ødelagt" - }, - "hints": { - "hvor": "", - "hva": "Løs planke på gjerdet ved husken" - } - } - } - }, - "questions/naboer/index.yaml": { - "question": "Trenger du en hånd, eller kan du gi en?", - "description": "Godt naboskap gjør hverdagen lettere. Trenger du en hånd, kan gi en, eller har noe å låne bort?", - "needs": { - "trenger-hjelp": { - "heading": "Få en nabo til å stille opp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.", - "button": "Be om hjelp", - "encouragement": "Vi finner en nabo som kan stille opp så fort som mulig.", - "icon": "heart-handshake", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Fra melding til hjelp", - "road_description": "Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed.", - "road_icon": "lucide:hand-helping", - "who_title": "Hvem ser dette", - "who_description": "Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "form_title": "Be om en hånd", - "form_description": "Skriv kort hva du trenger hjelp til.", - "labels": { - "navn": "Navn", - "email": "E-post", - "adresse": "Adresse", - "hva": "Hva trenger du hjelp til", - "telefon": "Telefon" - }, - "hints": { - "navn": "Kari Nordmann", - "email": "kari@eksempel.no", - "adresse": "Tomterveien 12", - "hva": "Måke snø på trappa, handle inn litt mat", - "telefon": "123 45 678" - } - }, - "kan-hjelpe": { - "heading": "Bli spurt når en nabo trenger en hånd", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.", - "button": "Meld deg", - "encouragement": "Du blir bare kontaktet når noe passer for deg.", - "icon": "hand-helping", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Fra påmelding til spørsmål", - "road_description": "Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra.", - "road_icon": "lucide:user-check", - "who_title": "Hvem ser dette", - "who_description": "Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no.", - "who_icon": "lucide:heart-handshake", - "form_title": "Meld deg som hjelper", - "form_description": "Fortell kort hva du kan bidra med.", - "labels": { - "navn": "Navn", - "email": "E-post", - "telefon": "Telefon", - "kan": "Hva kan du hjelpe med" - }, - "hints": { - "navn": "Kari Nordmann", - "email": "kari@eksempel.no", - "telefon": "123 45 678", - "kan": "" - } - }, - "dele-utstyr": { - "heading": "Lån ut eller lån av naboen", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.", - "button": "Legg ut oppslag", - "encouragement": "Vi legger det ut så naboene kan se det.", - "icon": "package", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Fra oppslag til avtale", - "road_description": "Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen.", - "road_icon": "lucide:clipboard-list", - "who_title": "Hvem ser dette", - "who_description": "Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "form_title": "Lån eller utlån", - "form_description": "Skriv kort hva det gjelder, så folk skjønner det med en gang.", - "labels": { - "navn": "Navn", - "email": "E-post", - "har_eller_trenger": "Har du eller trenger du", - "hva": "Hva gjelder det" - }, - "hints": { - "navn": "Ola Nordmann", - "email": "ola@eksempel.no", - "har_eller_trenger": "", - "hva": "Hengerfeste til bil, tilhenger, stige" - } - } - } - }, - "questions/nabohjelp/index.yaml": { - "question": "Hvem trenger hjelp, og hvem kan stille opp?", - "description": "Her kobler du naboer som trenger hjelp med dem som kan stille opp.", - "confirm": "Lagre", - "buckets": { - "hjelpebehov": { - "heading": "Naboer som trenger en hånd", - "description": "Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe.", - "moves": { - "formidlet->ordnet": "Meld ordnet", - "formidlet->ikke_lost": "Meld ikke løst", - "open->formidlet": "Koble til nabo", - "open->ikke_lost": "Meld ikke løst" - }, - "list_title": "Hjelpebehov", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - }, - "hjelpere": { - "heading": "Naboer som kan stille opp", - "description": "Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem.", - "moves": { - "open->registrert": "Registrer som hjelper", - "open->trukket": "Meld trukket" - }, - "list_title": "Hjelpere", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - } - }, - "links": {}, - "invites": { - "nabohjelp": { - "heading": "Inviter noen inn i nabohjelpen", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt." - } - }, - "questions/received/anleggsfeil.yaml": { - "question": "Hva skjer med meldingen min nå?", - "description": "Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt.", - "next_heading": "Komiteen tar tak i det", - "next_description": "Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg.", - "see_all": { - "heading": "Se andre meldte feil", - "description": "Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet.", - "button": "Se meldte feil" - } - }, - "questions/received/bli-medlem.yaml": { - "question": "Hva skjer etter at jeg har meldt meg inn?", - "description": "Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert.", - "next_heading": "Kasserer sender deg betalingsinfo", - "next_description": "Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten." - }, - "questions/received/dele-utstyr.yaml": { - "question": "Hva skjer med det jeg har lagt ut?", - "description": "Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan.", - "next_heading": "Styret legger det ut for deg", - "next_description": "En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne.", - "see_all": { - "heading": "Se alt naboene deler", - "description": "Se hva andre i Tomter har lagt ut til utlån akkurat nå.", - "button": "Se hva naboer deler" - } - }, - "questions/received/endre-medlemskap.yaml": { - "question": "Hva skjer nå med det jeg meldte inn?", - "description": "Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut.", - "next_heading": "Kasserer retter opp opplysningene", - "next_description": "Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg." - }, - "questions/received/hjelpe-til.yaml": { - "question": "Hva skjer nå som jeg har meldt meg?", - "description": "Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg.", - "next_heading": "Komiteen tar kontakt", - "next_description": "Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden." - }, - "questions/received/horingsinnspill.yaml": { - "question": "Hva skjer med det jeg har sagt om saken?", - "description": "Innspillet ditt er sendt til høringsinstansen i velet.", - "next_heading": "Innspillet ditt inn i vurderingen", - "next_description": "De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med." - }, - "questions/received/kan-hjelpe.yaml": { - "question": "Hva skjer nå som jeg har registrert meg?", - "description": "Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe.", - "next_heading": "Du blir kontaktet ved behov", - "next_description": "Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte." - }, - "questions/received/komite.yaml": { - "question": "Hva skjer nå som jeg har meldt interesse for en komité?", - "description": "Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg.", - "next_heading": "Vi finner riktig komité til deg", - "next_description": "Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer." - }, - "questions/received/trafikkfare.yaml": { - "question": "Hva skjer med meldingen min nå?", - "description": "Meldingen din om trafikkfaren er sendt til komiteen for trafikk.", - "next_heading": "Trafikkomiteen tar den videre", - "next_description": "Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs.", - "see_all": { - "heading": "Andre meldte trafikkfarer", - "description": "Se hva andre har meldt inn, og status på sakene.", - "button": "Se andre trafikkfarer" - } - }, - "questions/received/trenger-hjelp.yaml": { - "question": "Hva skjer nå som jeg har bedt om hjelp?", - "description": "Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp.", - "next_heading": "Vi finner en nabo til deg", - "next_description": "Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer." - }, - "questions/status/anleggsfeil/index.yaml": { - "question": "Hva skjer med det jeg har meldt fra om?", - "description": "Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet.", - "heading": "Status på meldte anleggsfeil", - "list_description": "Alle meldinger er åpne for alle å se.", - "list_title": "Anleggsfeil", - "list_note": "Hver rad er én sak og hvor langt den har kommet. Navn og kontaktopplysninger vises ikke her.", - "empty": "Ingenting her ennå." - }, - "questions/status/oppslag/index.yaml": { - "question": "Hva er sendt inn, og hvor langt har det kommet?", - "description": "Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet.", - "heading": "Oversikt over det som er meldt inn", - "list_description": "Åpen liste – navn og detaljer vises ikke.", - "list_title": "Oppslag", - "list_note": "Hver rad er én sak og hvor langt den har kommet. Navn og kontaktopplysninger vises ikke her.", - "empty": "Ingenting her ennå." - }, - "questions/status/trafikkmeldinger/index.yaml": { - "question": "Er det meldt fra om noe farlig i trafikken der jeg bor?", - "description": "Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet.", - "heading": "Trafikkmeldinger og status", - "list_description": "Alle meldinger som er sendt inn, og hvor de står nå.", - "list_title": "Trafikkmeldinger", - "list_note": "Hver rad er én sak og hvor langt den har kommet. Navn og kontaktopplysninger vises ikke her.", - "empty": "Ingenting her ennå." - }, - "questions/styret/index.yaml": { - "question": "Hva venter på styret akkurat nå?", - "description": "Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.", - "confirm": "Lagre", - "buckets": { - "innspill": { - "heading": "Høringsinnspill fra beboerne", - "description": "Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar.", - "moves": {}, - "list_title": "Innspill", - "list_note": "Hver rad er én sak og hvor langt den har kommet. En annen pult flytter disse." - }, - "komitesoknader": { - "heading": "Søknader til komiteene", - "description": "Her ligger alle som har meldt seg til en komité og venter på en plass.", - "moves": { - "open->plassert": "Sett i komité", - "open->avslatt": "Avslå søknaden" - }, - "list_title": "Komitesoknader", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - }, - "oppslag": { - "heading": "Utstyr til utlån blant naboer", - "description": "Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut.", - "moves": { - "open->lagt_ut": "Legg ut oppslaget", - "open->tatt_ned": "Ta ned oppslaget" - }, - "list_title": "Oppslag", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - }, - "trafikkmeldinger": { - "heading": "Meldinger om trafikkfarer", - "description": "Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier.", - "moves": {}, - "list_title": "Trafikkmeldinger", - "list_note": "Hver rad er én sak og hvor langt den har kommet. En annen pult flytter disse." - } - }, - "links": {}, - "invites": { - "arrangementer": { - "heading": "Inviter noen inn i Arrangementer", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - }, - "horingsinstans": { - "heading": "Inviter noen inn i Høringsinstans", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - }, - "kasserer": { - "heading": "Inviter noen inn i kassereren", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - }, - "komiteer": { - "heading": "Inviter noen inn i komiteene", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - }, - "lekeplasser": { - "heading": "Inviter noen inn i Leke- og møteplasser", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - }, - "nabohjelp": { - "heading": "Inviter noen inn i nabohjelpen", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - }, - "styret": { - "heading": "Inviter noen inn i styret", - "description": "De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - }, - "trafikk": { - "heading": "Inviter noen inn i Trafikkforhold", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt." - } - }, - "questions/trafikk/index.yaml": { - "question": "Hvilke trafikkfarer må følges opp?", - "description": "Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier.", - "confirm": "Lagre", - "buckets": { - "trafikkmeldinger": { - "heading": "Farlige steder i trafikken", - "description": "Farlige steder i trafikken som naboer har meldt inn.", - "moves": { - "open->tatt_opp": "Ta opp med kommunen", - "open->avvist": "Avvis meldingen", - "tatt_opp->ordnet": "Meld ordnet", - "tatt_opp->avvist": "Avvis meldingen" - }, - "list_title": "Trafikkmeldinger", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - } - }, - "links": {}, - "invites": { - "trafikk": { - "heading": "Inviter noen inn i Trafikkforhold", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt." - } - }, - "site.yaml": { - "invite": { - "subject": "Din konto hos {site_name}", - "body": "Hei {name},\n\n{site_name} har laget en konto til deg og lagt deg til i {group}. Brukernavnet ditt er {username}.\n\nVelg passord her før {expires}:\n{link}\n\nEtterpå logger du inn på {site}." - } - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/README.md b/vendor/trainer/runs/tomtervel-flat-2026-09-23/README.md deleted file mode 100644 index 401a057..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/README.md +++ /dev/null @@ -1,36 +0,0 @@ -# Tomter Vel, flat: the front door opens modestly, 2026-09-23 - -`plans/tomtervel.yaml` without its four doors: the front door opens -with what the vel does, two cards for a household that becomes a -member and a neighbour who needs a hand (each with a move of their -own afterwards: the member leaves through their own link, the helped -say when it is done), then the three public lists, and then all ten -offers on the same page. Words lifted from -`runs/tomtervel-invites-2026-09-23/words.json` by need, the opener in -Norwegian by hand (`opener-no.json`). The builder warns: ten offers -after the opener, past seven a visitor stops reading. - -Visitor qwen3:8b, one task per call, whole card, the plan's 21 -personas (20 public): - -| Front door | With descriptions | Headings only | -|---|---|---| -| Four doors, 2026-09-23 (`tomtervel-cards-2026-09-23`) | 32 of 40 | 29 of 40 | -| Flat, this run | 12 of 20 | 9 of 20 | - -The doored numbers count each persona twice, so compare per persona: -behind doors most personas that got through the door routed right on -the door's page; on the flat page a fifth of them do not even with -descriptions, and half do not on headings alone. The misses are the -close pairs the doors kept apart: join versus change membership, need -a hand versus can give one, a committee versus a dugnad versus a -hearing. Ten offers on one page is what the builder's warning is -about, and this is what it looks like. - -So the modest opener is right and the flat page is right for six -offers (uhhm.no); for ten, the offers need to share: one membership -card with join and change as its two buttons, one neighbour-help card -with need and give. That is a plan change (needs sharing an -alternative), not words. The branch `flat-front-door` on -tomtervel/questions holds this build; merge it after that change, -not before. diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/answers-full.jsonl b/vendor/trainer/runs/tomtervel-flat-2026-09-23/answers-full.jsonl deleted file mode 100644 index 16515e3..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/answers-full.jsonl +++ /dev/null @@ -1,20 +0,0 @@ -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"nyinnflyttet@/"} -{"choice":"Bli medlem av Tomter Vel","confidence":0.95,"id":"glemte-a-betale@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"ny-epost@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"flytter@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"skolevei@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"busslomme@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"huske@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"bru@/"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"blokker@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"togtider@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"vafler@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"motorsag@/"} -{"choice":"Sitt i en komité som betyr noe for deg","confidence":0.95,"id":"pendler@/"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"planlegger@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"tilhenger@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"stige@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"snomaking@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"nyoperert@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"hjemmekontor@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"pensjonert-elektriker@/"} diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/answers-skim.jsonl b/vendor/trainer/runs/tomtervel-flat-2026-09-23/answers-skim.jsonl deleted file mode 100644 index 5b75d1f..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/answers-skim.jsonl +++ /dev/null @@ -1,20 +0,0 @@ -{"choice":"Bli medlem av Tomter Vel","confidence":0.95,"id":"nyinnflyttet@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"glemte-a-betale@/"} -{"choice":"Bli medlem av Tomter Vel","confidence":0.95,"id":"ny-epost@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"flytter@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"skolevei@/"} -{"choice":"Bli medlem av Tomter Vel","confidence":0.95,"id":"busslomme@/"} -{"choice":"Bli medlem av Tomter Vel","confidence":0.95,"id":"huske@/"} -{"choice":"Bli medlem av Tomter Vel","confidence":0.85,"id":"bru@/"} -{"choice":"Få din mening med i høringssvaret","confidence":0.85,"id":"blokker@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.85,"id":"togtider@/"} -{"choice":"Se deg rundt først","confidence":0.85,"id":"vafler@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"motorsag@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.85,"id":"pendler@/"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"planlegger@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"tilhenger@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.85,"id":"stige@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.85,"id":"snomaking@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"nyoperert@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"hjemmekontor@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"pensjonert-elektriker@/"} diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/iris.log b/vendor/trainer/runs/tomtervel-flat-2026-09-23/iris.log deleted file mode 100644 index c9b770f..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/iris.log +++ /dev/null @@ -1,31 +0,0 @@ -OK: 28 question(s), 13 aggregate(s) valid -OK: access policy, 109 rule(s), validates -need "bli-medlem": / [Bli medlem av Tomter Vel] -> "husstander" -need "endre-medlemskap": / [Oppdater eller avslutt medlemskapet] -> "medlemsendringer" -need "trafikkfare": / [Meld fra om en trafikkfare] -> "trafikkmeldinger" -need "anleggsfeil": / [Meld fra om noe ødelagt] -> "anleggsfeil" -need "horingsinnspill": / [Få din mening med i høringssvaret] -> "innspill" -need "hjelpe-til": / [Bli med på dugnad eller arrangement] -> "frivillige" -need "komite": / [Sitt i en komité som betyr noe for deg] -> "komitesoknader" -need "trenger-hjelp": / [Få en nabo til å stille opp] -> "hjelpebehov" -need "kan-hjelpe": / [Bli spurt når en nabo trenger en hånd] -> "hjelpere" -need "dele-utstyr": / [Lån ut eller lån av naboen] -> "oppslag" -need "utlegg": /komiteer/utlegg [Få pengene tilbake] -> "utlegg" -OK: 11 need(s) structurally met, 0 planned, 21 persona(s) -wrote the simulation model to model.json -wrote 20 wording task(s) to tasks-full.jsonl -OK: 28 question(s), 13 aggregate(s) valid -OK: access policy, 109 rule(s), validates -need "bli-medlem": / [Bli medlem av Tomter Vel] -> "husstander" -need "endre-medlemskap": / [Oppdater eller avslutt medlemskapet] -> "medlemsendringer" -need "trafikkfare": / [Meld fra om en trafikkfare] -> "trafikkmeldinger" -need "anleggsfeil": / [Meld fra om noe ødelagt] -> "anleggsfeil" -need "horingsinnspill": / [Få din mening med i høringssvaret] -> "innspill" -need "hjelpe-til": / [Bli med på dugnad eller arrangement] -> "frivillige" -need "komite": / [Sitt i en komité som betyr noe for deg] -> "komitesoknader" -need "trenger-hjelp": / [Få en nabo til å stille opp] -> "hjelpebehov" -need "kan-hjelpe": / [Bli spurt når en nabo trenger en hånd] -> "hjelpere" -need "dele-utstyr": / [Lån ut eller lån av naboen] -> "oppslag" -need "utlegg": /komiteer/utlegg [Få pengene tilbake] -> "utlegg" -OK: 11 need(s) structurally met, 0 planned, 21 persona(s) -wrote 20 wording task(s) to tasks-skim.jsonl diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/model.json b/vendor/trainer/runs/tomtervel-flat-2026-09-23/model.json deleted file mode 100644 index f852b88..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/model.json +++ /dev/null @@ -1,1595 +0,0 @@ -{ - "needs": [ - { - "id": "bli-medlem", - "who": "en husstand i Tomter", - "wants": "å bli medlem og få betalt kontingenten", - "enters_as": null, - "lands_in": "husstander", - "handled_by": "kasserer", - "done_when": [ - "betalt", - "utmeldt" - ], - "success": [ - "betalt" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "options": [ - { - "name": "Dette gjør velet", - "description": "To ting først. Resten står lenger ned på siden." - }, - { - "name": "Se deg rundt først", - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står." - }, - { - "name": "Bli medlem av Tomter Vel", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet." - }, - { - "name": "Oppdater eller avslutt medlemskapet", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger." - }, - { - "name": "Meld fra om en trafikkfare", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre." - }, - { - "name": "Meld fra om noe ødelagt", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - }, - { - "name": "Bli med på dugnad eller arrangement", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer." - }, - { - "name": "Sitt i en komité som betyr noe for deg", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i." - }, - { - "name": "Få en nabo til å stille opp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp." - }, - { - "name": "Bli spurt når en nabo trenger en hånd", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer." - }, - { - "name": "Lån ut eller lån av naboen", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det." - } - ], - "expect": [ - "Bli medlem av Tomter Vel" - ], - "alternative": "Bli medlem av Tomter Vel", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "adresse", - "label": "Adresse", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "telefon", - "label": "Telefon", - "type": "tel", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "endre-medlemskap", - "who": "et medlem som har flyttet, byttet e-post eller vil melde seg ut", - "wants": "at velet har riktige opplysninger om dem", - "enters_as": null, - "lands_in": "medlemsendringer", - "handled_by": "kasserer", - "done_when": [ - "oppdatert" - ], - "success": [ - "oppdatert" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "options": [ - { - "name": "Dette gjør velet", - "description": "To ting først. Resten står lenger ned på siden." - }, - { - "name": "Se deg rundt først", - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står." - }, - { - "name": "Bli medlem av Tomter Vel", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet." - }, - { - "name": "Oppdater eller avslutt medlemskapet", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger." - }, - { - "name": "Meld fra om en trafikkfare", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre." - }, - { - "name": "Meld fra om noe ødelagt", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - }, - { - "name": "Bli med på dugnad eller arrangement", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer." - }, - { - "name": "Sitt i en komité som betyr noe for deg", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i." - }, - { - "name": "Få en nabo til å stille opp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp." - }, - { - "name": "Bli spurt når en nabo trenger en hånd", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer." - }, - { - "name": "Lån ut eller lån av naboen", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det." - } - ], - "expect": [ - "Oppdater eller avslutt medlemskapet" - ], - "alternative": "Oppdater eller avslutt medlemskapet", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "adresse", - "label": "Adresse", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "hva_er_nytt", - "label": "Hva vil du endre?", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "trafikkfare", - "who": "en som har sett et farlig sted i trafikken", - "wants": "at velet tar det opp med kommunen eller den som eier veien", - "enters_as": null, - "lands_in": "trafikkmeldinger", - "handled_by": "trafikk", - "done_when": [ - "ordnet", - "avvist" - ], - "success": [ - "ordnet" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "options": [ - { - "name": "Dette gjør velet", - "description": "To ting først. Resten står lenger ned på siden." - }, - { - "name": "Se deg rundt først", - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står." - }, - { - "name": "Bli medlem av Tomter Vel", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet." - }, - { - "name": "Oppdater eller avslutt medlemskapet", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger." - }, - { - "name": "Meld fra om en trafikkfare", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre." - }, - { - "name": "Meld fra om noe ødelagt", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - }, - { - "name": "Bli med på dugnad eller arrangement", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer." - }, - { - "name": "Sitt i en komité som betyr noe for deg", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i." - }, - { - "name": "Få en nabo til å stille opp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp." - }, - { - "name": "Bli spurt når en nabo trenger en hånd", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer." - }, - { - "name": "Lån ut eller lån av naboen", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det." - } - ], - "expect": [ - "Meld fra om en trafikkfare" - ], - "alternative": "Meld fra om en trafikkfare", - "fields": [ - { - "name": "hvor", - "label": "Hvor var det", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "hva", - "label": "Hva så du", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "epost", - "label": "E-post (valgfritt)", - "type": "email", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "anleggsfeil", - "who": "en som ser at noe på lekeplassen eller stien er ødelagt", - "wants": "at det blir fikset før noen skader seg", - "enters_as": null, - "lands_in": "anleggsfeil", - "handled_by": "lekeplasser", - "done_when": [ - "utbedret" - ], - "success": [ - "utbedret" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "options": [ - { - "name": "Dette gjør velet", - "description": "To ting først. Resten står lenger ned på siden." - }, - { - "name": "Se deg rundt først", - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står." - }, - { - "name": "Bli medlem av Tomter Vel", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet." - }, - { - "name": "Oppdater eller avslutt medlemskapet", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger." - }, - { - "name": "Meld fra om en trafikkfare", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre." - }, - { - "name": "Meld fra om noe ødelagt", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - }, - { - "name": "Bli med på dugnad eller arrangement", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer." - }, - { - "name": "Sitt i en komité som betyr noe for deg", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i." - }, - { - "name": "Få en nabo til å stille opp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp." - }, - { - "name": "Bli spurt når en nabo trenger en hånd", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer." - }, - { - "name": "Lån ut eller lån av naboen", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det." - } - ], - "expect": [ - "Meld fra om noe ødelagt" - ], - "alternative": "Meld fra om noe ødelagt", - "fields": [ - { - "name": "hvor", - "label": "Hvor er det", - "type": "select", - "optional": false, - "options": [ - "Lekeplassen", - "Elvestien", - "Skøytebanen", - "Et annet sted" - ] - }, - { - "name": "hva", - "label": "Hva er ødelagt", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "horingsinnspill", - "who": "en beboer som har en mening om en sak kommunen har på høring", - "wants": "at velet tar det med i sitt svar", - "enters_as": null, - "lands_in": "innspill", - "handled_by": "horingsinstans", - "done_when": [ - "tatt_med", - "ikke_tatt_med" - ], - "success": [ - "tatt_med" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "options": [ - { - "name": "Dette gjør velet", - "description": "To ting først. Resten står lenger ned på siden." - }, - { - "name": "Se deg rundt først", - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står." - }, - { - "name": "Bli medlem av Tomter Vel", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet." - }, - { - "name": "Oppdater eller avslutt medlemskapet", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger." - }, - { - "name": "Meld fra om en trafikkfare", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre." - }, - { - "name": "Meld fra om noe ødelagt", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - }, - { - "name": "Bli med på dugnad eller arrangement", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer." - }, - { - "name": "Sitt i en komité som betyr noe for deg", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i." - }, - { - "name": "Få en nabo til å stille opp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp." - }, - { - "name": "Bli spurt når en nabo trenger en hånd", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer." - }, - { - "name": "Lån ut eller lån av naboen", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det." - } - ], - "expect": [ - "Få din mening med i høringssvaret" - ], - "alternative": "Få din mening med i høringssvaret", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "sak", - "label": "Hvilken sak gjelder det?", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "innspill", - "label": "Hva mener du?", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "hjelpe-til", - "who": "en som vil hjelpe til på et arrangement eller en dugnad", - "wants": "å bli satt opp på noe som passer dem", - "enters_as": null, - "lands_in": "frivillige", - "handled_by": "arrangementer", - "done_when": [ - "satt_opp", - "takket_nei" - ], - "success": [ - "satt_opp" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "options": [ - { - "name": "Dette gjør velet", - "description": "To ting først. Resten står lenger ned på siden." - }, - { - "name": "Se deg rundt først", - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står." - }, - { - "name": "Bli medlem av Tomter Vel", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet." - }, - { - "name": "Oppdater eller avslutt medlemskapet", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger." - }, - { - "name": "Meld fra om en trafikkfare", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre." - }, - { - "name": "Meld fra om noe ødelagt", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - }, - { - "name": "Bli med på dugnad eller arrangement", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer." - }, - { - "name": "Sitt i en komité som betyr noe for deg", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i." - }, - { - "name": "Få en nabo til å stille opp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp." - }, - { - "name": "Bli spurt når en nabo trenger en hånd", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer." - }, - { - "name": "Lån ut eller lån av naboen", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det." - } - ], - "expect": [ - "Bli med på dugnad eller arrangement" - ], - "alternative": "Bli med på dugnad eller arrangement", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "telefon", - "label": "Telefon", - "type": "tel", - "optional": false, - "options": [] - }, - { - "name": "hva", - "label": "Hva kan du hjelpe til med?", - "type": "select", - "optional": false, - "options": [ - "17. mai", - "Juletregranstenning", - "Skøytedag", - "Dugnad på elvestien", - "Det som trengs" - ] - } - ] - } - ] - }, - { - "id": "komite", - "who": "en som vil sitte i en komité", - "wants": "en plass i den komiteen som driver med det de bryr seg om", - "enters_as": null, - "lands_in": "komitesoknader", - "handled_by": "styret", - "done_when": [ - "plassert", - "avslatt" - ], - "success": [ - "plassert" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "options": [ - { - "name": "Dette gjør velet", - "description": "To ting først. Resten står lenger ned på siden." - }, - { - "name": "Se deg rundt først", - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står." - }, - { - "name": "Bli medlem av Tomter Vel", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet." - }, - { - "name": "Oppdater eller avslutt medlemskapet", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger." - }, - { - "name": "Meld fra om en trafikkfare", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre." - }, - { - "name": "Meld fra om noe ødelagt", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - }, - { - "name": "Bli med på dugnad eller arrangement", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer." - }, - { - "name": "Sitt i en komité som betyr noe for deg", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i." - }, - { - "name": "Få en nabo til å stille opp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp." - }, - { - "name": "Bli spurt når en nabo trenger en hånd", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer." - }, - { - "name": "Lån ut eller lån av naboen", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det." - } - ], - "expect": [ - "Sitt i en komité som betyr noe for deg" - ], - "alternative": "Sitt i en komité som betyr noe for deg", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "epost", - "label": "E-post", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "komite", - "label": "Hvilken komité?", - "type": "select", - "optional": false, - "options": [ - "Arrangementer", - "Elvesti", - "Høringsinstans", - "Leke- og møteplasser", - "Miljøgate", - "Pendlerforhold", - "Trafikkforhold" - ] - } - ] - } - ] - }, - { - "id": "trenger-hjelp", - "who": "en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss", - "wants": "at en nabo stiller opp", - "enters_as": null, - "lands_in": "hjelpebehov", - "handled_by": "nabohjelp", - "done_when": [ - "ordnet", - "ikke_lost" - ], - "success": [ - "ordnet" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "options": [ - { - "name": "Dette gjør velet", - "description": "To ting først. Resten står lenger ned på siden." - }, - { - "name": "Se deg rundt først", - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står." - }, - { - "name": "Bli medlem av Tomter Vel", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet." - }, - { - "name": "Oppdater eller avslutt medlemskapet", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger." - }, - { - "name": "Meld fra om en trafikkfare", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre." - }, - { - "name": "Meld fra om noe ødelagt", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - }, - { - "name": "Bli med på dugnad eller arrangement", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer." - }, - { - "name": "Sitt i en komité som betyr noe for deg", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i." - }, - { - "name": "Få en nabo til å stille opp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp." - }, - { - "name": "Bli spurt når en nabo trenger en hånd", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer." - }, - { - "name": "Lån ut eller lån av naboen", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det." - } - ], - "expect": [ - "Få en nabo til å stille opp" - ], - "alternative": "Få en nabo til å stille opp", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "E-post", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "adresse", - "label": "Adresse", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "hva", - "label": "Hva trenger du hjelp til", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "telefon", - "label": "Telefon", - "type": "tel", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "kan-hjelpe", - "who": "en nabo som kan stille opp når noen trenger det", - "wants": "å bli spurt når det passer", - "enters_as": null, - "lands_in": "hjelpere", - "handled_by": "nabohjelp", - "done_when": [ - "registrert", - "trukket" - ], - "success": [ - "registrert" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "options": [ - { - "name": "Dette gjør velet", - "description": "To ting først. Resten står lenger ned på siden." - }, - { - "name": "Se deg rundt først", - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står." - }, - { - "name": "Bli medlem av Tomter Vel", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet." - }, - { - "name": "Oppdater eller avslutt medlemskapet", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger." - }, - { - "name": "Meld fra om en trafikkfare", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre." - }, - { - "name": "Meld fra om noe ødelagt", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - }, - { - "name": "Bli med på dugnad eller arrangement", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer." - }, - { - "name": "Sitt i en komité som betyr noe for deg", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i." - }, - { - "name": "Få en nabo til å stille opp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp." - }, - { - "name": "Bli spurt når en nabo trenger en hånd", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer." - }, - { - "name": "Lån ut eller lån av naboen", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det." - } - ], - "expect": [ - "Bli spurt når en nabo trenger en hånd" - ], - "alternative": "Bli spurt når en nabo trenger en hånd", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "E-post", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "telefon", - "label": "Telefon", - "type": "tel", - "optional": false, - "options": [] - }, - { - "name": "kan", - "label": "Hva kan du hjelpe med", - "type": "select", - "optional": false, - "options": [ - "Snømåking", - "Handling", - "Kjøring", - "Småfiks i huset", - "En prat og litt selskap", - "Det som trengs" - ] - } - ] - } - ] - }, - { - "id": "dele-utstyr", - "who": "en nabo som har noe å låne ut, eller trenger å låne noe", - "wants": "et oppslag som naboene ser", - "enters_as": null, - "lands_in": "oppslag", - "handled_by": "styret", - "done_when": [ - "lagt_ut", - "tatt_ned" - ], - "success": [ - "lagt_ut" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "options": [ - { - "name": "Dette gjør velet", - "description": "To ting først. Resten står lenger ned på siden." - }, - { - "name": "Se deg rundt først", - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står." - }, - { - "name": "Bli medlem av Tomter Vel", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet." - }, - { - "name": "Oppdater eller avslutt medlemskapet", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger." - }, - { - "name": "Meld fra om en trafikkfare", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre." - }, - { - "name": "Meld fra om noe ødelagt", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - }, - { - "name": "Bli med på dugnad eller arrangement", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer." - }, - { - "name": "Sitt i en komité som betyr noe for deg", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i." - }, - { - "name": "Få en nabo til å stille opp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp." - }, - { - "name": "Bli spurt når en nabo trenger en hånd", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer." - }, - { - "name": "Lån ut eller lån av naboen", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det." - } - ], - "expect": [ - "Lån ut eller lån av naboen" - ], - "alternative": "Lån ut eller lån av naboen", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "E-post", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "har_eller_trenger", - "label": "Har du eller trenger du", - "type": "select", - "optional": false, - "options": [ - "Jeg har noe å låne ut", - "Jeg trenger å låne noe" - ] - }, - { - "name": "hva", - "label": "Hva gjelder det", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "utlegg", - "who": "en i en komité som har lagt ut for noe", - "wants": "pengene tilbake", - "enters_as": "komiteer", - "lands_in": "utlegg", - "handled_by": "kasserer", - "done_when": [ - "utbetalt", - "avvist" - ], - "success": [ - "utbetalt" - ], - "steps": [ - { - "page": "/komiteer/utlegg", - "question": "Har du lagt ut penger for komiteen og vil ha dem tilbake?", - "options": [ - { - "name": "Få pengene tilbake", - "description": "Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten." - } - ], - "expect": [ - "Få pengene tilbake" - ], - "alternative": "Få pengene tilbake", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "belop", - "label": "Beløp", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "hva", - "label": "Hva gjaldt det", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - } - ], - "buckets": { - "husstander": { - "initial": "open", - "transitions": { - "open": [ - "betalt", - "utmeldt" - ] - }, - "desks": [ - { - "page": "/kasserer", - "group": "kasserer", - "moves": [ - { - "from": "open", - "to": "betalt", - "label": "Registrer betaling" - }, - { - "from": "open", - "to": "utmeldt", - "label": "Meld ut" - } - ] - } - ], - "self_moves": [ - "utmeldt" - ] - }, - "medlemsendringer": { - "initial": "open", - "transitions": { - "open": [ - "oppdatert" - ] - }, - "desks": [ - { - "page": "/kasserer", - "group": "kasserer", - "moves": [ - { - "from": "open", - "to": "oppdatert", - "label": "Registrer endring" - } - ] - } - ], - "self_moves": [] - }, - "trafikkmeldinger": { - "initial": "open", - "transitions": { - "open": [ - "tatt_opp", - "avvist" - ], - "tatt_opp": [ - "ordnet", - "avvist" - ] - }, - "desks": [ - { - "page": "/status/trafikkmeldinger", - "group": null, - "moves": [] - }, - { - "page": "/styret", - "group": "styret", - "moves": [] - }, - { - "page": "/trafikk", - "group": "trafikk", - "moves": [ - { - "from": "open", - "to": "tatt_opp", - "label": "Ta opp med kommunen" - }, - { - "from": "open", - "to": "avvist", - "label": "Avvis meldingen" - }, - { - "from": "tatt_opp", - "to": "ordnet", - "label": "Meld ordnet" - }, - { - "from": "tatt_opp", - "to": "avvist", - "label": "Avvis meldingen" - } - ] - } - ], - "self_moves": [] - }, - "anleggsfeil": { - "initial": "open", - "transitions": { - "tatt_tak_i": [ - "utbedret" - ], - "open": [ - "tatt_tak_i" - ] - }, - "desks": [ - { - "page": "/lekeplasser", - "group": "lekeplasser", - "moves": [ - { - "from": "open", - "to": "tatt_tak_i", - "label": "Ta tak i saken" - }, - { - "from": "tatt_tak_i", - "to": "utbedret", - "label": "Merk som utbedret" - } - ] - }, - { - "page": "/status/anleggsfeil", - "group": null, - "moves": [] - } - ], - "self_moves": [] - }, - "innspill": { - "initial": "open", - "transitions": { - "open": [ - "tatt_med", - "ikke_tatt_med" - ] - }, - "desks": [ - { - "page": "/horingsinstans", - "group": "horingsinstans", - "moves": [ - { - "from": "open", - "to": "tatt_med", - "label": "Tatt med i svaret" - }, - { - "from": "open", - "to": "ikke_tatt_med", - "label": "Ikke tatt med" - } - ] - }, - { - "page": "/styret", - "group": "styret", - "moves": [] - } - ], - "self_moves": [] - }, - "frivillige": { - "initial": "open", - "transitions": { - "kontaktet": [ - "satt_opp", - "takket_nei" - ], - "open": [ - "kontaktet", - "takket_nei" - ] - }, - "desks": [ - { - "page": "/arrangementer", - "group": "arrangementer", - "moves": [ - { - "from": "kontaktet", - "to": "satt_opp", - "label": "Sett opp" - }, - { - "from": "kontaktet", - "to": "takket_nei", - "label": "Takket nei" - }, - { - "from": "open", - "to": "kontaktet", - "label": "Merk som kontaktet" - }, - { - "from": "open", - "to": "takket_nei", - "label": "Takket nei" - } - ] - } - ], - "self_moves": [] - }, - "komitesoknader": { - "initial": "open", - "transitions": { - "open": [ - "plassert", - "avslatt" - ] - }, - "desks": [ - { - "page": "/styret", - "group": "styret", - "moves": [ - { - "from": "open", - "to": "plassert", - "label": "Sett i komité" - }, - { - "from": "open", - "to": "avslatt", - "label": "Avslå søknaden" - } - ] - } - ], - "self_moves": [] - }, - "hjelpebehov": { - "initial": "open", - "transitions": { - "open": [ - "formidlet", - "ikke_lost" - ], - "formidlet": [ - "ordnet", - "ikke_lost" - ] - }, - "desks": [ - { - "page": "/nabohjelp", - "group": "nabohjelp", - "moves": [ - { - "from": "formidlet", - "to": "ordnet", - "label": "Meld ordnet" - }, - { - "from": "formidlet", - "to": "ikke_lost", - "label": "Meld ikke løst" - }, - { - "from": "open", - "to": "formidlet", - "label": "Koble til nabo" - }, - { - "from": "open", - "to": "ikke_lost", - "label": "Meld ikke løst" - } - ] - } - ], - "self_moves": [ - "ordnet" - ] - }, - "hjelpere": { - "initial": "open", - "transitions": { - "open": [ - "registrert", - "trukket" - ] - }, - "desks": [ - { - "page": "/nabohjelp", - "group": "nabohjelp", - "moves": [ - { - "from": "open", - "to": "registrert", - "label": "Registrer som hjelper" - }, - { - "from": "open", - "to": "trukket", - "label": "Meld trukket" - } - ] - } - ], - "self_moves": [ - "trukket" - ] - }, - "oppslag": { - "initial": "open", - "transitions": { - "open": [ - "lagt_ut", - "tatt_ned" - ] - }, - "desks": [ - { - "page": "/status/oppslag", - "group": null, - "moves": [] - }, - { - "page": "/styret", - "group": "styret", - "moves": [ - { - "from": "open", - "to": "lagt_ut", - "label": "Legg ut oppslaget" - }, - { - "from": "open", - "to": "tatt_ned", - "label": "Ta ned oppslaget" - } - ] - } - ], - "self_moves": [ - "tatt_ned" - ] - }, - "utlegg": { - "initial": "open", - "transitions": { - "open": [ - "godkjent", - "avvist" - ], - "godkjent": [ - "utbetalt", - "avvist" - ] - }, - "desks": [ - { - "page": "/kasserer", - "group": "kasserer", - "moves": [ - { - "from": "godkjent", - "to": "utbetalt", - "label": "Merk som utbetalt" - }, - { - "from": "godkjent", - "to": "avvist", - "label": "Avvis likevel" - }, - { - "from": "open", - "to": "godkjent", - "label": "Godkjenn utlegg" - }, - { - "from": "open", - "to": "avvist", - "label": "Avvis utlegg" - } - ] - } - ], - "self_moves": [] - } - }, - "personas": [ - { - "id": "nyinnflyttet", - "need": "bli-medlem", - "text": "Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?" - }, - { - "id": "glemte-a-betale", - "need": "bli-medlem", - "text": "Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?" - }, - { - "id": "ny-epost", - "need": "endre-medlemskap", - "text": "Vi har byttet e-postadresse og får ikke lenger noe fra dere." - }, - { - "id": "flytter", - "need": "endre-medlemskap", - "text": "Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista." - }, - { - "id": "skolevei", - "need": "trafikkfare", - "text": "Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går." - }, - { - "id": "busslomme", - "need": "trafikkfare", - "text": "Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy." - }, - { - "id": "huske", - "need": "anleggsfeil", - "text": "Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt." - }, - { - "id": "bru", - "need": "anleggsfeil", - "text": "Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom." - }, - { - "id": "blokker", - "need": "horingsinnspill", - "text": "Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?" - }, - { - "id": "togtider", - "need": "horingsinnspill", - "text": "Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det." - }, - { - "id": "vafler", - "need": "hjelpe-til", - "text": "Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk." - }, - { - "id": "motorsag", - "need": "hjelpe-til", - "text": "Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad." - }, - { - "id": "pendler", - "need": "komite", - "text": "Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det." - }, - { - "id": "planlegger", - "need": "komite", - "text": "Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring." - }, - { - "id": "tilhenger", - "need": "dele-utstyr", - "text": "Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp." - }, - { - "id": "stige", - "need": "dele-utstyr", - "text": "Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?" - }, - { - "id": "snomaking", - "need": "trenger-hjelp", - "text": "Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?" - }, - { - "id": "nyoperert", - "need": "trenger-hjelp", - "text": "Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?" - }, - { - "id": "hjemmekontor", - "need": "kan-hjelpe", - "text": "Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv." - }, - { - "id": "pensjonert-elektriker", - "need": "kan-hjelpe", - "text": "Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting." - }, - { - "id": "kvittering", - "need": "utlegg", - "text": "Jeg kjøpte pølser og kakao til skøytedagen for 1 840 kroner, her er kvitteringa, vil ha det igjen." - } - ] -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/opener-no.json b/vendor/trainer/runs/tomtervel-flat-2026-09-23/opener-no.json deleted file mode 100644 index 71e0017..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/opener-no.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "questions/index.yaml": { - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "description": "Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står.", - "opener": { - "heading": "Dette gjør velet", - "description": "To ting først. Resten står lenger ned på siden.", - "features": { - "medlem": { "heading": "Et vel som taler for Tomter, og et medlemskap du styrer selv", "description": "Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil.", "icon": "users" }, - "nabo": { "heading": "En nabo som stiller opp når du trenger det", "description": "Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.", "icon": "handshake" } - } - }, - "shopping": { - "heading": "Se deg rundt først", - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.", - "items": { - "status-trafikkmeldinger": { "heading": "Alle trafikkmeldinger", "description": "Farlige steder naboene har meldt, og hva velet har gjort med dem.", "icon": "list" }, - "status-anleggsfeil": { "heading": "Alt som er meldt ødelagt", "description": "Lekeplassen og stien: det som er meldt, og det som er fikset.", "icon": "list" }, - "status-oppslag": { "heading": "Oppslagstavla", "description": "Det naboene har å låne ut, og det de trenger å låne.", "icon": "list" } - } - } - } -} diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/opener-only.json b/vendor/trainer/runs/tomtervel-flat-2026-09-23/opener-only.json deleted file mode 100644 index 9a5a2a5..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/opener-only.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "questions/index.yaml": { - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "description": "Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står.", - "opener": { - "heading": "Dette gjør velet", - "description": "To ting først. Resten står lenger ned på siden.", - "features": { - "medlem": { - "heading": "Et vel som taler for Tomter, og et medlemskap du styrer selv", - "description": "Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil.", - "icon": "users" - }, - "nabo": { - "heading": "En nabo som stiller opp når du trenger det", - "description": "Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.", - "icon": "handshake" - } - } - }, - "shopping": { - "heading": "Se deg rundt først", - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.", - "items": { - "status-trafikkmeldinger": { - "heading": "Alle trafikkmeldinger", - "description": "Farlige steder naboene har meldt, og hva velet har gjort med dem.", - "icon": "list" - }, - "status-anleggsfeil": { - "heading": "Alt som er meldt ødelagt", - "description": "Lekeplassen og stien: det som er meldt, og det som er fikset.", - "icon": "list" - }, - "status-oppslag": { - "heading": "Oppslagstavla", - "description": "Det naboene har å låne ut, og det de trenger å låne.", - "icon": "list" - } - } - } - } -} diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/score.log b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/score.log deleted file mode 100644 index 2ccae3d..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/score.log +++ /dev/null @@ -1,39 +0,0 @@ -== answer full -== answer skim -== score full -MISROUTE: nyinnflyttet@/: picked "Oppdater eller avslutt medlemskapet" (0.95), the need is met by ["Bli medlem av Tomter Vel"] -MISROUTE: busslomme@/: picked "Lån ut eller lån av naboen" (0.95), the need is met by ["Meld fra om en trafikkfare"] -MISROUTE: bru@/: picked "Få en nabo til å stille opp" (0.95), the need is met by ["Meld fra om noe ødelagt"] -MISROUTE: togtider@/: picked "Meld fra om en trafikkfare" (0.95), the need is met by ["Få din mening med i høringssvaret"] -MISROUTE: vafler@/: picked "Få en nabo til å stille opp" (0.95), the need is met by ["Bli med på dugnad eller arrangement"] -MISROUTE: planlegger@/: picked "Få din mening med i høringssvaret" (0.95), the need is met by ["Sitt i en komité som betyr noe for deg"] -MISROUTE: stige@/: picked "Meld fra om noe ødelagt" (0.95), the need is met by ["Lån ut eller lån av naboen"] -MISROUTE: hjemmekontor@/: picked "Få en nabo til å stille opp" (0.95), the need is met by ["Bli spurt når en nabo trenger en hånd"] -wording: 12/20 routed right (60%) -== score skim -MISROUTE: glemte-a-betale@/: picked "Oppdater eller avslutt medlemskapet" (0.95), the need is met by ["Bli medlem av Tomter Vel"] -MISROUTE: ny-epost@/: picked "Bli medlem av Tomter Vel" (0.95), the need is met by ["Oppdater eller avslutt medlemskapet"] -MISROUTE: busslomme@/: picked "Bli medlem av Tomter Vel" (0.95), the need is met by ["Meld fra om en trafikkfare"] -MISROUTE: huske@/: picked "Bli medlem av Tomter Vel" (0.95), the need is met by ["Meld fra om noe ødelagt"] -MISROUTE: bru@/: picked "Bli medlem av Tomter Vel" (0.85), the need is met by ["Meld fra om noe ødelagt"] -MISROUTE: togtider@/: picked "Meld fra om en trafikkfare" (0.85), the need is met by ["Få din mening med i høringssvaret"] -MISROUTE: vafler@/: picked "Se deg rundt først" (0.85), the need is met by ["Bli med på dugnad eller arrangement"] -MISROUTE: pendler@/: picked "Bli med på dugnad eller arrangement" (0.85), the need is met by ["Sitt i en komité som betyr noe for deg"] -MISROUTE: planlegger@/: picked "Få din mening med i høringssvaret" (0.95), the need is met by ["Sitt i en komité som betyr noe for deg"] -MISROUTE: snomaking@/: picked "Bli spurt når en nabo trenger en hånd" (0.85), the need is met by ["Få en nabo til å stille opp"] -MISROUTE: nyoperert@/: picked "Bli spurt når en nabo trenger en hånd" (0.95), the need is met by ["Få en nabo til å stille opp"] -wording: 9/20 routed right (45%) -== rate -need LIX which where asked next gutted twin says page load -bli-medlem 27 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 12 options, 3 required - SPLIT -endre-medlemskap 26 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 12 options, 3 required - SPLIT -trafikkfare 26 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 12 options, 2 required - SPLIT -anleggsfeil 24 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 12 options, 2 required - SPLIT -horingsinnspill 25 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 12 options, 3 required - SPLIT -hjelpe-til 25 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 12 options, 3 required - SPLIT -komite 24 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 12 options, 3 required - SPLIT -trenger-hjelp 24 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 12 options, 4 required - SPLIT -kan-hjelpe 25 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 12 options, 4 required - SPLIT -dele-utstyr 24 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 12 options, 4 required - SPLIT -utlegg 36 easy 1/1 1/1 1/1 1/1 0/0/0/0 ok 1 options, 3 required -== done diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/aggregates.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/aggregates.yaml deleted file mode 100644 index 73a8eaa..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/aggregates.yaml +++ /dev/null @@ -1,162 +0,0 @@ -aggregates: -- bucket: anleggsfeil - initial: open - states: - open: - event: received - tatt_tak_i: - event: tatt_tak_i - utbedret: - event: utbedret - transitions: - open: - - tatt_tak_i - tatt_tak_i: - - utbedret -- bucket: frivillige - initial: open - states: - kontaktet: - event: kontaktet - open: - event: received - satt_opp: - event: satt_opp - takket_nei: - event: takket_nei - transitions: - kontaktet: - - satt_opp - - takket_nei - open: - - kontaktet - - takket_nei -- bucket: hjelpebehov - initial: open - states: - formidlet: - event: formidlet - ikke_lost: - event: ikke_lost - open: - event: received - ordnet: - event: ordnet - transitions: - formidlet: - - ordnet - - ikke_lost - open: - - formidlet - - ikke_lost -- bucket: hjelpere - initial: open - states: - open: - event: received - registrert: - event: registrert - trukket: - event: trukket - transitions: - open: - - registrert - - trukket -- bucket: husstander - initial: open - states: - betalt: - event: betalt - open: - event: received - utmeldt: - event: utmeldt - transitions: - open: - - betalt - - utmeldt -- bucket: innspill - initial: open - states: - ikke_tatt_med: - event: ikke_tatt_med - open: - event: received - tatt_med: - event: tatt_med - transitions: - open: - - tatt_med - - ikke_tatt_med -- bucket: komitesoknader - initial: open - states: - avslatt: - event: avslatt - open: - event: received - plassert: - event: plassert - transitions: - open: - - plassert - - avslatt -- bucket: medlemsendringer - initial: open - states: - open: - event: received - oppdatert: - event: oppdatert - transitions: - open: - - oppdatert -- bucket: oppslag - initial: open - states: - lagt_ut: - event: lagt_ut - open: - event: received - tatt_ned: - event: tatt_ned - transitions: - open: - - lagt_ut - - tatt_ned -- bucket: trafikkmeldinger - initial: open - states: - avvist: - event: avvist - open: - event: received - ordnet: - event: ordnet - tatt_opp: - event: tatt_opp - transitions: - open: - - tatt_opp - - avvist - tatt_opp: - - ordnet - - avvist -- bucket: utlegg - initial: open - states: - avvist: - event: avvist - godkjent: - event: godkjent - open: - event: received - utbetalt: - event: utbetalt - transitions: - godkjent: - - utbetalt - - avvist - open: - - godkjent - - avvist diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/needs.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/needs.yaml deleted file mode 100644 index c618efc..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/needs.yaml +++ /dev/null @@ -1,265 +0,0 @@ -needs: -- done_when: - - betalt - - utmeldt - enters: / - handled_by: kasserer - id: bli-medlem - lands_in: husstander - max_fields: 3 - max_steps: 1 - stages: - - open - - betalt - - utmeldt - success: - - betalt - via: Bli medlem av Tomter Vel - wants: å bli medlem og få betalt kontingenten - who: en husstand i Tomter -- done_when: - - oppdatert - enters: / - handled_by: kasserer - id: endre-medlemskap - lands_in: medlemsendringer - max_fields: 3 - max_steps: 1 - stages: - - open - - oppdatert - success: - - oppdatert - via: Oppdater eller avslutt medlemskapet - wants: at velet har riktige opplysninger om dem - who: et medlem som har flyttet, byttet e-post eller vil melde seg ut -- done_when: - - ordnet - - avvist - enters: / - handled_by: trafikk - id: trafikkfare - lands_in: trafikkmeldinger - max_fields: 2 - max_steps: 1 - stages: - - open - - tatt_opp - - ordnet - - avvist - success: - - ordnet - via: Meld fra om en trafikkfare - wants: at velet tar det opp med kommunen eller den som eier veien - who: en som har sett et farlig sted i trafikken -- done_when: - - utbedret - enters: / - handled_by: lekeplasser - id: anleggsfeil - lands_in: anleggsfeil - max_fields: 2 - max_steps: 1 - stages: - - open - - tatt_tak_i - - utbedret - success: - - utbedret - via: Meld fra om noe ødelagt - wants: at det blir fikset før noen skader seg - who: en som ser at noe på lekeplassen eller stien er ødelagt -- done_when: - - tatt_med - - ikke_tatt_med - enters: / - handled_by: horingsinstans - id: horingsinnspill - lands_in: innspill - max_fields: 3 - max_steps: 1 - stages: - - open - - tatt_med - - ikke_tatt_med - success: - - tatt_med - via: Få din mening med i høringssvaret - wants: at velet tar det med i sitt svar - who: en beboer som har en mening om en sak kommunen har på høring -- done_when: - - satt_opp - - takket_nei - enters: / - handled_by: arrangementer - id: hjelpe-til - lands_in: frivillige - max_fields: 3 - max_steps: 1 - stages: - - open - - kontaktet - - satt_opp - - takket_nei - success: - - satt_opp - via: Bli med på dugnad eller arrangement - wants: å bli satt opp på noe som passer dem - who: en som vil hjelpe til på et arrangement eller en dugnad -- done_when: - - plassert - - avslatt - enters: / - handled_by: styret - id: komite - lands_in: komitesoknader - max_fields: 3 - max_steps: 1 - stages: - - open - - plassert - - avslatt - success: - - plassert - via: Sitt i en komité som betyr noe for deg - wants: en plass i den komiteen som driver med det de bryr seg om - who: en som vil sitte i en komité -- done_when: - - ordnet - - ikke_lost - enters: / - handled_by: nabohjelp - id: trenger-hjelp - lands_in: hjelpebehov - max_fields: 4 - max_steps: 1 - stages: - - open - - formidlet - - ordnet - - ikke_lost - success: - - ordnet - via: Få en nabo til å stille opp - wants: at en nabo stiller opp - who: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss -- done_when: - - registrert - - trukket - enters: / - handled_by: nabohjelp - id: kan-hjelpe - lands_in: hjelpere - max_fields: 4 - max_steps: 1 - stages: - - open - - registrert - - trukket - success: - - registrert - via: Bli spurt når en nabo trenger en hånd - wants: å bli spurt når det passer - who: en nabo som kan stille opp når noen trenger det -- done_when: - - lagt_ut - - tatt_ned - enters: / - handled_by: styret - id: dele-utstyr - lands_in: oppslag - max_fields: 4 - max_steps: 1 - stages: - - open - - lagt_ut - - tatt_ned - success: - - lagt_ut - via: Lån ut eller lån av naboen - wants: et oppslag som naboene ser - who: en nabo som har noe å låne ut, eller trenger å låne noe -- done_when: - - utbetalt - - avvist - enters: /komiteer/utlegg - enters_as: komiteer - handled_by: kasserer - id: utlegg - lands_in: utlegg - max_fields: 3 - max_steps: 1 - stages: - - open - - godkjent - - utbetalt - - avvist - success: - - utbetalt - via: Få pengene tilbake - wants: pengene tilbake - who: en i en komité som har lagt ut for noe -personas: -- id: nyinnflyttet - need: bli-medlem - text: Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det? -- id: glemte-a-betale - need: bli-medlem - text: Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem? -- id: ny-epost - need: endre-medlemskap - text: Vi har byttet e-postadresse og får ikke lenger noe fra dere. -- id: flytter - need: endre-medlemskap - text: Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista. -- id: skolevei - need: trafikkfare - text: Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går. -- id: busslomme - need: trafikkfare - text: Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy. -- id: huske - need: anleggsfeil - text: Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt. -- id: bru - need: anleggsfeil - text: Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom. -- id: blokker - need: horingsinnspill - text: Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra? -- id: togtider - need: horingsinnspill - text: Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det. -- id: vafler - need: hjelpe-til - text: Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk. -- id: motorsag - need: hjelpe-til - text: Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad. -- id: pendler - need: komite - text: Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det. -- id: planlegger - need: komite - text: Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring. -- id: tilhenger - need: dele-utstyr - text: Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp. -- id: stige - need: dele-utstyr - text: Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har? -- id: snomaking - need: trenger-hjelp - text: Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør? -- id: nyoperert - need: trenger-hjelp - text: Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg? -- id: hjemmekontor - need: kan-hjelpe - text: Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv. -- id: pensjonert-elektriker - need: kan-hjelpe - text: Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting. -- id: kvittering - need: utlegg - text: Jeg kjøpte pølser og kakao til skøytedagen for 1 840 kroner, her er kvitteringa, vil ha det igjen. diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/arrangementer/_section.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/arrangementer/_section.yaml deleted file mode 100644 index 94afa0f..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/arrangementer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: arrangementer diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/arrangementer/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/arrangementer/index.yaml deleted file mode 100644 index 13a990e..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/arrangementer/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -alternatives: -- action: /arrangementer - consequence: - - Lagre - description: Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem. - features: - - description: '' - name: '' - resource: - requires_group: arrangementer - source: - bucket: frivillige - kind: kv - transitions: - - from: kontaktet - label: Sett opp - to: satt_opp - - from: kontaktet - label: Takket nei - to: takket_nei - - from: open - label: Merk som kontaktet - to: kontaktet - - from: open - label: Takket nei - to: takket_nei - name: Frivillige til arrangementer og dugnad -- action: /arrangementer - consequence: - - Inviter - description: De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: arrangementer - name: Inviter noen inn i Arrangementer -- action: /arrangementer - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: arrangementer - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer. -name: Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/decide/bli-medlem.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/decide/bli-medlem.yaml deleted file mode 100644 index d7dad96..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/decide/bli-medlem.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: '' - name: Utmeldt - self_transition: - bucket: husstander - label: Utmeldt - to: utmeldt -description: '' -name: What would you like to do? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/decide/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/decide/dele-utstyr.yaml deleted file mode 100644 index dfece00..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/decide/dele-utstyr.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Oppslaget fjernes fra siden, så ingen flere spør om å låne det. - name: Meld at utstyret er tatt ned - self_transition: - bucket: oppslag - label: Ta ned oppslaget - to: tatt_ned -description: Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån. -name: Skal oppslaget om utstyret fortsatt stå ute? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/decide/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/decide/kan-hjelpe.yaml deleted file mode 100644 index 2598b32..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/decide/kan-hjelpe.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre. - name: Ta en pause fra nabohjelpen - self_transition: - bucket: hjelpere - label: Trekk meg - to: trukket -description: Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå. -name: Vil du fortsatt kunne bli spurt om å hjelpe en nabo? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/decide/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/decide/trenger-hjelp.yaml deleted file mode 100644 index 7aad76e..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/decide/trenger-hjelp.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Da vet vi at naboen har fått hjelpen sin, og saken lukkes. - name: Meld fra at hjelpen er gitt - self_transition: - bucket: hjelpebehov - label: Merk som ordnet - to: ordnet -description: Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet. -name: Har naboen fått hjelpen de trengte? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/horingsinstans/_section.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/horingsinstans/_section.yaml deleted file mode 100644 index ad97e31..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/horingsinstans/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: horingsinstans diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/horingsinstans/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/horingsinstans/index.yaml deleted file mode 100644 index b5c4abb..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/horingsinstans/index.yaml +++ /dev/null @@ -1,59 +0,0 @@ -alternatives: -- action: /horingsinstans - consequence: - - Send svar - description: Her ligger innspill fra beboere til saker kommunen har på høring. - features: - - description: '' - name: '' - resource: - requires_group: horingsinstans - source: - bucket: innspill - kind: kv - transitions: - - from: open - label: Tatt med i svaret - to: tatt_med - - from: open - label: Ikke tatt med - to: ikke_tatt_med - name: Innspill til høringssvar -- action: /horingsinstans - consequence: - - Inviter - description: De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: horingsinstans - name: Inviter noen inn i Høringsinstans -- action: /horingsinstans - consequence: - - Send svar - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: horingsinstans - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her samler du innspillene og ser hva som er tatt med i velets høringssvar. -name: Hva sier vi i høringssvaret? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/index.yaml deleted file mode 100644 index 45176ff..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/index.yaml +++ /dev/null @@ -1,382 +0,0 @@ -alternatives: -- description: To ting først. Resten står lenger ned på siden. - features: - - description: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. - icon: lucide:users - name: Et vel som taler for Tomter, og et medlemskap du styrer selv - - description: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet. - icon: lucide:handshake - name: En nabo som stiller opp når du trenger det - name: Dette gjør velet -- description: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. - features: - - description: 'Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil)' - icon: lucide:list - name: Alt som er meldt ødelagt - - description: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) - icon: lucide:list - name: Oppslagstavla - - description: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger) - icon: lucide:list - name: Alle trafikkmeldinger - name: Se deg rundt først -- action: /received/bli-medlem - consequence: - - Bli medlem - description: Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet. - encouragements: - - Kasserer sender deg kontingenten på e-post rett etterpå. - features: - - description: Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem. - icon: lucide:coins - name: Etter innmelding - - description: Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden. - icon: lucide:user - name: Hvem svarer deg - - description: Ha adressen i Tomter og en e-post du bruker klar. - icon: lucide:user-plus - name: Meld deg inn - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: Adresse - name: adresse - placeholder: Tomterveien 12 - type: text - - label: Email - name: email - type: email - - label: Telefon - name: telefon - optional: true - placeholder: 123 45 678 - type: tel - name: Bli medlem av Tomter Vel - record_as: husstander -- action: /received/endre-medlemskap - consequence: - - Send endring - description: Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger. - encouragements: - - Det tar bare et par minutter, og kasserer ordner resten. - features: - - description: Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om. - icon: lucide:refresh-cw - name: Etter du sender inn - - description: Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden. - icon: lucide:user - name: Hvem svarer deg - - description: Skriv navnet ditt og hva som er nytt. - icon: lucide:pencil - name: Endre medlemskap - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: Adresse - name: adresse - placeholder: Ny adresse i Tomter - type: text - - label: Hva vil du endre? - name: hva_er_nytt - placeholder: Ny e-post, ny adresse, eller ønske om utmelding - type: textarea - name: Oppdater eller avslutt medlemskapet - record_as: medlemsendringer -- action: /received/trafikkfare - consequence: - - Send inn - description: Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre. - encouragements: - - Bare noen linjer om hva og hvor er nok til at vi kan følge opp. - features: - - description: Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist. - icon: lucide:route - name: Hva skjer videre - - description: Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no. - icon: lucide:car - name: Hvem leser dette - - description: Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer. - icon: lucide:alert-triangle - name: Meld trafikkfare - requirements: - - label: Hvor var det - name: hvor - placeholder: Krysset Tomterveien / Elvestien - type: text - - label: Hva så du - name: hva - placeholder: Dårlig sikt i krysset, biler kjører fort - type: textarea - - label: E-post (valgfritt) - name: epost - optional: true - placeholder: ola.nordmann@epost.no - type: email - name: Meld fra om en trafikkfare - record_as: trafikkmeldinger -- action: /received/anleggsfeil - consequence: - - Send inn - description: Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det. - encouragements: - - Det holder med noen ord om hva du så og hvor. - features: - - description: Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet. - icon: lucide:wrench - name: Hva skjer videre - - description: Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no. - icon: lucide:hammer - name: Hvem leser dette - - description: Fortell hva som er ødelagt og omtrent hvor det er. - icon: lucide:construction - name: Meld anleggsfeil - requirements: - - label: Hvor er det - name: hvor - options: - - Lekeplassen - - Elvestien - - Skøytebanen - - Et annet sted - type: select - - label: Hva er ødelagt - name: hva - placeholder: Løs planke på gjerdet ved husken - type: textarea - name: Meld fra om noe ødelagt - record_as: anleggsfeil -- action: /received/horingsinnspill - consequence: - - Send innspill - description: Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar. - encouragements: - - Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen. - features: - - description: Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen. - icon: lucide:route - name: Hva skjer videre - - description: Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no. - icon: lucide:users - name: Hvem leser dette - - description: Fortell hvilken sak det gjelder og hva du mener. - icon: lucide:megaphone - name: Send et høringsinnspill - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: Hvilken sak gjelder det? - name: sak - placeholder: Reguleringsplan for Tomterveien - type: text - - label: Hva mener du? - name: innspill - placeholder: Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen. - type: textarea - name: Få din mening med i høringssvaret - record_as: innspill -- action: /received/hjelpe-til - consequence: - - Meld meg på - description: 17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer. - encouragements: - - Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg. - features: - - description: Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit. - icon: lucide:clipboard-list - name: Hva skjer videre - - description: Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem leser dette - - description: Fortell kort hva du kan hjelpe til med. - icon: lucide:hand-helping - name: Meld deg som hjelper - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: Telefon - name: telefon - placeholder: 912 34 567 - type: tel - - label: Hva kan du hjelpe til med? - multiple: true - name: hva - options: - - 17. mai - - Juletregranstenning - - Skøytedag - - Dugnad på elvestien - - Det som trengs - type: select - name: Bli med på dugnad eller arrangement - record_as: frivillige -- action: /received/komite - consequence: - - Meld interesse - description: Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i. - encouragements: - - Det tar bare et minutt, og noen fra styret svarer deg. - features: - - description: Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå. - icon: lucide:clipboard-list - name: Hva skjer videre - - description: Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:handshake - name: Hvem leser dette - - description: Skriv hvilken komité du er interessert i. - icon: lucide:users - name: Meld deg til en komité - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: epost - placeholder: kari@eksempel.no - type: email - - label: Hvilken komité? - multiple: true - name: komite - options: - - Arrangementer - - Elvesti - - Høringsinstans - - Leke- og møteplasser - - Miljøgate - - Pendlerforhold - - Trafikkforhold - type: select - name: Sitt i en komité som betyr noe for deg - record_as: komitesoknader -- action: /received/trenger-hjelp - consequence: - - Be om hjelp - description: Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp. - encouragements: - - Vi finner en nabo som kan stille opp så fort som mulig. - features: - - description: Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed. - icon: lucide:hand-helping - name: Fra melding til hjelp - - description: Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem ser dette - - description: Skriv kort hva du trenger hjelp til. - icon: lucide:heart-handshake - name: Be om en hånd - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: email - placeholder: kari@eksempel.no - type: email - - label: Adresse - name: adresse - placeholder: Tomterveien 12 - type: text - - label: Hva trenger du hjelp til - name: hva - placeholder: Måke snø på trappa, handle inn litt mat - type: textarea - - label: Telefon - name: telefon - optional: true - placeholder: 123 45 678 - type: tel - name: Få en nabo til å stille opp - record_as: hjelpebehov -- action: /received/kan-hjelpe - consequence: - - Meld deg - description: Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer. - encouragements: - - Du blir bare kontaktet når noe passer for deg. - features: - - description: Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra. - icon: lucide:user-check - name: Fra påmelding til spørsmål - - description: Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no. - icon: lucide:heart-handshake - name: Hvem ser dette - - description: Fortell kort hva du kan bidra med. - icon: lucide:hand-helping - name: Meld deg som hjelper - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: email - placeholder: kari@eksempel.no - type: email - - label: Telefon - name: telefon - placeholder: 123 45 678 - type: tel - - label: Hva kan du hjelpe med - multiple: true - name: kan - options: - - Snømåking - - Handling - - Kjøring - - Småfiks i huset - - En prat og litt selskap - - Det som trengs - type: select - name: Bli spurt når en nabo trenger en hånd - record_as: hjelpere -- action: /received/dele-utstyr - consequence: - - Legg ut oppslag - description: Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det. - encouragements: - - Vi legger det ut så naboene kan se det. - features: - - description: Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen. - icon: lucide:clipboard-list - name: Fra oppslag til avtale - - description: Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem ser dette - - description: Skriv kort hva det gjelder, så folk skjønner det med en gang. - icon: lucide:package - name: Lån eller utlån - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: E-post - name: email - placeholder: ola@eksempel.no - type: email - - label: Har du eller trenger du - name: har_eller_trenger - options: - - Jeg har noe å låne ut - - Jeg trenger å låne noe - type: select - - label: Hva gjelder det - name: hva - placeholder: Hengerfeste til bil, tilhenger, stige - type: textarea - name: Lån ut eller lån av naboen - record_as: oppslag -description: Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står. -name: Hva gjør Tomter Vel, og hva kan du få her? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/kasserer/_section.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/kasserer/_section.yaml deleted file mode 100644 index 2f8af2f..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/kasserer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: kasserer diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/kasserer/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/kasserer/index.yaml deleted file mode 100644 index 8dda085..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/kasserer/index.yaml +++ /dev/null @@ -1,102 +0,0 @@ -alternatives: -- action: /kasserer - consequence: - - Lagre - description: Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: husstander - kind: kv - transitions: - - from: open - label: Registrer betaling - to: betalt - - from: open - label: Meld ut - to: utmeldt - name: Nye medlemmer som venter på registrering -- action: /kasserer - consequence: - - Lagre - description: Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: medlemsendringer - kind: kv - transitions: - - from: open - label: Registrer endring - to: oppdatert - name: Endringer som venter på å bli registrert -- action: /kasserer - consequence: - - Lagre - description: Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: utlegg - kind: kv - transitions: - - from: godkjent - label: Merk som utbetalt - to: utbetalt - - from: godkjent - label: Avvis likevel - to: avvist - - from: open - label: Godkjenn utlegg - to: godkjent - - from: open - label: Avvis utlegg - to: avvist - name: Utlegg som venter på deg -- action: /kasserer - consequence: - - Inviter - description: De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: kasserer - name: Inviter noen inn i kassereren -- action: /kasserer - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer. -name: Hva venter på meg som kasserer akkurat nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/komiteer/_section.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/komiteer/_section.yaml deleted file mode 100644 index 57e3295..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/komiteer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: komiteer diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/komiteer/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/komiteer/index.yaml deleted file mode 100644 index ccf6e5e..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/komiteer/index.yaml +++ /dev/null @@ -1,44 +0,0 @@ -alternatives: -- action: /komiteer/utlegg - consequence: - - Send utlegg - description: Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake. - name: Få tilbake det du har lagt ut -- action: /komiteer - consequence: - - Inviter - description: De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: komiteer - name: Inviter noen inn i komiteene -- action: /komiteer - consequence: - - Confirm - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: komiteer - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp. -name: Hva står ubehandlet i komiteen din nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/komiteer/utlegg-sent.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/komiteer/utlegg-sent.yaml deleted file mode 100644 index e347ad3..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/komiteer/utlegg-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga. - name: Pengene kommer på konto -- action: /komiteer - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Utlegget er sendt til kasserer. Du får beskjed når det er sjekket. -name: Hva skjer med utlegget mitt nå? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/komiteer/utlegg.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/komiteer/utlegg.yaml deleted file mode 100644 index 5d94ad3..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/komiteer/utlegg.yaml +++ /dev/null @@ -1,38 +0,0 @@ -alternatives: -- action: /komiteer/utlegg-sent - consequence: - - Send inn - description: Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten. - encouragements: - - Legg ved bilag om du har det, så går det raskere. - features: - - description: Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor. - icon: lucide:wallet - name: Fra krav til utbetaling - - description: Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster. - icon: lucide:coins - name: Kasserer ser dette - - description: Ha kvittering eller bilag klart før du fyller ut. - icon: lucide:receipt - name: Krav om refusjon - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: Beløp - name: belop - placeholder: 450 kr - type: text - - label: Hva gjaldt det - name: hva - placeholder: Kaffe og kjeks til dugnaden - type: textarea - name: Få pengene tilbake - record_as: utlegg -description: Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake. -followup: false -name: Har du lagt ut penger for komiteen og vil ha dem tilbake? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/lekeplasser/_section.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/lekeplasser/_section.yaml deleted file mode 100644 index 1652221..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/lekeplasser/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: lekeplasser diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/lekeplasser/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/lekeplasser/index.yaml deleted file mode 100644 index 215a9bc..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/lekeplasser/index.yaml +++ /dev/null @@ -1,59 +0,0 @@ -alternatives: -- action: /lekeplasser - consequence: - - Lagre - description: Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses. - features: - - description: '' - name: '' - resource: - requires_group: lekeplasser - source: - bucket: anleggsfeil - kind: kv - transitions: - - from: open - label: Ta tak i saken - to: tatt_tak_i - - from: tatt_tak_i - label: Merk som utbedret - to: utbedret - name: Det som er meldt inn av skader -- action: /lekeplasser - consequence: - - Inviter - description: De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: lekeplasser - name: Inviter noen inn i Leke- og møteplasser -- action: /lekeplasser - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: lekeplasser - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset. -name: Hva må fikses på lekeplassene og stien nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/nabohjelp/_section.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/nabohjelp/_section.yaml deleted file mode 100644 index 5b3a2ad..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/nabohjelp/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: nabohjelp diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/nabohjelp/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/nabohjelp/index.yaml deleted file mode 100644 index ab4db6b..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/nabohjelp/index.yaml +++ /dev/null @@ -1,85 +0,0 @@ -alternatives: -- action: /nabohjelp - consequence: - - Lagre - description: Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: hjelpebehov - kind: kv - transitions: - - from: formidlet - label: Meld ordnet - to: ordnet - - from: formidlet - label: Meld ikke løst - to: ikke_lost - - from: open - label: Koble til nabo - to: formidlet - - from: open - label: Meld ikke løst - to: ikke_lost - name: Naboer som trenger en hånd -- action: /nabohjelp - consequence: - - Lagre - description: Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: hjelpere - kind: kv - transitions: - - from: open - label: Registrer som hjelper - to: registrert - - from: open - label: Meld trukket - to: trukket - name: Naboer som kan stille opp -- action: /nabohjelp - consequence: - - Inviter - description: De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: nabohjelp - name: Inviter noen inn i nabohjelpen -- action: /nabohjelp - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her kobler du naboer som trenger hjelp med dem som kan stille opp. -name: Hvem trenger hjelp, og hvem kan stille opp? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/anleggsfeil.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/anleggsfeil.yaml deleted file mode 100644 index 09d4976..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/anleggsfeil.yaml +++ /dev/null @@ -1,15 +0,0 @@ -alternatives: -- description: Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg. - name: Komiteen tar tak i det -- action: /status/anleggsfeil - consequence: - - Se meldte feil - description: Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet. - name: Se andre meldte feil -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt. -name: Hva skjer med meldingen min nå? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/bli-medlem.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/bli-medlem.yaml deleted file mode 100644 index 533f8a6..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/bli-medlem.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten. - name: Kasserer sender deg betalingsinfo -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert. -name: Hva skjer etter at jeg har meldt meg inn? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/dele-utstyr.yaml deleted file mode 100644 index 761313b..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/dele-utstyr.yaml +++ /dev/null @@ -1,15 +0,0 @@ -alternatives: -- description: En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne. - name: Styret legger det ut for deg -- action: /status/oppslag - consequence: - - Se hva naboer deler - description: Se hva andre i Tomter har lagt ut til utlån akkurat nå. - name: Se alt naboene deler -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan. -name: Hva skjer med det jeg har lagt ut? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/endre-medlemskap.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/endre-medlemskap.yaml deleted file mode 100644 index c58d676..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/endre-medlemskap.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg. - name: Kasserer retter opp opplysningene -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut. -name: Hva skjer nå med det jeg meldte inn? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/hjelpe-til.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/hjelpe-til.yaml deleted file mode 100644 index 3c61af4..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/hjelpe-til.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden. - name: Komiteen tar kontakt -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg. -name: Hva skjer nå som jeg har meldt meg? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/horingsinnspill.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/horingsinnspill.yaml deleted file mode 100644 index bf87c92..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/horingsinnspill.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med. - name: Innspillet ditt inn i vurderingen -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Innspillet ditt er sendt til høringsinstansen i velet. -name: Hva skjer med det jeg har sagt om saken? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/kan-hjelpe.yaml deleted file mode 100644 index 0ac67b5..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/kan-hjelpe.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte. - name: Du blir kontaktet ved behov -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe. -name: Hva skjer nå som jeg har registrert meg? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/komite.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/komite.yaml deleted file mode 100644 index a36dfda..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/komite.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer. - name: Vi finner riktig komité til deg -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg. -name: Hva skjer nå som jeg har meldt interesse for en komité? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/trafikkfare.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/trafikkfare.yaml deleted file mode 100644 index 82da494..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/trafikkfare.yaml +++ /dev/null @@ -1,15 +0,0 @@ -alternatives: -- description: Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs. - name: Trafikkomiteen tar den videre -- action: /status/trafikkmeldinger - consequence: - - Se andre trafikkfarer - description: Se hva andre har meldt inn, og status på sakene. - name: Andre meldte trafikkfarer -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Meldingen din om trafikkfaren er sendt til komiteen for trafikk. -name: Hva skjer med meldingen min nå? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/trenger-hjelp.yaml deleted file mode 100644 index beec6e5..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/received/trenger-hjelp.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer. - name: Vi finner en nabo til deg -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp. -name: Hva skjer nå som jeg har bedt om hjelp? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/status/anleggsfeil/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/status/anleggsfeil/index.yaml deleted file mode 100644 index 805a464..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/status/anleggsfeil/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- description: Alle meldinger er åpne for alle å se. - features: - - description: '' - name: '' - resource: - jq: '.[] | .responses |= {hva: .hva, hvor: .hvor}' - public: true - source: - bucket: anleggsfeil - kind: kv - name: Status på meldte anleggsfeil -- action: / - consequence: - - Tilbake til meldinger - description: '' - name: Tilbake til meldinger -description: Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet. -name: Hva skjer med det jeg har meldt fra om? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/status/oppslag/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/status/oppslag/index.yaml deleted file mode 100644 index cf172af..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/status/oppslag/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- description: Åpen liste – navn og detaljer vises ikke. - features: - - description: '' - name: '' - resource: - jq: '.[] | .responses |= {har_eller_trenger: .har_eller_trenger, hva: .hva}' - public: true - source: - bucket: oppslag - kind: kv - name: Oversikt over det som er meldt inn -- action: / - consequence: - - Tilbake - description: '' - name: Tilbake -description: Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet. -name: Hva er sendt inn, og hvor langt har det kommet? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/status/trafikkmeldinger/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/status/trafikkmeldinger/index.yaml deleted file mode 100644 index 7444f44..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/status/trafikkmeldinger/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- description: Alle meldinger som er sendt inn, og hvor de står nå. - features: - - description: '' - name: '' - resource: - jq: '.[] | .responses |= {hva: .hva, hvor: .hvor}' - public: true - source: - bucket: trafikkmeldinger - kind: kv - name: Trafikkmeldinger og status -- action: / - consequence: - - Tilbake - description: '' - name: Tilbake -description: Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet. -name: Er det meldt fra om noe farlig i trafikken der jeg bor? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/styret/_section.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/styret/_section.yaml deleted file mode 100644 index 5a34160..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/styret/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: styret diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/styret/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/styret/index.yaml deleted file mode 100644 index 1a27364..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/styret/index.yaml +++ /dev/null @@ -1,219 +0,0 @@ -alternatives: -- action: /styret - consequence: - - Lagre - description: Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: innspill - kind: kv - transitions: [] - name: Høringsinnspill fra beboerne -- action: /styret - consequence: - - Lagre - description: Her ligger alle som har meldt seg til en komité og venter på en plass. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: komitesoknader - kind: kv - transitions: - - from: open - label: Sett i komité - to: plassert - - from: open - label: Avslå søknaden - to: avslatt - name: Søknader til komiteene -- action: /styret - consequence: - - Lagre - description: Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: oppslag - kind: kv - transitions: - - from: open - label: Legg ut oppslaget - to: lagt_ut - - from: open - label: Ta ned oppslaget - to: tatt_ned - name: Utstyr til utlån blant naboer -- action: /styret - consequence: - - Lagre - description: Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: trafikkmeldinger - kind: kv - transitions: [] - name: Meldinger om trafikkfarer -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: arrangementer - name: Inviter noen inn i Arrangementer -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: horingsinstans - name: Inviter noen inn i Høringsinstans -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: kasserer - name: Inviter noen inn i kassereren -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: komiteer - name: Inviter noen inn i komiteene -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: lekeplasser - name: Inviter noen inn i Leke- og møteplasser -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: nabohjelp - name: Inviter noen inn i nabohjelpen -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: styret - name: Inviter noen inn i styret -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: trafikk - name: Inviter noen inn i Trafikkforhold -- action: /styret - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: 'Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.' -name: Hva venter på styret akkurat nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/trafikk/_section.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/trafikk/_section.yaml deleted file mode 100644 index dbe5246..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/trafikk/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: trafikk diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/trafikk/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/trafikk/index.yaml deleted file mode 100644 index d14490e..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/questions/trafikk/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -alternatives: -- action: /trafikk - consequence: - - Lagre - description: Farlige steder i trafikken som naboer har meldt inn. - features: - - description: '' - name: '' - resource: - requires_group: trafikk - source: - bucket: trafikkmeldinger - kind: kv - transitions: - - from: open - label: Ta opp med kommunen - to: tatt_opp - - from: open - label: Avvis meldingen - to: avvist - - from: tatt_opp - label: Meld ordnet - to: ordnet - - from: tatt_opp - label: Avvis meldingen - to: avvist - name: Farlige steder i trafikken -- action: /trafikk - consequence: - - Inviter - description: De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: trafikk - name: Inviter noen inn i Trafikkforhold -- action: /trafikk - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: trafikk - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier. -name: Hvilke trafikkfarer må følges opp? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/site.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/site.yaml deleted file mode 100644 index e1c5866..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/site.yaml +++ /dev/null @@ -1,2 +0,0 @@ -lang: no -title: Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/words.json b/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/words.json deleted file mode 100644 index 0e461bf..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/r1/site/words.json +++ /dev/null @@ -1,868 +0,0 @@ -{ - "questions/arrangementer/index.yaml": { - "buckets": { - "frivillige": { - "description": "Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem.", - "heading": "Frivillige til arrangementer og dugnad", - "moves": { - "kontaktet->satt_opp": "Sett opp", - "kontaktet->takket_nei": "Takket nei", - "open->kontaktet": "Merk som kontaktet", - "open->takket_nei": "Takket nei" - } - } - }, - "confirm": "Lagre", - "description": "Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "arrangementer": { - "button": "Inviter", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Arrangementer", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp?" - }, - "questions/decide/bli-medlem.yaml": { - "description": "", - "moves": { - "utmeldt": { - "button": "Utmeldt", - "description": "", - "heading": "Utmeldt" - } - }, - "question": "What would you like to do?" - }, - "questions/decide/dele-utstyr.yaml": { - "description": "Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån.", - "moves": { - "tatt_ned": { - "button": "Ta ned oppslaget", - "description": "Oppslaget fjernes fra siden, så ingen flere spør om å låne det.", - "heading": "Meld at utstyret er tatt ned" - } - }, - "question": "Skal oppslaget om utstyret fortsatt stå ute?" - }, - "questions/decide/kan-hjelpe.yaml": { - "description": "Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå.", - "moves": { - "trukket": { - "button": "Trekk meg", - "description": "Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre.", - "heading": "Ta en pause fra nabohjelpen" - } - }, - "question": "Vil du fortsatt kunne bli spurt om å hjelpe en nabo?" - }, - "questions/decide/trenger-hjelp.yaml": { - "description": "Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet.", - "moves": { - "ordnet": { - "button": "Merk som ordnet", - "description": "Da vet vi at naboen har fått hjelpen sin, og saken lukkes.", - "heading": "Meld fra at hjelpen er gitt" - } - }, - "question": "Har naboen fått hjelpen de trengte?" - }, - "questions/horingsinstans/index.yaml": { - "buckets": { - "innspill": { - "description": "Her ligger innspill fra beboere til saker kommunen har på høring.", - "heading": "Innspill til høringssvar", - "moves": { - "open->ikke_tatt_med": "Ikke tatt med", - "open->tatt_med": "Tatt med i svaret" - } - } - }, - "confirm": "Send svar", - "description": "Her samler du innspillene og ser hva som er tatt med i velets høringssvar.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "horingsinstans": { - "button": "Inviter", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Høringsinstans", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva sier vi i høringssvaret?" - }, - "questions/index.yaml": { - "description": "Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står.", - "doors": {}, - "needs": { - "anleggsfeil": { - "button": "Send inn", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.", - "encouragement": "Det holder med noen ord om hva du så og hvor.", - "form_description": "Fortell hva som er ødelagt og omtrent hvor det er.", - "form_title": "Meld anleggsfeil", - "heading": "Meld fra om noe ødelagt", - "hints": { - "hva": "Løs planke på gjerdet ved husken", - "hvor": "" - }, - "icon": "construction", - "labels": { - "hva": "Hva er ødelagt", - "hvor": "Hvor er det" - }, - "road_description": "Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet.", - "road_icon": "lucide:wrench", - "road_title": "Hva skjer videre", - "who_description": "Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:hammer", - "who_title": "Hvem leser dette" - }, - "bli-medlem": { - "button": "Bli medlem", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.", - "encouragement": "Kasserer sender deg kontingenten på e-post rett etterpå.", - "form_description": "Ha adressen i Tomter og en e-post du bruker klar.", - "form_title": "Meld deg inn", - "heading": "Bli medlem av Tomter Vel", - "hints": { - "adresse": "Tomterveien 12", - "email": "", - "navn": "Ola Nordmann", - "telefon": "123 45 678" - }, - "icon": "user-plus", - "labels": { - "adresse": "Adresse", - "email": "Email", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem.", - "road_icon": "lucide:coins", - "road_title": "Etter innmelding", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "who_title": "Hvem svarer deg" - }, - "dele-utstyr": { - "button": "Legg ut oppslag", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.", - "encouragement": "Vi legger det ut så naboene kan se det.", - "form_description": "Skriv kort hva det gjelder, så folk skjønner det med en gang.", - "form_title": "Lån eller utlån", - "heading": "Lån ut eller lån av naboen", - "hints": { - "email": "ola@eksempel.no", - "har_eller_trenger": "", - "hva": "Hengerfeste til bil, tilhenger, stige", - "navn": "Ola Nordmann" - }, - "icon": "package", - "labels": { - "email": "E-post", - "har_eller_trenger": "Har du eller trenger du", - "hva": "Hva gjelder det", - "navn": "Navn" - }, - "road_description": "Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen.", - "road_icon": "lucide:clipboard-list", - "road_title": "Fra oppslag til avtale", - "who_description": "Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem ser dette" - }, - "endre-medlemskap": { - "button": "Send endring", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.", - "encouragement": "Det tar bare et par minutter, og kasserer ordner resten.", - "form_description": "Skriv navnet ditt og hva som er nytt.", - "form_title": "Endre medlemskap", - "heading": "Oppdater eller avslutt medlemskapet", - "hints": { - "adresse": "Ny adresse i Tomter", - "hva_er_nytt": "Ny e-post, ny adresse, eller ønske om utmelding", - "navn": "Ola Nordmann" - }, - "icon": "pencil", - "labels": { - "adresse": "Adresse", - "hva_er_nytt": "Hva vil du endre?", - "navn": "Navn" - }, - "road_description": "Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om.", - "road_icon": "lucide:refresh-cw", - "road_title": "Etter du sender inn", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "who_title": "Hvem svarer deg" - }, - "hjelpe-til": { - "button": "Meld meg på", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.", - "encouragement": "Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg.", - "form_description": "Fortell kort hva du kan hjelpe til med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli med på dugnad eller arrangement", - "hints": { - "hva": "", - "navn": "Kari Nordmann", - "telefon": "912 34 567" - }, - "icon": "hand-helping", - "labels": { - "hva": "Hva kan du hjelpe til med?", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit.", - "road_icon": "lucide:clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - }, - "horingsinnspill": { - "button": "Send innspill", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "encouragement": "Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen.", - "form_description": "Fortell hvilken sak det gjelder og hva du mener.", - "form_title": "Send et høringsinnspill", - "heading": "Få din mening med i høringssvaret", - "hints": { - "innspill": "Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen.", - "navn": "Kari Nordmann", - "sak": "Reguleringsplan for Tomterveien" - }, - "icon": "megaphone", - "labels": { - "innspill": "Hva mener du?", - "navn": "Navn", - "sak": "Hvilken sak gjelder det?" - }, - "road_description": "Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - }, - "kan-hjelpe": { - "button": "Meld deg", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.", - "encouragement": "Du blir bare kontaktet når noe passer for deg.", - "form_description": "Fortell kort hva du kan bidra med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli spurt når en nabo trenger en hånd", - "hints": { - "email": "kari@eksempel.no", - "kan": "", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "hand-helping", - "labels": { - "email": "E-post", - "kan": "Hva kan du hjelpe med", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra.", - "road_icon": "lucide:user-check", - "road_title": "Fra påmelding til spørsmål", - "who_description": "Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no.", - "who_icon": "lucide:heart-handshake", - "who_title": "Hvem ser dette" - }, - "komite": { - "button": "Meld interesse", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i.", - "encouragement": "Det tar bare et minutt, og noen fra styret svarer deg.", - "form_description": "Skriv hvilken komité du er interessert i.", - "form_title": "Meld deg til en komité", - "heading": "Sitt i en komité som betyr noe for deg", - "hints": { - "epost": "kari@eksempel.no", - "komite": "", - "navn": "Kari Nordmann" - }, - "icon": "users", - "labels": { - "epost": "E-post", - "komite": "Hvilken komité?", - "navn": "Navn" - }, - "road_description": "Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå.", - "road_icon": "lucide:clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:handshake", - "who_title": "Hvem leser dette" - }, - "trafikkfare": { - "button": "Send inn", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.", - "encouragement": "Bare noen linjer om hva og hvor er nok til at vi kan følge opp.", - "form_description": "Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer.", - "form_title": "Meld trafikkfare", - "heading": "Meld fra om en trafikkfare", - "hints": { - "epost": "ola.nordmann@epost.no", - "hva": "Dårlig sikt i krysset, biler kjører fort", - "hvor": "Krysset Tomterveien / Elvestien" - }, - "icon": "alert-triangle", - "labels": { - "epost": "E-post (valgfritt)", - "hva": "Hva så du", - "hvor": "Hvor var det" - }, - "road_description": "Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:car", - "who_title": "Hvem leser dette" - }, - "trenger-hjelp": { - "button": "Be om hjelp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.", - "encouragement": "Vi finner en nabo som kan stille opp så fort som mulig.", - "form_description": "Skriv kort hva du trenger hjelp til.", - "form_title": "Be om en hånd", - "heading": "Få en nabo til å stille opp", - "hints": { - "adresse": "Tomterveien 12", - "email": "kari@eksempel.no", - "hva": "Måke snø på trappa, handle inn litt mat", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "heart-handshake", - "labels": { - "adresse": "Adresse", - "email": "E-post", - "hva": "Hva trenger du hjelp til", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed.", - "road_icon": "lucide:hand-helping", - "road_title": "Fra melding til hjelp", - "who_description": "Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem ser dette" - } - }, - "opener": { - "description": "To ting først. Resten står lenger ned på siden.", - "features": { - "medlem": { - "description": "Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil.", - "heading": "Et vel som taler for Tomter, og et medlemskap du styrer selv", - "icon": "users" - }, - "nabo": { - "description": "Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.", - "heading": "En nabo som stiller opp når du trenger det", - "icon": "handshake" - } - }, - "heading": "Dette gjør velet" - }, - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "shopping": { - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.", - "heading": "Se deg rundt først", - "items": { - "status-anleggsfeil": { - "description": "Lekeplassen og stien: det som er meldt, og det som er fikset.", - "heading": "Alt som er meldt ødelagt", - "icon": "list" - }, - "status-oppslag": { - "description": "Det naboene har å låne ut, og det de trenger å låne.", - "heading": "Oppslagstavla", - "icon": "list" - }, - "status-trafikkmeldinger": { - "description": "Farlige steder naboene har meldt, og hva velet har gjort med dem.", - "heading": "Alle trafikkmeldinger", - "icon": "list" - } - } - } - }, - "questions/kasserer/index.yaml": { - "buckets": { - "husstander": { - "description": "Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem.", - "heading": "Nye medlemmer som venter på registrering", - "moves": { - "open->betalt": "Registrer betaling", - "open->utmeldt": "Meld ut" - } - }, - "medlemsendringer": { - "description": "Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert.", - "heading": "Endringer som venter på å bli registrert", - "moves": { - "open->oppdatert": "Registrer endring" - } - }, - "utlegg": { - "description": "Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling.", - "heading": "Utlegg som venter på deg", - "moves": { - "godkjent->avvist": "Avvis likevel", - "godkjent->utbetalt": "Merk som utbetalt", - "open->avvist": "Avvis utlegg", - "open->godkjent": "Godkjenn utlegg" - } - } - }, - "confirm": "Lagre", - "description": "Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "kasserer": { - "button": "Inviter", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i kassereren", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva venter på meg som kasserer akkurat nå?" - }, - "questions/komiteer/index.yaml": { - "buckets": {}, - "confirm": "Confirm", - "description": "Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "komiteer": { - "button": "Inviter", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i komiteene", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": { - "utlegg": { - "button": "Send utlegg", - "description": "Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake.", - "heading": "Få tilbake det du har lagt ut" - } - }, - "question": "Hva står ubehandlet i komiteen din nå?" - }, - "questions/komiteer/utlegg-sent.yaml": { - "back": "Til forsiden", - "description": "Utlegget er sendt til kasserer. Du får beskjed når det er sjekket.", - "next_description": "Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga.", - "next_heading": "Pengene kommer på konto", - "question": "Hva skjer med utlegget mitt nå?" - }, - "questions/komiteer/utlegg.yaml": { - "button": "Send inn", - "description": "Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten.", - "encouragement": "Legg ved bilag om du har det, så går det raskere.", - "form_description": "Ha kvittering eller bilag klart før du fyller ut.", - "form_title": "Krav om refusjon", - "heading": "Få pengene tilbake", - "hints": { - "belop": "450 kr", - "hva": "Kaffe og kjeks til dugnaden", - "navn": "Kari Nordmann" - }, - "icon": "receipt", - "labels": { - "belop": "Beløp", - "hva": "Hva gjaldt det", - "navn": "Navn" - }, - "page_description": "Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake.", - "question": "Har du lagt ut penger for komiteen og vil ha dem tilbake?", - "road_description": "Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor.", - "road_icon": "lucide:wallet", - "road_title": "Fra krav til utbetaling", - "who_description": "Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster.", - "who_icon": "lucide:coins", - "who_title": "Kasserer ser dette" - }, - "questions/lekeplasser/index.yaml": { - "buckets": { - "anleggsfeil": { - "description": "Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses.", - "heading": "Det som er meldt inn av skader", - "moves": { - "open->tatt_tak_i": "Ta tak i saken", - "tatt_tak_i->utbedret": "Merk som utbedret" - } - } - }, - "confirm": "Lagre", - "description": "Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "lekeplasser": { - "button": "Inviter", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Leke- og møteplasser", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva må fikses på lekeplassene og stien nå?" - }, - "questions/nabohjelp/index.yaml": { - "buckets": { - "hjelpebehov": { - "description": "Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe.", - "heading": "Naboer som trenger en hånd", - "moves": { - "formidlet->ikke_lost": "Meld ikke løst", - "formidlet->ordnet": "Meld ordnet", - "open->formidlet": "Koble til nabo", - "open->ikke_lost": "Meld ikke løst" - } - }, - "hjelpere": { - "description": "Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem.", - "heading": "Naboer som kan stille opp", - "moves": { - "open->registrert": "Registrer som hjelper", - "open->trukket": "Meld trukket" - } - } - }, - "confirm": "Lagre", - "description": "Her kobler du naboer som trenger hjelp med dem som kan stille opp.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "nabohjelp": { - "button": "Inviter", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i nabohjelpen", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvem trenger hjelp, og hvem kan stille opp?" - }, - "questions/received/anleggsfeil.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt.", - "next_description": "Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg.", - "next_heading": "Komiteen tar tak i det", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se meldte feil", - "description": "Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet.", - "heading": "Se andre meldte feil" - } - }, - "questions/received/bli-medlem.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert.", - "next_description": "Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten.", - "next_heading": "Kasserer sender deg betalingsinfo", - "question": "Hva skjer etter at jeg har meldt meg inn?" - }, - "questions/received/dele-utstyr.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan.", - "next_description": "En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne.", - "next_heading": "Styret legger det ut for deg", - "question": "Hva skjer med det jeg har lagt ut?", - "see_all": { - "button": "Se hva naboer deler", - "description": "Se hva andre i Tomter har lagt ut til utlån akkurat nå.", - "heading": "Se alt naboene deler" - } - }, - "questions/received/endre-medlemskap.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut.", - "next_description": "Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg.", - "next_heading": "Kasserer retter opp opplysningene", - "question": "Hva skjer nå med det jeg meldte inn?" - }, - "questions/received/hjelpe-til.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg.", - "next_description": "Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden.", - "next_heading": "Komiteen tar kontakt", - "question": "Hva skjer nå som jeg har meldt meg?" - }, - "questions/received/horingsinnspill.yaml": { - "back": "Tilbake til forsiden", - "description": "Innspillet ditt er sendt til høringsinstansen i velet.", - "next_description": "De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med.", - "next_heading": "Innspillet ditt inn i vurderingen", - "question": "Hva skjer med det jeg har sagt om saken?" - }, - "questions/received/kan-hjelpe.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe.", - "next_description": "Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte.", - "next_heading": "Du blir kontaktet ved behov", - "question": "Hva skjer nå som jeg har registrert meg?" - }, - "questions/received/komite.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg.", - "next_description": "Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer.", - "next_heading": "Vi finner riktig komité til deg", - "question": "Hva skjer nå som jeg har meldt interesse for en komité?" - }, - "questions/received/trafikkfare.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din om trafikkfaren er sendt til komiteen for trafikk.", - "next_description": "Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs.", - "next_heading": "Trafikkomiteen tar den videre", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se andre trafikkfarer", - "description": "Se hva andre har meldt inn, og status på sakene.", - "heading": "Andre meldte trafikkfarer" - } - }, - "questions/received/trenger-hjelp.yaml": { - "back": "Til forsiden", - "description": "Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp.", - "next_description": "Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer.", - "next_heading": "Vi finner en nabo til deg", - "question": "Hva skjer nå som jeg har bedt om hjelp?" - }, - "questions/status/anleggsfeil/index.yaml": { - "back": "Tilbake til meldinger", - "description": "Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet.", - "heading": "Status på meldte anleggsfeil", - "list_description": "Alle meldinger er åpne for alle å se.", - "question": "Hva skjer med det jeg har meldt fra om?" - }, - "questions/status/oppslag/index.yaml": { - "back": "Tilbake", - "description": "Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet.", - "heading": "Oversikt over det som er meldt inn", - "list_description": "Åpen liste – navn og detaljer vises ikke.", - "question": "Hva er sendt inn, og hvor langt har det kommet?" - }, - "questions/status/trafikkmeldinger/index.yaml": { - "back": "Tilbake", - "description": "Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet.", - "heading": "Trafikkmeldinger og status", - "list_description": "Alle meldinger som er sendt inn, og hvor de står nå.", - "question": "Er det meldt fra om noe farlig i trafikken der jeg bor?" - }, - "questions/styret/index.yaml": { - "buckets": { - "innspill": { - "description": "Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar.", - "heading": "Høringsinnspill fra beboerne", - "moves": {} - }, - "komitesoknader": { - "description": "Her ligger alle som har meldt seg til en komité og venter på en plass.", - "heading": "Søknader til komiteene", - "moves": { - "open->avslatt": "Avslå søknaden", - "open->plassert": "Sett i komité" - } - }, - "oppslag": { - "description": "Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut.", - "heading": "Utstyr til utlån blant naboer", - "moves": { - "open->lagt_ut": "Legg ut oppslaget", - "open->tatt_ned": "Ta ned oppslaget" - } - }, - "trafikkmeldinger": { - "description": "Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier.", - "heading": "Meldinger om trafikkfarer", - "moves": {} - } - }, - "confirm": "Lagre", - "description": "Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "arrangementer": { - "button": "Inviter", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Arrangementer", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "horingsinstans": { - "button": "Inviter", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Høringsinstans", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "kasserer": { - "button": "Inviter", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i kassereren", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "komiteer": { - "button": "Inviter", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i komiteene", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "lekeplasser": { - "button": "Inviter", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Leke- og møteplasser", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "nabohjelp": { - "button": "Inviter", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i nabohjelpen", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "styret": { - "button": "Inviter", - "description": "De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i styret", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "trafikk": { - "button": "Inviter", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Trafikkforhold", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva venter på styret akkurat nå?" - }, - "questions/trafikk/index.yaml": { - "buckets": { - "trafikkmeldinger": { - "description": "Farlige steder i trafikken som naboer har meldt inn.", - "heading": "Farlige steder i trafikken", - "moves": { - "open->avvist": "Avvis meldingen", - "open->tatt_opp": "Ta opp med kommunen", - "tatt_opp->avvist": "Avvis meldingen", - "tatt_opp->ordnet": "Meld ordnet" - } - } - }, - "confirm": "Lagre", - "description": "Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "trafikk": { - "button": "Inviter", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Trafikkforhold", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvilke trafikkfarer må følges opp?" - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/rated/rate.json b/vendor/trainer/runs/tomtervel-flat-2026-09-23/rated/rate.json deleted file mode 100644 index cfcd8f1..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/rated/rate.json +++ /dev/null @@ -1,299 +0,0 @@ -{ - "anleggsfeil": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 23.852492631039347, - "options": 12, - "overloaded": true, - "page": "/", - "personas": 2, - "required_fields": 2, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "bli-medlem": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 27.098737083811713, - "options": 12, - "overloaded": true, - "page": "/", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "dele-utstyr": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 24.179839633447884, - "options": 12, - "overloaded": true, - "page": "/", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "endre-medlemskap": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 25.953529411764706, - "options": 12, - "overloaded": true, - "page": "/", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "hjelpe-til": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 25.094279366842542, - "options": 12, - "overloaded": true, - "page": "/", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "horingsinnspill": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 24.899104477611942, - "options": 12, - "overloaded": true, - "page": "/", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "kan-hjelpe": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 24.636363636363637, - "options": 12, - "overloaded": true, - "page": "/", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "komite": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 23.612111292962357, - "options": 12, - "overloaded": true, - "page": "/", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "trafikkfare": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 25.784532671629446, - "options": 12, - "overloaded": true, - "page": "/", - "personas": 2, - "required_fields": 2, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "trenger-hjelp": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 23.71794871794872, - "options": 12, - "overloaded": true, - "page": "/", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "utlegg": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 36.333333333333336, - "options": 1, - "overloaded": false, - "page": "/komiteer/utlegg", - "personas": 1, - "required_fields": 3, - "understanding": { - "asked": 1, - "next": 1, - "where": 1, - "which": 1 - } - } - ], - "steps": 1 - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/score.log b/vendor/trainer/runs/tomtervel-flat-2026-09-23/score.log deleted file mode 100644 index 2ccae3d..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/score.log +++ /dev/null @@ -1,39 +0,0 @@ -== answer full -== answer skim -== score full -MISROUTE: nyinnflyttet@/: picked "Oppdater eller avslutt medlemskapet" (0.95), the need is met by ["Bli medlem av Tomter Vel"] -MISROUTE: busslomme@/: picked "Lån ut eller lån av naboen" (0.95), the need is met by ["Meld fra om en trafikkfare"] -MISROUTE: bru@/: picked "Få en nabo til å stille opp" (0.95), the need is met by ["Meld fra om noe ødelagt"] -MISROUTE: togtider@/: picked "Meld fra om en trafikkfare" (0.95), the need is met by ["Få din mening med i høringssvaret"] -MISROUTE: vafler@/: picked "Få en nabo til å stille opp" (0.95), the need is met by ["Bli med på dugnad eller arrangement"] -MISROUTE: planlegger@/: picked "Få din mening med i høringssvaret" (0.95), the need is met by ["Sitt i en komité som betyr noe for deg"] -MISROUTE: stige@/: picked "Meld fra om noe ødelagt" (0.95), the need is met by ["Lån ut eller lån av naboen"] -MISROUTE: hjemmekontor@/: picked "Få en nabo til å stille opp" (0.95), the need is met by ["Bli spurt når en nabo trenger en hånd"] -wording: 12/20 routed right (60%) -== score skim -MISROUTE: glemte-a-betale@/: picked "Oppdater eller avslutt medlemskapet" (0.95), the need is met by ["Bli medlem av Tomter Vel"] -MISROUTE: ny-epost@/: picked "Bli medlem av Tomter Vel" (0.95), the need is met by ["Oppdater eller avslutt medlemskapet"] -MISROUTE: busslomme@/: picked "Bli medlem av Tomter Vel" (0.95), the need is met by ["Meld fra om en trafikkfare"] -MISROUTE: huske@/: picked "Bli medlem av Tomter Vel" (0.95), the need is met by ["Meld fra om noe ødelagt"] -MISROUTE: bru@/: picked "Bli medlem av Tomter Vel" (0.85), the need is met by ["Meld fra om noe ødelagt"] -MISROUTE: togtider@/: picked "Meld fra om en trafikkfare" (0.85), the need is met by ["Få din mening med i høringssvaret"] -MISROUTE: vafler@/: picked "Se deg rundt først" (0.85), the need is met by ["Bli med på dugnad eller arrangement"] -MISROUTE: pendler@/: picked "Bli med på dugnad eller arrangement" (0.85), the need is met by ["Sitt i en komité som betyr noe for deg"] -MISROUTE: planlegger@/: picked "Få din mening med i høringssvaret" (0.95), the need is met by ["Sitt i en komité som betyr noe for deg"] -MISROUTE: snomaking@/: picked "Bli spurt når en nabo trenger en hånd" (0.85), the need is met by ["Få en nabo til å stille opp"] -MISROUTE: nyoperert@/: picked "Bli spurt når en nabo trenger en hånd" (0.95), the need is met by ["Få en nabo til å stille opp"] -wording: 9/20 routed right (45%) -== rate -need LIX which where asked next gutted twin says page load -bli-medlem 27 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 12 options, 3 required - SPLIT -endre-medlemskap 26 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 12 options, 3 required - SPLIT -trafikkfare 26 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 12 options, 2 required - SPLIT -anleggsfeil 24 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 12 options, 2 required - SPLIT -horingsinnspill 25 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 12 options, 3 required - SPLIT -hjelpe-til 25 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 12 options, 3 required - SPLIT -komite 24 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 12 options, 3 required - SPLIT -trenger-hjelp 24 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 12 options, 4 required - SPLIT -kan-hjelpe 25 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 12 options, 4 required - SPLIT -dele-utstyr 24 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 12 options, 4 required - SPLIT -utlegg 36 easy 1/1 1/1 1/1 1/1 0/0/0/0 ok 1 options, 3 required -== done diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/score.sh b/vendor/trainer/runs/tomtervel-flat-2026-09-23/score.sh deleted file mode 100755 index b7ef331..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/score.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/sh -# Score the built uhhm site: routing by a blind visitor (qwen3:8b), one -# task per call, with and without descriptions; then rate the cards. -set -eu -cd "$(dirname "$0")" -IRIS=/var/local/cargo-target/release/iris -T=/var/local/cargo-target/release/portal-trainer -LLM="MODEL=qwen3:8b ../../engines/ollama.sh" -$IRIS check --path site/questions --needs-tasks tasks-full.jsonl --needs-sim model.json > iris.log 2>&1 -$IRIS check --path site/questions --needs-tasks tasks-skim.jsonl --skim >> iris.log 2>&1 -echo "== answer full"; $T answer --tasks tasks-full.jsonl --repo site --llm "$LLM" > answers-full.jsonl -echo "== answer skim"; $T answer --tasks tasks-skim.jsonl --repo site --llm "$LLM" > answers-skim.jsonl -echo "== score full"; $IRIS check --path site/questions --needs-tasks tasks-full.jsonl --needs-score answers-full.jsonl 2>&1 | grep -E "MISROUTE|HESITANT|UNANSWERED|wording:" -echo "== score skim"; $IRIS check --path site/questions --needs-tasks tasks-skim.jsonl --skim --needs-score answers-skim.jsonl 2>&1 | grep -E "MISROUTE|HESITANT|UNANSWERED|wording:" -echo "== rate"; $T rate --model model.json --out rated --repo site --llm "$LLM" 2>&1 | tail -40 -echo "== done" diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/aggregates.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/aggregates.yaml deleted file mode 100644 index a5e8b49..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/aggregates.yaml +++ /dev/null @@ -1,220 +0,0 @@ -aggregates: -- bucket: anleggsfeil - initial: open - states: - open: - event: received - tatt_tak_i: - event: tatt_tak_i - utbedret: - event: utbedret - transitions: - open: - - tatt_tak_i - tatt_tak_i: - - utbedret -- bucket: frivillige - initial: open - states: - kontaktet: - event: kontaktet - open: - event: received - satt_opp: - event: satt_opp - takket_nei: - event: takket_nei - transitions: - kontaktet: - - satt_opp - - takket_nei - open: - - kontaktet - - takket_nei -- bucket: hjelpebehov - initial: open - states: - formidlet: - event: formidlet - mail: - body: |- - Hei {navn}, - - Det du sendte om at en nabo stiller opp er nå formidlet. - - Det du kan gjøre nå: {site}/decide/trenger-hjelp?chain={chain}&email={email} - - Styret i Tomter Vel på post@tomtervel.no - subject: 'Tomter Vel: Formidlet' - to: submitter - ikke_lost: - event: ikke_lost - open: - event: received - mail: - body: |- - Hei {navn}, - - Vi har mottatt det du sendte om at en nabo stiller opp. - - Styret i Tomter Vel på post@tomtervel.no - subject: 'Tomter Vel: Open' - to: submitter - ordnet: - event: ordnet - mail: - body: |- - Hei {navn}, - - Det du sendte om at en nabo stiller opp er nå ordnet. - - Styret i Tomter Vel på post@tomtervel.no - subject: 'Tomter Vel: Ordnet' - to: submitter - transitions: - formidlet: - - ordnet - - ikke_lost - open: - - formidlet - - ikke_lost -- bucket: hjelpere - initial: open - states: - open: - event: received - registrert: - event: registrert - trukket: - event: trukket - transitions: - open: - - registrert - - trukket -- bucket: husstander - initial: open - states: - betalt: - event: betalt - mail: - body: |- - Hei {navn}, - - Det du sendte om å bli medlem og få betalt kontingenten er nå betalt. - - Styret i Tomter Vel på post@tomtervel.no - subject: 'Tomter Vel: Betalt' - to: submitter - open: - event: received - mail: - body: |- - Hei {navn}, - - Vi har mottatt det du sendte om å bli medlem og få betalt kontingenten. - - Det du kan gjøre nå: {site}/decide/bli-medlem?chain={chain}&email={email} - - Styret i Tomter Vel på post@tomtervel.no - subject: 'Tomter Vel: Open' - to: submitter - utmeldt: - event: utmeldt - transitions: - open: - - betalt - - utmeldt -- bucket: innspill - initial: open - states: - ikke_tatt_med: - event: ikke_tatt_med - open: - event: received - tatt_med: - event: tatt_med - transitions: - open: - - tatt_med - - ikke_tatt_med -- bucket: komitesoknader - initial: open - states: - avslatt: - event: avslatt - open: - event: received - plassert: - event: plassert - transitions: - open: - - plassert - - avslatt -- bucket: medlemsendringer - initial: open - states: - open: - event: received - oppdatert: - event: oppdatert - transitions: - open: - - oppdatert -- bucket: oppslag - initial: open - states: - lagt_ut: - event: lagt_ut - mail: - body: |- - Hei {navn}, - - Det du sendte om et oppslag som naboene ser er nå lagt ut. - - Styret i Tomter Vel på post@tomtervel.no - subject: 'Tomter Vel: Lagt ut' - to: submitter - open: - event: received - tatt_ned: - event: tatt_ned - transitions: - open: - - lagt_ut - - tatt_ned -- bucket: trafikkmeldinger - initial: open - states: - avvist: - event: avvist - open: - event: received - ordnet: - event: ordnet - tatt_opp: - event: tatt_opp - transitions: - open: - - tatt_opp - - avvist - tatt_opp: - - ordnet - - avvist -- bucket: utlegg - initial: open - states: - avvist: - event: avvist - godkjent: - event: godkjent - open: - event: received - utbetalt: - event: utbetalt - transitions: - godkjent: - - utbetalt - - avvist - open: - - godkjent - - avvist diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/needs.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/needs.yaml deleted file mode 100644 index c618efc..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/needs.yaml +++ /dev/null @@ -1,265 +0,0 @@ -needs: -- done_when: - - betalt - - utmeldt - enters: / - handled_by: kasserer - id: bli-medlem - lands_in: husstander - max_fields: 3 - max_steps: 1 - stages: - - open - - betalt - - utmeldt - success: - - betalt - via: Bli medlem av Tomter Vel - wants: å bli medlem og få betalt kontingenten - who: en husstand i Tomter -- done_when: - - oppdatert - enters: / - handled_by: kasserer - id: endre-medlemskap - lands_in: medlemsendringer - max_fields: 3 - max_steps: 1 - stages: - - open - - oppdatert - success: - - oppdatert - via: Oppdater eller avslutt medlemskapet - wants: at velet har riktige opplysninger om dem - who: et medlem som har flyttet, byttet e-post eller vil melde seg ut -- done_when: - - ordnet - - avvist - enters: / - handled_by: trafikk - id: trafikkfare - lands_in: trafikkmeldinger - max_fields: 2 - max_steps: 1 - stages: - - open - - tatt_opp - - ordnet - - avvist - success: - - ordnet - via: Meld fra om en trafikkfare - wants: at velet tar det opp med kommunen eller den som eier veien - who: en som har sett et farlig sted i trafikken -- done_when: - - utbedret - enters: / - handled_by: lekeplasser - id: anleggsfeil - lands_in: anleggsfeil - max_fields: 2 - max_steps: 1 - stages: - - open - - tatt_tak_i - - utbedret - success: - - utbedret - via: Meld fra om noe ødelagt - wants: at det blir fikset før noen skader seg - who: en som ser at noe på lekeplassen eller stien er ødelagt -- done_when: - - tatt_med - - ikke_tatt_med - enters: / - handled_by: horingsinstans - id: horingsinnspill - lands_in: innspill - max_fields: 3 - max_steps: 1 - stages: - - open - - tatt_med - - ikke_tatt_med - success: - - tatt_med - via: Få din mening med i høringssvaret - wants: at velet tar det med i sitt svar - who: en beboer som har en mening om en sak kommunen har på høring -- done_when: - - satt_opp - - takket_nei - enters: / - handled_by: arrangementer - id: hjelpe-til - lands_in: frivillige - max_fields: 3 - max_steps: 1 - stages: - - open - - kontaktet - - satt_opp - - takket_nei - success: - - satt_opp - via: Bli med på dugnad eller arrangement - wants: å bli satt opp på noe som passer dem - who: en som vil hjelpe til på et arrangement eller en dugnad -- done_when: - - plassert - - avslatt - enters: / - handled_by: styret - id: komite - lands_in: komitesoknader - max_fields: 3 - max_steps: 1 - stages: - - open - - plassert - - avslatt - success: - - plassert - via: Sitt i en komité som betyr noe for deg - wants: en plass i den komiteen som driver med det de bryr seg om - who: en som vil sitte i en komité -- done_when: - - ordnet - - ikke_lost - enters: / - handled_by: nabohjelp - id: trenger-hjelp - lands_in: hjelpebehov - max_fields: 4 - max_steps: 1 - stages: - - open - - formidlet - - ordnet - - ikke_lost - success: - - ordnet - via: Få en nabo til å stille opp - wants: at en nabo stiller opp - who: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss -- done_when: - - registrert - - trukket - enters: / - handled_by: nabohjelp - id: kan-hjelpe - lands_in: hjelpere - max_fields: 4 - max_steps: 1 - stages: - - open - - registrert - - trukket - success: - - registrert - via: Bli spurt når en nabo trenger en hånd - wants: å bli spurt når det passer - who: en nabo som kan stille opp når noen trenger det -- done_when: - - lagt_ut - - tatt_ned - enters: / - handled_by: styret - id: dele-utstyr - lands_in: oppslag - max_fields: 4 - max_steps: 1 - stages: - - open - - lagt_ut - - tatt_ned - success: - - lagt_ut - via: Lån ut eller lån av naboen - wants: et oppslag som naboene ser - who: en nabo som har noe å låne ut, eller trenger å låne noe -- done_when: - - utbetalt - - avvist - enters: /komiteer/utlegg - enters_as: komiteer - handled_by: kasserer - id: utlegg - lands_in: utlegg - max_fields: 3 - max_steps: 1 - stages: - - open - - godkjent - - utbetalt - - avvist - success: - - utbetalt - via: Få pengene tilbake - wants: pengene tilbake - who: en i en komité som har lagt ut for noe -personas: -- id: nyinnflyttet - need: bli-medlem - text: Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det? -- id: glemte-a-betale - need: bli-medlem - text: Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem? -- id: ny-epost - need: endre-medlemskap - text: Vi har byttet e-postadresse og får ikke lenger noe fra dere. -- id: flytter - need: endre-medlemskap - text: Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista. -- id: skolevei - need: trafikkfare - text: Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går. -- id: busslomme - need: trafikkfare - text: Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy. -- id: huske - need: anleggsfeil - text: Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt. -- id: bru - need: anleggsfeil - text: Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom. -- id: blokker - need: horingsinnspill - text: Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra? -- id: togtider - need: horingsinnspill - text: Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det. -- id: vafler - need: hjelpe-til - text: Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk. -- id: motorsag - need: hjelpe-til - text: Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad. -- id: pendler - need: komite - text: Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det. -- id: planlegger - need: komite - text: Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring. -- id: tilhenger - need: dele-utstyr - text: Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp. -- id: stige - need: dele-utstyr - text: Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har? -- id: snomaking - need: trenger-hjelp - text: Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør? -- id: nyoperert - need: trenger-hjelp - text: Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg? -- id: hjemmekontor - need: kan-hjelpe - text: Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv. -- id: pensjonert-elektriker - need: kan-hjelpe - text: Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting. -- id: kvittering - need: utlegg - text: Jeg kjøpte pølser og kakao til skøytedagen for 1 840 kroner, her er kvitteringa, vil ha det igjen. diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/arrangementer/_section.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/arrangementer/_section.yaml deleted file mode 100644 index 94afa0f..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/arrangementer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: arrangementer diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/arrangementer/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/arrangementer/index.yaml deleted file mode 100644 index 13a990e..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/arrangementer/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -alternatives: -- action: /arrangementer - consequence: - - Lagre - description: Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem. - features: - - description: '' - name: '' - resource: - requires_group: arrangementer - source: - bucket: frivillige - kind: kv - transitions: - - from: kontaktet - label: Sett opp - to: satt_opp - - from: kontaktet - label: Takket nei - to: takket_nei - - from: open - label: Merk som kontaktet - to: kontaktet - - from: open - label: Takket nei - to: takket_nei - name: Frivillige til arrangementer og dugnad -- action: /arrangementer - consequence: - - Inviter - description: De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: arrangementer - name: Inviter noen inn i Arrangementer -- action: /arrangementer - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: arrangementer - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer. -name: Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/decide/bli-medlem.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/decide/bli-medlem.yaml deleted file mode 100644 index d7dad96..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/decide/bli-medlem.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: '' - name: Utmeldt - self_transition: - bucket: husstander - label: Utmeldt - to: utmeldt -description: '' -name: What would you like to do? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/decide/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/decide/dele-utstyr.yaml deleted file mode 100644 index dfece00..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/decide/dele-utstyr.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Oppslaget fjernes fra siden, så ingen flere spør om å låne det. - name: Meld at utstyret er tatt ned - self_transition: - bucket: oppslag - label: Ta ned oppslaget - to: tatt_ned -description: Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån. -name: Skal oppslaget om utstyret fortsatt stå ute? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/decide/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/decide/kan-hjelpe.yaml deleted file mode 100644 index 2598b32..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/decide/kan-hjelpe.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre. - name: Ta en pause fra nabohjelpen - self_transition: - bucket: hjelpere - label: Trekk meg - to: trukket -description: Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå. -name: Vil du fortsatt kunne bli spurt om å hjelpe en nabo? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/decide/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/decide/trenger-hjelp.yaml deleted file mode 100644 index 7aad76e..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/decide/trenger-hjelp.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Da vet vi at naboen har fått hjelpen sin, og saken lukkes. - name: Meld fra at hjelpen er gitt - self_transition: - bucket: hjelpebehov - label: Merk som ordnet - to: ordnet -description: Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet. -name: Har naboen fått hjelpen de trengte? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/horingsinstans/_section.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/horingsinstans/_section.yaml deleted file mode 100644 index ad97e31..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/horingsinstans/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: horingsinstans diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/horingsinstans/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/horingsinstans/index.yaml deleted file mode 100644 index b5c4abb..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/horingsinstans/index.yaml +++ /dev/null @@ -1,59 +0,0 @@ -alternatives: -- action: /horingsinstans - consequence: - - Send svar - description: Her ligger innspill fra beboere til saker kommunen har på høring. - features: - - description: '' - name: '' - resource: - requires_group: horingsinstans - source: - bucket: innspill - kind: kv - transitions: - - from: open - label: Tatt med i svaret - to: tatt_med - - from: open - label: Ikke tatt med - to: ikke_tatt_med - name: Innspill til høringssvar -- action: /horingsinstans - consequence: - - Inviter - description: De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: horingsinstans - name: Inviter noen inn i Høringsinstans -- action: /horingsinstans - consequence: - - Send svar - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: horingsinstans - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her samler du innspillene og ser hva som er tatt med i velets høringssvar. -name: Hva sier vi i høringssvaret? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/index.yaml deleted file mode 100644 index 45176ff..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/index.yaml +++ /dev/null @@ -1,382 +0,0 @@ -alternatives: -- description: To ting først. Resten står lenger ned på siden. - features: - - description: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. - icon: lucide:users - name: Et vel som taler for Tomter, og et medlemskap du styrer selv - - description: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet. - icon: lucide:handshake - name: En nabo som stiller opp når du trenger det - name: Dette gjør velet -- description: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. - features: - - description: 'Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil)' - icon: lucide:list - name: Alt som er meldt ødelagt - - description: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) - icon: lucide:list - name: Oppslagstavla - - description: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger) - icon: lucide:list - name: Alle trafikkmeldinger - name: Se deg rundt først -- action: /received/bli-medlem - consequence: - - Bli medlem - description: Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet. - encouragements: - - Kasserer sender deg kontingenten på e-post rett etterpå. - features: - - description: Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem. - icon: lucide:coins - name: Etter innmelding - - description: Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden. - icon: lucide:user - name: Hvem svarer deg - - description: Ha adressen i Tomter og en e-post du bruker klar. - icon: lucide:user-plus - name: Meld deg inn - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: Adresse - name: adresse - placeholder: Tomterveien 12 - type: text - - label: Email - name: email - type: email - - label: Telefon - name: telefon - optional: true - placeholder: 123 45 678 - type: tel - name: Bli medlem av Tomter Vel - record_as: husstander -- action: /received/endre-medlemskap - consequence: - - Send endring - description: Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger. - encouragements: - - Det tar bare et par minutter, og kasserer ordner resten. - features: - - description: Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om. - icon: lucide:refresh-cw - name: Etter du sender inn - - description: Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden. - icon: lucide:user - name: Hvem svarer deg - - description: Skriv navnet ditt og hva som er nytt. - icon: lucide:pencil - name: Endre medlemskap - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: Adresse - name: adresse - placeholder: Ny adresse i Tomter - type: text - - label: Hva vil du endre? - name: hva_er_nytt - placeholder: Ny e-post, ny adresse, eller ønske om utmelding - type: textarea - name: Oppdater eller avslutt medlemskapet - record_as: medlemsendringer -- action: /received/trafikkfare - consequence: - - Send inn - description: Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre. - encouragements: - - Bare noen linjer om hva og hvor er nok til at vi kan følge opp. - features: - - description: Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist. - icon: lucide:route - name: Hva skjer videre - - description: Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no. - icon: lucide:car - name: Hvem leser dette - - description: Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer. - icon: lucide:alert-triangle - name: Meld trafikkfare - requirements: - - label: Hvor var det - name: hvor - placeholder: Krysset Tomterveien / Elvestien - type: text - - label: Hva så du - name: hva - placeholder: Dårlig sikt i krysset, biler kjører fort - type: textarea - - label: E-post (valgfritt) - name: epost - optional: true - placeholder: ola.nordmann@epost.no - type: email - name: Meld fra om en trafikkfare - record_as: trafikkmeldinger -- action: /received/anleggsfeil - consequence: - - Send inn - description: Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det. - encouragements: - - Det holder med noen ord om hva du så og hvor. - features: - - description: Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet. - icon: lucide:wrench - name: Hva skjer videre - - description: Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no. - icon: lucide:hammer - name: Hvem leser dette - - description: Fortell hva som er ødelagt og omtrent hvor det er. - icon: lucide:construction - name: Meld anleggsfeil - requirements: - - label: Hvor er det - name: hvor - options: - - Lekeplassen - - Elvestien - - Skøytebanen - - Et annet sted - type: select - - label: Hva er ødelagt - name: hva - placeholder: Løs planke på gjerdet ved husken - type: textarea - name: Meld fra om noe ødelagt - record_as: anleggsfeil -- action: /received/horingsinnspill - consequence: - - Send innspill - description: Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar. - encouragements: - - Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen. - features: - - description: Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen. - icon: lucide:route - name: Hva skjer videre - - description: Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no. - icon: lucide:users - name: Hvem leser dette - - description: Fortell hvilken sak det gjelder og hva du mener. - icon: lucide:megaphone - name: Send et høringsinnspill - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: Hvilken sak gjelder det? - name: sak - placeholder: Reguleringsplan for Tomterveien - type: text - - label: Hva mener du? - name: innspill - placeholder: Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen. - type: textarea - name: Få din mening med i høringssvaret - record_as: innspill -- action: /received/hjelpe-til - consequence: - - Meld meg på - description: 17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer. - encouragements: - - Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg. - features: - - description: Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit. - icon: lucide:clipboard-list - name: Hva skjer videre - - description: Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem leser dette - - description: Fortell kort hva du kan hjelpe til med. - icon: lucide:hand-helping - name: Meld deg som hjelper - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: Telefon - name: telefon - placeholder: 912 34 567 - type: tel - - label: Hva kan du hjelpe til med? - multiple: true - name: hva - options: - - 17. mai - - Juletregranstenning - - Skøytedag - - Dugnad på elvestien - - Det som trengs - type: select - name: Bli med på dugnad eller arrangement - record_as: frivillige -- action: /received/komite - consequence: - - Meld interesse - description: Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i. - encouragements: - - Det tar bare et minutt, og noen fra styret svarer deg. - features: - - description: Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå. - icon: lucide:clipboard-list - name: Hva skjer videre - - description: Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:handshake - name: Hvem leser dette - - description: Skriv hvilken komité du er interessert i. - icon: lucide:users - name: Meld deg til en komité - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: epost - placeholder: kari@eksempel.no - type: email - - label: Hvilken komité? - multiple: true - name: komite - options: - - Arrangementer - - Elvesti - - Høringsinstans - - Leke- og møteplasser - - Miljøgate - - Pendlerforhold - - Trafikkforhold - type: select - name: Sitt i en komité som betyr noe for deg - record_as: komitesoknader -- action: /received/trenger-hjelp - consequence: - - Be om hjelp - description: Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp. - encouragements: - - Vi finner en nabo som kan stille opp så fort som mulig. - features: - - description: Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed. - icon: lucide:hand-helping - name: Fra melding til hjelp - - description: Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem ser dette - - description: Skriv kort hva du trenger hjelp til. - icon: lucide:heart-handshake - name: Be om en hånd - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: email - placeholder: kari@eksempel.no - type: email - - label: Adresse - name: adresse - placeholder: Tomterveien 12 - type: text - - label: Hva trenger du hjelp til - name: hva - placeholder: Måke snø på trappa, handle inn litt mat - type: textarea - - label: Telefon - name: telefon - optional: true - placeholder: 123 45 678 - type: tel - name: Få en nabo til å stille opp - record_as: hjelpebehov -- action: /received/kan-hjelpe - consequence: - - Meld deg - description: Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer. - encouragements: - - Du blir bare kontaktet når noe passer for deg. - features: - - description: Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra. - icon: lucide:user-check - name: Fra påmelding til spørsmål - - description: Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no. - icon: lucide:heart-handshake - name: Hvem ser dette - - description: Fortell kort hva du kan bidra med. - icon: lucide:hand-helping - name: Meld deg som hjelper - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: email - placeholder: kari@eksempel.no - type: email - - label: Telefon - name: telefon - placeholder: 123 45 678 - type: tel - - label: Hva kan du hjelpe med - multiple: true - name: kan - options: - - Snømåking - - Handling - - Kjøring - - Småfiks i huset - - En prat og litt selskap - - Det som trengs - type: select - name: Bli spurt når en nabo trenger en hånd - record_as: hjelpere -- action: /received/dele-utstyr - consequence: - - Legg ut oppslag - description: Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det. - encouragements: - - Vi legger det ut så naboene kan se det. - features: - - description: Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen. - icon: lucide:clipboard-list - name: Fra oppslag til avtale - - description: Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem ser dette - - description: Skriv kort hva det gjelder, så folk skjønner det med en gang. - icon: lucide:package - name: Lån eller utlån - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: E-post - name: email - placeholder: ola@eksempel.no - type: email - - label: Har du eller trenger du - name: har_eller_trenger - options: - - Jeg har noe å låne ut - - Jeg trenger å låne noe - type: select - - label: Hva gjelder det - name: hva - placeholder: Hengerfeste til bil, tilhenger, stige - type: textarea - name: Lån ut eller lån av naboen - record_as: oppslag -description: Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står. -name: Hva gjør Tomter Vel, og hva kan du få her? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/kasserer/_section.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/kasserer/_section.yaml deleted file mode 100644 index 2f8af2f..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/kasserer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: kasserer diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/kasserer/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/kasserer/index.yaml deleted file mode 100644 index 8dda085..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/kasserer/index.yaml +++ /dev/null @@ -1,102 +0,0 @@ -alternatives: -- action: /kasserer - consequence: - - Lagre - description: Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: husstander - kind: kv - transitions: - - from: open - label: Registrer betaling - to: betalt - - from: open - label: Meld ut - to: utmeldt - name: Nye medlemmer som venter på registrering -- action: /kasserer - consequence: - - Lagre - description: Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: medlemsendringer - kind: kv - transitions: - - from: open - label: Registrer endring - to: oppdatert - name: Endringer som venter på å bli registrert -- action: /kasserer - consequence: - - Lagre - description: Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: utlegg - kind: kv - transitions: - - from: godkjent - label: Merk som utbetalt - to: utbetalt - - from: godkjent - label: Avvis likevel - to: avvist - - from: open - label: Godkjenn utlegg - to: godkjent - - from: open - label: Avvis utlegg - to: avvist - name: Utlegg som venter på deg -- action: /kasserer - consequence: - - Inviter - description: De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: kasserer - name: Inviter noen inn i kassereren -- action: /kasserer - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer. -name: Hva venter på meg som kasserer akkurat nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/komiteer/_section.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/komiteer/_section.yaml deleted file mode 100644 index 57e3295..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/komiteer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: komiteer diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/komiteer/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/komiteer/index.yaml deleted file mode 100644 index ccf6e5e..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/komiteer/index.yaml +++ /dev/null @@ -1,44 +0,0 @@ -alternatives: -- action: /komiteer/utlegg - consequence: - - Send utlegg - description: Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake. - name: Få tilbake det du har lagt ut -- action: /komiteer - consequence: - - Inviter - description: De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: komiteer - name: Inviter noen inn i komiteene -- action: /komiteer - consequence: - - Confirm - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: komiteer - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp. -name: Hva står ubehandlet i komiteen din nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/komiteer/utlegg-sent.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/komiteer/utlegg-sent.yaml deleted file mode 100644 index e347ad3..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/komiteer/utlegg-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga. - name: Pengene kommer på konto -- action: /komiteer - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Utlegget er sendt til kasserer. Du får beskjed når det er sjekket. -name: Hva skjer med utlegget mitt nå? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/komiteer/utlegg.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/komiteer/utlegg.yaml deleted file mode 100644 index 5d94ad3..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/komiteer/utlegg.yaml +++ /dev/null @@ -1,38 +0,0 @@ -alternatives: -- action: /komiteer/utlegg-sent - consequence: - - Send inn - description: Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten. - encouragements: - - Legg ved bilag om du har det, så går det raskere. - features: - - description: Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor. - icon: lucide:wallet - name: Fra krav til utbetaling - - description: Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster. - icon: lucide:coins - name: Kasserer ser dette - - description: Ha kvittering eller bilag klart før du fyller ut. - icon: lucide:receipt - name: Krav om refusjon - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: Beløp - name: belop - placeholder: 450 kr - type: text - - label: Hva gjaldt det - name: hva - placeholder: Kaffe og kjeks til dugnaden - type: textarea - name: Få pengene tilbake - record_as: utlegg -description: Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake. -followup: false -name: Har du lagt ut penger for komiteen og vil ha dem tilbake? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/lekeplasser/_section.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/lekeplasser/_section.yaml deleted file mode 100644 index 1652221..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/lekeplasser/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: lekeplasser diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/lekeplasser/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/lekeplasser/index.yaml deleted file mode 100644 index 215a9bc..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/lekeplasser/index.yaml +++ /dev/null @@ -1,59 +0,0 @@ -alternatives: -- action: /lekeplasser - consequence: - - Lagre - description: Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses. - features: - - description: '' - name: '' - resource: - requires_group: lekeplasser - source: - bucket: anleggsfeil - kind: kv - transitions: - - from: open - label: Ta tak i saken - to: tatt_tak_i - - from: tatt_tak_i - label: Merk som utbedret - to: utbedret - name: Det som er meldt inn av skader -- action: /lekeplasser - consequence: - - Inviter - description: De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: lekeplasser - name: Inviter noen inn i Leke- og møteplasser -- action: /lekeplasser - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: lekeplasser - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset. -name: Hva må fikses på lekeplassene og stien nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/nabohjelp/_section.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/nabohjelp/_section.yaml deleted file mode 100644 index 5b3a2ad..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/nabohjelp/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: nabohjelp diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/nabohjelp/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/nabohjelp/index.yaml deleted file mode 100644 index ab4db6b..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/nabohjelp/index.yaml +++ /dev/null @@ -1,85 +0,0 @@ -alternatives: -- action: /nabohjelp - consequence: - - Lagre - description: Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: hjelpebehov - kind: kv - transitions: - - from: formidlet - label: Meld ordnet - to: ordnet - - from: formidlet - label: Meld ikke løst - to: ikke_lost - - from: open - label: Koble til nabo - to: formidlet - - from: open - label: Meld ikke løst - to: ikke_lost - name: Naboer som trenger en hånd -- action: /nabohjelp - consequence: - - Lagre - description: Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: hjelpere - kind: kv - transitions: - - from: open - label: Registrer som hjelper - to: registrert - - from: open - label: Meld trukket - to: trukket - name: Naboer som kan stille opp -- action: /nabohjelp - consequence: - - Inviter - description: De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: nabohjelp - name: Inviter noen inn i nabohjelpen -- action: /nabohjelp - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her kobler du naboer som trenger hjelp med dem som kan stille opp. -name: Hvem trenger hjelp, og hvem kan stille opp? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/anleggsfeil.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/anleggsfeil.yaml deleted file mode 100644 index 09d4976..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/anleggsfeil.yaml +++ /dev/null @@ -1,15 +0,0 @@ -alternatives: -- description: Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg. - name: Komiteen tar tak i det -- action: /status/anleggsfeil - consequence: - - Se meldte feil - description: Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet. - name: Se andre meldte feil -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt. -name: Hva skjer med meldingen min nå? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/bli-medlem.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/bli-medlem.yaml deleted file mode 100644 index 533f8a6..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/bli-medlem.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten. - name: Kasserer sender deg betalingsinfo -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert. -name: Hva skjer etter at jeg har meldt meg inn? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/dele-utstyr.yaml deleted file mode 100644 index 761313b..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/dele-utstyr.yaml +++ /dev/null @@ -1,15 +0,0 @@ -alternatives: -- description: En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne. - name: Styret legger det ut for deg -- action: /status/oppslag - consequence: - - Se hva naboer deler - description: Se hva andre i Tomter har lagt ut til utlån akkurat nå. - name: Se alt naboene deler -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan. -name: Hva skjer med det jeg har lagt ut? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/endre-medlemskap.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/endre-medlemskap.yaml deleted file mode 100644 index c58d676..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/endre-medlemskap.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg. - name: Kasserer retter opp opplysningene -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut. -name: Hva skjer nå med det jeg meldte inn? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/hjelpe-til.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/hjelpe-til.yaml deleted file mode 100644 index 3c61af4..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/hjelpe-til.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden. - name: Komiteen tar kontakt -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg. -name: Hva skjer nå som jeg har meldt meg? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/horingsinnspill.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/horingsinnspill.yaml deleted file mode 100644 index bf87c92..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/horingsinnspill.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med. - name: Innspillet ditt inn i vurderingen -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Innspillet ditt er sendt til høringsinstansen i velet. -name: Hva skjer med det jeg har sagt om saken? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/kan-hjelpe.yaml deleted file mode 100644 index 0ac67b5..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/kan-hjelpe.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte. - name: Du blir kontaktet ved behov -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe. -name: Hva skjer nå som jeg har registrert meg? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/komite.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/komite.yaml deleted file mode 100644 index a36dfda..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/komite.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer. - name: Vi finner riktig komité til deg -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg. -name: Hva skjer nå som jeg har meldt interesse for en komité? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/trafikkfare.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/trafikkfare.yaml deleted file mode 100644 index 82da494..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/trafikkfare.yaml +++ /dev/null @@ -1,15 +0,0 @@ -alternatives: -- description: Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs. - name: Trafikkomiteen tar den videre -- action: /status/trafikkmeldinger - consequence: - - Se andre trafikkfarer - description: Se hva andre har meldt inn, og status på sakene. - name: Andre meldte trafikkfarer -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Meldingen din om trafikkfaren er sendt til komiteen for trafikk. -name: Hva skjer med meldingen min nå? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/trenger-hjelp.yaml deleted file mode 100644 index beec6e5..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/received/trenger-hjelp.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer. - name: Vi finner en nabo til deg -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp. -name: Hva skjer nå som jeg har bedt om hjelp? diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/status/anleggsfeil/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/status/anleggsfeil/index.yaml deleted file mode 100644 index 805a464..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/status/anleggsfeil/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- description: Alle meldinger er åpne for alle å se. - features: - - description: '' - name: '' - resource: - jq: '.[] | .responses |= {hva: .hva, hvor: .hvor}' - public: true - source: - bucket: anleggsfeil - kind: kv - name: Status på meldte anleggsfeil -- action: / - consequence: - - Tilbake til meldinger - description: '' - name: Tilbake til meldinger -description: Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet. -name: Hva skjer med det jeg har meldt fra om? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/status/oppslag/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/status/oppslag/index.yaml deleted file mode 100644 index cf172af..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/status/oppslag/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- description: Åpen liste – navn og detaljer vises ikke. - features: - - description: '' - name: '' - resource: - jq: '.[] | .responses |= {har_eller_trenger: .har_eller_trenger, hva: .hva}' - public: true - source: - bucket: oppslag - kind: kv - name: Oversikt over det som er meldt inn -- action: / - consequence: - - Tilbake - description: '' - name: Tilbake -description: Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet. -name: Hva er sendt inn, og hvor langt har det kommet? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/status/trafikkmeldinger/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/status/trafikkmeldinger/index.yaml deleted file mode 100644 index 7444f44..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/status/trafikkmeldinger/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- description: Alle meldinger som er sendt inn, og hvor de står nå. - features: - - description: '' - name: '' - resource: - jq: '.[] | .responses |= {hva: .hva, hvor: .hvor}' - public: true - source: - bucket: trafikkmeldinger - kind: kv - name: Trafikkmeldinger og status -- action: / - consequence: - - Tilbake - description: '' - name: Tilbake -description: Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet. -name: Er det meldt fra om noe farlig i trafikken der jeg bor? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/styret/_section.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/styret/_section.yaml deleted file mode 100644 index 5a34160..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/styret/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: styret diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/styret/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/styret/index.yaml deleted file mode 100644 index 1a27364..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/styret/index.yaml +++ /dev/null @@ -1,219 +0,0 @@ -alternatives: -- action: /styret - consequence: - - Lagre - description: Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: innspill - kind: kv - transitions: [] - name: Høringsinnspill fra beboerne -- action: /styret - consequence: - - Lagre - description: Her ligger alle som har meldt seg til en komité og venter på en plass. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: komitesoknader - kind: kv - transitions: - - from: open - label: Sett i komité - to: plassert - - from: open - label: Avslå søknaden - to: avslatt - name: Søknader til komiteene -- action: /styret - consequence: - - Lagre - description: Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: oppslag - kind: kv - transitions: - - from: open - label: Legg ut oppslaget - to: lagt_ut - - from: open - label: Ta ned oppslaget - to: tatt_ned - name: Utstyr til utlån blant naboer -- action: /styret - consequence: - - Lagre - description: Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: trafikkmeldinger - kind: kv - transitions: [] - name: Meldinger om trafikkfarer -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: arrangementer - name: Inviter noen inn i Arrangementer -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: horingsinstans - name: Inviter noen inn i Høringsinstans -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: kasserer - name: Inviter noen inn i kassereren -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: komiteer - name: Inviter noen inn i komiteene -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: lekeplasser - name: Inviter noen inn i Leke- og møteplasser -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: nabohjelp - name: Inviter noen inn i nabohjelpen -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: styret - name: Inviter noen inn i styret -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: trafikk - name: Inviter noen inn i Trafikkforhold -- action: /styret - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: 'Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.' -name: Hva venter på styret akkurat nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/trafikk/_section.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/trafikk/_section.yaml deleted file mode 100644 index dbe5246..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/trafikk/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: trafikk diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/trafikk/index.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/trafikk/index.yaml deleted file mode 100644 index d14490e..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/questions/trafikk/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -alternatives: -- action: /trafikk - consequence: - - Lagre - description: Farlige steder i trafikken som naboer har meldt inn. - features: - - description: '' - name: '' - resource: - requires_group: trafikk - source: - bucket: trafikkmeldinger - kind: kv - transitions: - - from: open - label: Ta opp med kommunen - to: tatt_opp - - from: open - label: Avvis meldingen - to: avvist - - from: tatt_opp - label: Meld ordnet - to: ordnet - - from: tatt_opp - label: Avvis meldingen - to: avvist - name: Farlige steder i trafikken -- action: /trafikk - consequence: - - Inviter - description: De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: trafikk - name: Inviter noen inn i Trafikkforhold -- action: /trafikk - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: trafikk - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier. -name: Hvilke trafikkfarer må følges opp? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/site.yaml b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/site.yaml deleted file mode 100644 index c2ac781..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/site.yaml +++ /dev/null @@ -1,5 +0,0 @@ -lang: no -mail: - from: Tomter Vel - reply_to: post@tomtervel.no -title: Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/words.json b/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/words.json deleted file mode 100644 index 5bc15b3..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/site/words.json +++ /dev/null @@ -1,900 +0,0 @@ -{ - "aggregates.yaml": { - "hjelpebehov": { - "formidlet": { - "body": "Hei {navn},\n\nDet du sendte om at en nabo stiller opp er nå formidlet.\n\nDet du kan gjøre nå: {site}/decide/trenger-hjelp?chain={chain}&email={email}\n\nStyret i Tomter Vel på post@tomtervel.no", - "subject": "Tomter Vel: Formidlet" - }, - "open": { - "body": "Hei {navn},\n\nVi har mottatt det du sendte om at en nabo stiller opp.\n\nStyret i Tomter Vel på post@tomtervel.no", - "subject": "Tomter Vel: Open" - }, - "ordnet": { - "body": "Hei {navn},\n\nDet du sendte om at en nabo stiller opp er nå ordnet.\n\nStyret i Tomter Vel på post@tomtervel.no", - "subject": "Tomter Vel: Ordnet" - } - }, - "husstander": { - "betalt": { - "body": "Hei {navn},\n\nDet du sendte om å bli medlem og få betalt kontingenten er nå betalt.\n\nStyret i Tomter Vel på post@tomtervel.no", - "subject": "Tomter Vel: Betalt" - }, - "open": { - "body": "Hei {navn},\n\nVi har mottatt det du sendte om å bli medlem og få betalt kontingenten.\n\nDet du kan gjøre nå: {site}/decide/bli-medlem?chain={chain}&email={email}\n\nStyret i Tomter Vel på post@tomtervel.no", - "subject": "Tomter Vel: Open" - } - }, - "oppslag": { - "lagt_ut": { - "body": "Hei {navn},\n\nDet du sendte om et oppslag som naboene ser er nå lagt ut.\n\nStyret i Tomter Vel på post@tomtervel.no", - "subject": "Tomter Vel: Lagt ut" - } - } - }, - "questions/arrangementer/index.yaml": { - "buckets": { - "frivillige": { - "description": "Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem.", - "heading": "Frivillige til arrangementer og dugnad", - "moves": { - "kontaktet->satt_opp": "Sett opp", - "kontaktet->takket_nei": "Takket nei", - "open->kontaktet": "Merk som kontaktet", - "open->takket_nei": "Takket nei" - } - } - }, - "confirm": "Lagre", - "description": "Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "arrangementer": { - "button": "Inviter", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Arrangementer", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp?" - }, - "questions/decide/bli-medlem.yaml": { - "description": "", - "moves": { - "utmeldt": { - "button": "Utmeldt", - "description": "", - "heading": "Utmeldt" - } - }, - "question": "What would you like to do?" - }, - "questions/decide/dele-utstyr.yaml": { - "description": "Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån.", - "moves": { - "tatt_ned": { - "button": "Ta ned oppslaget", - "description": "Oppslaget fjernes fra siden, så ingen flere spør om å låne det.", - "heading": "Meld at utstyret er tatt ned" - } - }, - "question": "Skal oppslaget om utstyret fortsatt stå ute?" - }, - "questions/decide/kan-hjelpe.yaml": { - "description": "Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå.", - "moves": { - "trukket": { - "button": "Trekk meg", - "description": "Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre.", - "heading": "Ta en pause fra nabohjelpen" - } - }, - "question": "Vil du fortsatt kunne bli spurt om å hjelpe en nabo?" - }, - "questions/decide/trenger-hjelp.yaml": { - "description": "Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet.", - "moves": { - "ordnet": { - "button": "Merk som ordnet", - "description": "Da vet vi at naboen har fått hjelpen sin, og saken lukkes.", - "heading": "Meld fra at hjelpen er gitt" - } - }, - "question": "Har naboen fått hjelpen de trengte?" - }, - "questions/horingsinstans/index.yaml": { - "buckets": { - "innspill": { - "description": "Her ligger innspill fra beboere til saker kommunen har på høring.", - "heading": "Innspill til høringssvar", - "moves": { - "open->ikke_tatt_med": "Ikke tatt med", - "open->tatt_med": "Tatt med i svaret" - } - } - }, - "confirm": "Send svar", - "description": "Her samler du innspillene og ser hva som er tatt med i velets høringssvar.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "horingsinstans": { - "button": "Inviter", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Høringsinstans", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva sier vi i høringssvaret?" - }, - "questions/index.yaml": { - "description": "Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står.", - "doors": {}, - "needs": { - "anleggsfeil": { - "button": "Send inn", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.", - "encouragement": "Det holder med noen ord om hva du så og hvor.", - "form_description": "Fortell hva som er ødelagt og omtrent hvor det er.", - "form_title": "Meld anleggsfeil", - "heading": "Meld fra om noe ødelagt", - "hints": { - "hva": "Løs planke på gjerdet ved husken", - "hvor": "" - }, - "icon": "construction", - "labels": { - "hva": "Hva er ødelagt", - "hvor": "Hvor er det" - }, - "road_description": "Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet.", - "road_icon": "lucide:wrench", - "road_title": "Hva skjer videre", - "who_description": "Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:hammer", - "who_title": "Hvem leser dette" - }, - "bli-medlem": { - "button": "Bli medlem", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.", - "encouragement": "Kasserer sender deg kontingenten på e-post rett etterpå.", - "form_description": "Ha adressen i Tomter og en e-post du bruker klar.", - "form_title": "Meld deg inn", - "heading": "Bli medlem av Tomter Vel", - "hints": { - "adresse": "Tomterveien 12", - "email": "", - "navn": "Ola Nordmann", - "telefon": "123 45 678" - }, - "icon": "user-plus", - "labels": { - "adresse": "Adresse", - "email": "Email", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem.", - "road_icon": "lucide:coins", - "road_title": "Etter innmelding", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "who_title": "Hvem svarer deg" - }, - "dele-utstyr": { - "button": "Legg ut oppslag", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.", - "encouragement": "Vi legger det ut så naboene kan se det.", - "form_description": "Skriv kort hva det gjelder, så folk skjønner det med en gang.", - "form_title": "Lån eller utlån", - "heading": "Lån ut eller lån av naboen", - "hints": { - "email": "ola@eksempel.no", - "har_eller_trenger": "", - "hva": "Hengerfeste til bil, tilhenger, stige", - "navn": "Ola Nordmann" - }, - "icon": "package", - "labels": { - "email": "E-post", - "har_eller_trenger": "Har du eller trenger du", - "hva": "Hva gjelder det", - "navn": "Navn" - }, - "road_description": "Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen.", - "road_icon": "lucide:clipboard-list", - "road_title": "Fra oppslag til avtale", - "who_description": "Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem ser dette" - }, - "endre-medlemskap": { - "button": "Send endring", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.", - "encouragement": "Det tar bare et par minutter, og kasserer ordner resten.", - "form_description": "Skriv navnet ditt og hva som er nytt.", - "form_title": "Endre medlemskap", - "heading": "Oppdater eller avslutt medlemskapet", - "hints": { - "adresse": "Ny adresse i Tomter", - "hva_er_nytt": "Ny e-post, ny adresse, eller ønske om utmelding", - "navn": "Ola Nordmann" - }, - "icon": "pencil", - "labels": { - "adresse": "Adresse", - "hva_er_nytt": "Hva vil du endre?", - "navn": "Navn" - }, - "road_description": "Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om.", - "road_icon": "lucide:refresh-cw", - "road_title": "Etter du sender inn", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "who_title": "Hvem svarer deg" - }, - "hjelpe-til": { - "button": "Meld meg på", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.", - "encouragement": "Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg.", - "form_description": "Fortell kort hva du kan hjelpe til med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli med på dugnad eller arrangement", - "hints": { - "hva": "", - "navn": "Kari Nordmann", - "telefon": "912 34 567" - }, - "icon": "hand-helping", - "labels": { - "hva": "Hva kan du hjelpe til med?", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit.", - "road_icon": "lucide:clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - }, - "horingsinnspill": { - "button": "Send innspill", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "encouragement": "Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen.", - "form_description": "Fortell hvilken sak det gjelder og hva du mener.", - "form_title": "Send et høringsinnspill", - "heading": "Få din mening med i høringssvaret", - "hints": { - "innspill": "Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen.", - "navn": "Kari Nordmann", - "sak": "Reguleringsplan for Tomterveien" - }, - "icon": "megaphone", - "labels": { - "innspill": "Hva mener du?", - "navn": "Navn", - "sak": "Hvilken sak gjelder det?" - }, - "road_description": "Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - }, - "kan-hjelpe": { - "button": "Meld deg", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.", - "encouragement": "Du blir bare kontaktet når noe passer for deg.", - "form_description": "Fortell kort hva du kan bidra med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli spurt når en nabo trenger en hånd", - "hints": { - "email": "kari@eksempel.no", - "kan": "", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "hand-helping", - "labels": { - "email": "E-post", - "kan": "Hva kan du hjelpe med", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra.", - "road_icon": "lucide:user-check", - "road_title": "Fra påmelding til spørsmål", - "who_description": "Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no.", - "who_icon": "lucide:heart-handshake", - "who_title": "Hvem ser dette" - }, - "komite": { - "button": "Meld interesse", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i.", - "encouragement": "Det tar bare et minutt, og noen fra styret svarer deg.", - "form_description": "Skriv hvilken komité du er interessert i.", - "form_title": "Meld deg til en komité", - "heading": "Sitt i en komité som betyr noe for deg", - "hints": { - "epost": "kari@eksempel.no", - "komite": "", - "navn": "Kari Nordmann" - }, - "icon": "users", - "labels": { - "epost": "E-post", - "komite": "Hvilken komité?", - "navn": "Navn" - }, - "road_description": "Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå.", - "road_icon": "lucide:clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:handshake", - "who_title": "Hvem leser dette" - }, - "trafikkfare": { - "button": "Send inn", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.", - "encouragement": "Bare noen linjer om hva og hvor er nok til at vi kan følge opp.", - "form_description": "Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer.", - "form_title": "Meld trafikkfare", - "heading": "Meld fra om en trafikkfare", - "hints": { - "epost": "ola.nordmann@epost.no", - "hva": "Dårlig sikt i krysset, biler kjører fort", - "hvor": "Krysset Tomterveien / Elvestien" - }, - "icon": "alert-triangle", - "labels": { - "epost": "E-post (valgfritt)", - "hva": "Hva så du", - "hvor": "Hvor var det" - }, - "road_description": "Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:car", - "who_title": "Hvem leser dette" - }, - "trenger-hjelp": { - "button": "Be om hjelp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.", - "encouragement": "Vi finner en nabo som kan stille opp så fort som mulig.", - "form_description": "Skriv kort hva du trenger hjelp til.", - "form_title": "Be om en hånd", - "heading": "Få en nabo til å stille opp", - "hints": { - "adresse": "Tomterveien 12", - "email": "kari@eksempel.no", - "hva": "Måke snø på trappa, handle inn litt mat", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "heart-handshake", - "labels": { - "adresse": "Adresse", - "email": "E-post", - "hva": "Hva trenger du hjelp til", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed.", - "road_icon": "lucide:hand-helping", - "road_title": "Fra melding til hjelp", - "who_description": "Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem ser dette" - } - }, - "opener": { - "description": "To ting først. Resten står lenger ned på siden.", - "features": { - "medlem": { - "description": "Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil.", - "heading": "Et vel som taler for Tomter, og et medlemskap du styrer selv", - "icon": "users" - }, - "nabo": { - "description": "Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.", - "heading": "En nabo som stiller opp når du trenger det", - "icon": "handshake" - } - }, - "heading": "Dette gjør velet" - }, - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "shopping": { - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.", - "heading": "Se deg rundt først", - "items": { - "status-anleggsfeil": { - "description": "Lekeplassen og stien: det som er meldt, og det som er fikset.", - "heading": "Alt som er meldt ødelagt", - "icon": "list" - }, - "status-oppslag": { - "description": "Det naboene har å låne ut, og det de trenger å låne.", - "heading": "Oppslagstavla", - "icon": "list" - }, - "status-trafikkmeldinger": { - "description": "Farlige steder naboene har meldt, og hva velet har gjort med dem.", - "heading": "Alle trafikkmeldinger", - "icon": "list" - } - } - } - }, - "questions/kasserer/index.yaml": { - "buckets": { - "husstander": { - "description": "Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem.", - "heading": "Nye medlemmer som venter på registrering", - "moves": { - "open->betalt": "Registrer betaling", - "open->utmeldt": "Meld ut" - } - }, - "medlemsendringer": { - "description": "Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert.", - "heading": "Endringer som venter på å bli registrert", - "moves": { - "open->oppdatert": "Registrer endring" - } - }, - "utlegg": { - "description": "Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling.", - "heading": "Utlegg som venter på deg", - "moves": { - "godkjent->avvist": "Avvis likevel", - "godkjent->utbetalt": "Merk som utbetalt", - "open->avvist": "Avvis utlegg", - "open->godkjent": "Godkjenn utlegg" - } - } - }, - "confirm": "Lagre", - "description": "Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "kasserer": { - "button": "Inviter", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i kassereren", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva venter på meg som kasserer akkurat nå?" - }, - "questions/komiteer/index.yaml": { - "buckets": {}, - "confirm": "Confirm", - "description": "Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "komiteer": { - "button": "Inviter", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i komiteene", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": { - "utlegg": { - "button": "Send utlegg", - "description": "Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake.", - "heading": "Få tilbake det du har lagt ut" - } - }, - "question": "Hva står ubehandlet i komiteen din nå?" - }, - "questions/komiteer/utlegg-sent.yaml": { - "back": "Til forsiden", - "description": "Utlegget er sendt til kasserer. Du får beskjed når det er sjekket.", - "next_description": "Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga.", - "next_heading": "Pengene kommer på konto", - "question": "Hva skjer med utlegget mitt nå?" - }, - "questions/komiteer/utlegg.yaml": { - "button": "Send inn", - "description": "Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten.", - "encouragement": "Legg ved bilag om du har det, så går det raskere.", - "form_description": "Ha kvittering eller bilag klart før du fyller ut.", - "form_title": "Krav om refusjon", - "heading": "Få pengene tilbake", - "hints": { - "belop": "450 kr", - "hva": "Kaffe og kjeks til dugnaden", - "navn": "Kari Nordmann" - }, - "icon": "receipt", - "labels": { - "belop": "Beløp", - "hva": "Hva gjaldt det", - "navn": "Navn" - }, - "page_description": "Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake.", - "question": "Har du lagt ut penger for komiteen og vil ha dem tilbake?", - "road_description": "Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor.", - "road_icon": "lucide:wallet", - "road_title": "Fra krav til utbetaling", - "who_description": "Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster.", - "who_icon": "lucide:coins", - "who_title": "Kasserer ser dette" - }, - "questions/lekeplasser/index.yaml": { - "buckets": { - "anleggsfeil": { - "description": "Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses.", - "heading": "Det som er meldt inn av skader", - "moves": { - "open->tatt_tak_i": "Ta tak i saken", - "tatt_tak_i->utbedret": "Merk som utbedret" - } - } - }, - "confirm": "Lagre", - "description": "Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "lekeplasser": { - "button": "Inviter", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Leke- og møteplasser", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva må fikses på lekeplassene og stien nå?" - }, - "questions/nabohjelp/index.yaml": { - "buckets": { - "hjelpebehov": { - "description": "Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe.", - "heading": "Naboer som trenger en hånd", - "moves": { - "formidlet->ikke_lost": "Meld ikke løst", - "formidlet->ordnet": "Meld ordnet", - "open->formidlet": "Koble til nabo", - "open->ikke_lost": "Meld ikke løst" - } - }, - "hjelpere": { - "description": "Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem.", - "heading": "Naboer som kan stille opp", - "moves": { - "open->registrert": "Registrer som hjelper", - "open->trukket": "Meld trukket" - } - } - }, - "confirm": "Lagre", - "description": "Her kobler du naboer som trenger hjelp med dem som kan stille opp.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "nabohjelp": { - "button": "Inviter", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i nabohjelpen", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvem trenger hjelp, og hvem kan stille opp?" - }, - "questions/received/anleggsfeil.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt.", - "next_description": "Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg.", - "next_heading": "Komiteen tar tak i det", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se meldte feil", - "description": "Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet.", - "heading": "Se andre meldte feil" - } - }, - "questions/received/bli-medlem.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert.", - "next_description": "Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten.", - "next_heading": "Kasserer sender deg betalingsinfo", - "question": "Hva skjer etter at jeg har meldt meg inn?" - }, - "questions/received/dele-utstyr.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan.", - "next_description": "En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne.", - "next_heading": "Styret legger det ut for deg", - "question": "Hva skjer med det jeg har lagt ut?", - "see_all": { - "button": "Se hva naboer deler", - "description": "Se hva andre i Tomter har lagt ut til utlån akkurat nå.", - "heading": "Se alt naboene deler" - } - }, - "questions/received/endre-medlemskap.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut.", - "next_description": "Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg.", - "next_heading": "Kasserer retter opp opplysningene", - "question": "Hva skjer nå med det jeg meldte inn?" - }, - "questions/received/hjelpe-til.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg.", - "next_description": "Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden.", - "next_heading": "Komiteen tar kontakt", - "question": "Hva skjer nå som jeg har meldt meg?" - }, - "questions/received/horingsinnspill.yaml": { - "back": "Tilbake til forsiden", - "description": "Innspillet ditt er sendt til høringsinstansen i velet.", - "next_description": "De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med.", - "next_heading": "Innspillet ditt inn i vurderingen", - "question": "Hva skjer med det jeg har sagt om saken?" - }, - "questions/received/kan-hjelpe.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe.", - "next_description": "Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte.", - "next_heading": "Du blir kontaktet ved behov", - "question": "Hva skjer nå som jeg har registrert meg?" - }, - "questions/received/komite.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg.", - "next_description": "Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer.", - "next_heading": "Vi finner riktig komité til deg", - "question": "Hva skjer nå som jeg har meldt interesse for en komité?" - }, - "questions/received/trafikkfare.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din om trafikkfaren er sendt til komiteen for trafikk.", - "next_description": "Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs.", - "next_heading": "Trafikkomiteen tar den videre", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se andre trafikkfarer", - "description": "Se hva andre har meldt inn, og status på sakene.", - "heading": "Andre meldte trafikkfarer" - } - }, - "questions/received/trenger-hjelp.yaml": { - "back": "Til forsiden", - "description": "Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp.", - "next_description": "Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer.", - "next_heading": "Vi finner en nabo til deg", - "question": "Hva skjer nå som jeg har bedt om hjelp?" - }, - "questions/status/anleggsfeil/index.yaml": { - "back": "Tilbake til meldinger", - "description": "Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet.", - "heading": "Status på meldte anleggsfeil", - "list_description": "Alle meldinger er åpne for alle å se.", - "question": "Hva skjer med det jeg har meldt fra om?" - }, - "questions/status/oppslag/index.yaml": { - "back": "Tilbake", - "description": "Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet.", - "heading": "Oversikt over det som er meldt inn", - "list_description": "Åpen liste – navn og detaljer vises ikke.", - "question": "Hva er sendt inn, og hvor langt har det kommet?" - }, - "questions/status/trafikkmeldinger/index.yaml": { - "back": "Tilbake", - "description": "Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet.", - "heading": "Trafikkmeldinger og status", - "list_description": "Alle meldinger som er sendt inn, og hvor de står nå.", - "question": "Er det meldt fra om noe farlig i trafikken der jeg bor?" - }, - "questions/styret/index.yaml": { - "buckets": { - "innspill": { - "description": "Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar.", - "heading": "Høringsinnspill fra beboerne", - "moves": {} - }, - "komitesoknader": { - "description": "Her ligger alle som har meldt seg til en komité og venter på en plass.", - "heading": "Søknader til komiteene", - "moves": { - "open->avslatt": "Avslå søknaden", - "open->plassert": "Sett i komité" - } - }, - "oppslag": { - "description": "Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut.", - "heading": "Utstyr til utlån blant naboer", - "moves": { - "open->lagt_ut": "Legg ut oppslaget", - "open->tatt_ned": "Ta ned oppslaget" - } - }, - "trafikkmeldinger": { - "description": "Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier.", - "heading": "Meldinger om trafikkfarer", - "moves": {} - } - }, - "confirm": "Lagre", - "description": "Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "arrangementer": { - "button": "Inviter", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Arrangementer", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "horingsinstans": { - "button": "Inviter", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Høringsinstans", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "kasserer": { - "button": "Inviter", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i kassereren", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "komiteer": { - "button": "Inviter", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i komiteene", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "lekeplasser": { - "button": "Inviter", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Leke- og møteplasser", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "nabohjelp": { - "button": "Inviter", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i nabohjelpen", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "styret": { - "button": "Inviter", - "description": "De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i styret", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "trafikk": { - "button": "Inviter", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Trafikkforhold", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva venter på styret akkurat nå?" - }, - "questions/trafikk/index.yaml": { - "buckets": { - "trafikkmeldinger": { - "description": "Farlige steder i trafikken som naboer har meldt inn.", - "heading": "Farlige steder i trafikken", - "moves": { - "open->avvist": "Avvis meldingen", - "open->tatt_opp": "Ta opp med kommunen", - "tatt_opp->avvist": "Avvis meldingen", - "tatt_opp->ordnet": "Meld ordnet" - } - } - }, - "confirm": "Lagre", - "description": "Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "trafikk": { - "button": "Inviter", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Trafikkforhold", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvilke trafikkfarer må følges opp?" - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/tasks-full.jsonl b/vendor/trainer/runs/tomtervel-flat-2026-09-23/tasks-full.jsonl deleted file mode 100644 index 55a5595..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/tasks-full.jsonl +++ /dev/null @@ -1,20 +0,0 @@ -{"id":"nyinnflyttet@/","persona":"nyinnflyttet","need":"bli-medlem","page":"/","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Dette gjør velet":"To ting først. Resten står lenger ned på siden.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.","Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.","Se deg rundt først":"Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Bli medlem av Tomter Vel"]} -{"id":"glemte-a-betale@/","persona":"glemte-a-betale","need":"bli-medlem","page":"/","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Dette gjør velet":"To ting først. Resten står lenger ned på siden.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.","Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.","Se deg rundt først":"Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Bli medlem av Tomter Vel"]} -{"id":"ny-epost@/","persona":"ny-epost","need":"endre-medlemskap","page":"/","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Dette gjør velet":"To ting først. Resten står lenger ned på siden.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.","Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.","Se deg rundt først":"Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Oppdater eller avslutt medlemskapet"]} -{"id":"flytter@/","persona":"flytter","need":"endre-medlemskap","page":"/","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Dette gjør velet":"To ting først. Resten står lenger ned på siden.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.","Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.","Se deg rundt først":"Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Oppdater eller avslutt medlemskapet"]} -{"id":"skolevei@/","persona":"skolevei","need":"trafikkfare","page":"/","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Dette gjør velet":"To ting først. Resten står lenger ned på siden.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.","Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.","Se deg rundt først":"Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Meld fra om en trafikkfare"]} -{"id":"busslomme@/","persona":"busslomme","need":"trafikkfare","page":"/","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Dette gjør velet":"To ting først. Resten står lenger ned på siden.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.","Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.","Se deg rundt først":"Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Meld fra om en trafikkfare"]} -{"id":"huske@/","persona":"huske","need":"anleggsfeil","page":"/","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Dette gjør velet":"To ting først. Resten står lenger ned på siden.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.","Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.","Se deg rundt først":"Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Meld fra om noe ødelagt"]} -{"id":"bru@/","persona":"bru","need":"anleggsfeil","page":"/","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Dette gjør velet":"To ting først. Resten står lenger ned på siden.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.","Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.","Se deg rundt først":"Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Meld fra om noe ødelagt"]} -{"id":"blokker@/","persona":"blokker","need":"horingsinnspill","page":"/","state":{"body":"Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Dette gjør velet":"To ting først. Resten står lenger ned på siden.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.","Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.","Se deg rundt først":"Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Få din mening med i høringssvaret"]} -{"id":"togtider@/","persona":"togtider","need":"horingsinnspill","page":"/","state":{"body":"Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Dette gjør velet":"To ting først. Resten står lenger ned på siden.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.","Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.","Se deg rundt først":"Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Få din mening med i høringssvaret"]} -{"id":"vafler@/","persona":"vafler","need":"hjelpe-til","page":"/","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Dette gjør velet":"To ting først. Resten står lenger ned på siden.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.","Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.","Se deg rundt først":"Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Bli med på dugnad eller arrangement"]} -{"id":"motorsag@/","persona":"motorsag","need":"hjelpe-til","page":"/","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Dette gjør velet":"To ting først. Resten står lenger ned på siden.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.","Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.","Se deg rundt først":"Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Bli med på dugnad eller arrangement"]} -{"id":"pendler@/","persona":"pendler","need":"komite","page":"/","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Dette gjør velet":"To ting først. Resten står lenger ned på siden.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.","Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.","Se deg rundt først":"Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Sitt i en komité som betyr noe for deg"]} -{"id":"planlegger@/","persona":"planlegger","need":"komite","page":"/","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Dette gjør velet":"To ting først. Resten står lenger ned på siden.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.","Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.","Se deg rundt først":"Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Sitt i en komité som betyr noe for deg"]} -{"id":"tilhenger@/","persona":"tilhenger","need":"dele-utstyr","page":"/","state":{"body":"Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Dette gjør velet":"To ting først. Resten står lenger ned på siden.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.","Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.","Se deg rundt først":"Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Lån ut eller lån av naboen"]} -{"id":"stige@/","persona":"stige","need":"dele-utstyr","page":"/","state":{"body":"Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Dette gjør velet":"To ting først. Resten står lenger ned på siden.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.","Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.","Se deg rundt først":"Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Lån ut eller lån av naboen"]} -{"id":"snomaking@/","persona":"snomaking","need":"trenger-hjelp","page":"/","state":{"body":"Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Dette gjør velet":"To ting først. Resten står lenger ned på siden.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.","Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.","Se deg rundt først":"Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Få en nabo til å stille opp"]} -{"id":"nyoperert@/","persona":"nyoperert","need":"trenger-hjelp","page":"/","state":{"body":"Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Dette gjør velet":"To ting først. Resten står lenger ned på siden.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.","Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.","Se deg rundt først":"Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Få en nabo til å stille opp"]} -{"id":"hjemmekontor@/","persona":"hjemmekontor","need":"kan-hjelpe","page":"/","state":{"body":"Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Dette gjør velet":"To ting først. Resten står lenger ned på siden.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.","Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.","Se deg rundt først":"Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Bli spurt når en nabo trenger en hånd"]} -{"id":"pensjonert-elektriker@/","persona":"pensjonert-elektriker","need":"kan-hjelpe","page":"/","state":{"body":"Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Dette gjør velet":"To ting først. Resten står lenger ned på siden.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.","Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.","Se deg rundt først":"Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Bli spurt når en nabo trenger en hånd"]} diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/tasks-skim.jsonl b/vendor/trainer/runs/tomtervel-flat-2026-09-23/tasks-skim.jsonl deleted file mode 100644 index 975897f..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/tasks-skim.jsonl +++ /dev/null @@ -1,20 +0,0 @@ -{"id":"nyinnflyttet@/","persona":"nyinnflyttet","need":"bli-medlem","page":"/","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Dette gjør velet":"Dette gjør velet","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen","Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet","Se deg rundt først":"Se deg rundt først","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Bli medlem av Tomter Vel"]} -{"id":"glemte-a-betale@/","persona":"glemte-a-betale","need":"bli-medlem","page":"/","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Dette gjør velet":"Dette gjør velet","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen","Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet","Se deg rundt først":"Se deg rundt først","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Bli medlem av Tomter Vel"]} -{"id":"ny-epost@/","persona":"ny-epost","need":"endre-medlemskap","page":"/","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Dette gjør velet":"Dette gjør velet","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen","Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet","Se deg rundt først":"Se deg rundt først","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Oppdater eller avslutt medlemskapet"]} -{"id":"flytter@/","persona":"flytter","need":"endre-medlemskap","page":"/","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Dette gjør velet":"Dette gjør velet","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen","Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet","Se deg rundt først":"Se deg rundt først","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Oppdater eller avslutt medlemskapet"]} -{"id":"skolevei@/","persona":"skolevei","need":"trafikkfare","page":"/","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Dette gjør velet":"Dette gjør velet","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen","Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet","Se deg rundt først":"Se deg rundt først","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Meld fra om en trafikkfare"]} -{"id":"busslomme@/","persona":"busslomme","need":"trafikkfare","page":"/","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Dette gjør velet":"Dette gjør velet","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen","Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet","Se deg rundt først":"Se deg rundt først","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Meld fra om en trafikkfare"]} -{"id":"huske@/","persona":"huske","need":"anleggsfeil","page":"/","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Dette gjør velet":"Dette gjør velet","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen","Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet","Se deg rundt først":"Se deg rundt først","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Meld fra om noe ødelagt"]} -{"id":"bru@/","persona":"bru","need":"anleggsfeil","page":"/","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Dette gjør velet":"Dette gjør velet","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen","Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet","Se deg rundt først":"Se deg rundt først","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Meld fra om noe ødelagt"]} -{"id":"blokker@/","persona":"blokker","need":"horingsinnspill","page":"/","state":{"body":"Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Dette gjør velet":"Dette gjør velet","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen","Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet","Se deg rundt først":"Se deg rundt først","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Få din mening med i høringssvaret"]} -{"id":"togtider@/","persona":"togtider","need":"horingsinnspill","page":"/","state":{"body":"Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Dette gjør velet":"Dette gjør velet","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen","Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet","Se deg rundt først":"Se deg rundt først","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Få din mening med i høringssvaret"]} -{"id":"vafler@/","persona":"vafler","need":"hjelpe-til","page":"/","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Dette gjør velet":"Dette gjør velet","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen","Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet","Se deg rundt først":"Se deg rundt først","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Bli med på dugnad eller arrangement"]} -{"id":"motorsag@/","persona":"motorsag","need":"hjelpe-til","page":"/","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Dette gjør velet":"Dette gjør velet","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen","Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet","Se deg rundt først":"Se deg rundt først","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Bli med på dugnad eller arrangement"]} -{"id":"pendler@/","persona":"pendler","need":"komite","page":"/","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Dette gjør velet":"Dette gjør velet","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen","Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet","Se deg rundt først":"Se deg rundt først","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Sitt i en komité som betyr noe for deg"]} -{"id":"planlegger@/","persona":"planlegger","need":"komite","page":"/","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Dette gjør velet":"Dette gjør velet","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen","Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet","Se deg rundt først":"Se deg rundt først","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Sitt i en komité som betyr noe for deg"]} -{"id":"tilhenger@/","persona":"tilhenger","need":"dele-utstyr","page":"/","state":{"body":"Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Dette gjør velet":"Dette gjør velet","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen","Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet","Se deg rundt først":"Se deg rundt først","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Lån ut eller lån av naboen"]} -{"id":"stige@/","persona":"stige","need":"dele-utstyr","page":"/","state":{"body":"Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Dette gjør velet":"Dette gjør velet","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen","Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet","Se deg rundt først":"Se deg rundt først","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Lån ut eller lån av naboen"]} -{"id":"snomaking@/","persona":"snomaking","need":"trenger-hjelp","page":"/","state":{"body":"Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Dette gjør velet":"Dette gjør velet","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen","Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet","Se deg rundt først":"Se deg rundt først","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Få en nabo til å stille opp"]} -{"id":"nyoperert@/","persona":"nyoperert","need":"trenger-hjelp","page":"/","state":{"body":"Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Dette gjør velet":"Dette gjør velet","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen","Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet","Se deg rundt først":"Se deg rundt først","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Få en nabo til å stille opp"]} -{"id":"hjemmekontor@/","persona":"hjemmekontor","need":"kan-hjelpe","page":"/","state":{"body":"Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Dette gjør velet":"Dette gjør velet","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen","Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet","Se deg rundt først":"Se deg rundt først","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Bli spurt når en nabo trenger en hånd"]} -{"id":"pensjonert-elektriker@/","persona":"pensjonert-elektriker","need":"kan-hjelpe","page":"/","state":{"body":"Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Dette gjør velet":"Dette gjør velet","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen","Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet","Se deg rundt først":"Se deg rundt først","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Bli spurt når en nabo trenger en hånd"]} diff --git a/vendor/trainer/runs/tomtervel-flat-2026-09-23/words.json b/vendor/trainer/runs/tomtervel-flat-2026-09-23/words.json deleted file mode 100644 index e9a3849..0000000 --- a/vendor/trainer/runs/tomtervel-flat-2026-09-23/words.json +++ /dev/null @@ -1,856 +0,0 @@ -{ - "questions/arrangementer/index.yaml": { - "buckets": { - "frivillige": { - "description": "Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem.", - "heading": "Frivillige til arrangementer og dugnad", - "moves": { - "kontaktet->satt_opp": "Sett opp", - "kontaktet->takket_nei": "Takket nei", - "open->kontaktet": "Merk som kontaktet", - "open->takket_nei": "Takket nei" - } - } - }, - "confirm": "Lagre", - "description": "Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "arrangementer": { - "button": "Inviter", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Arrangementer", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp?" - }, - "questions/decide/dele-utstyr.yaml": { - "description": "Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån.", - "moves": { - "tatt_ned": { - "button": "Ta ned oppslaget", - "description": "Oppslaget fjernes fra siden, så ingen flere spør om å låne det.", - "heading": "Meld at utstyret er tatt ned" - } - }, - "question": "Skal oppslaget om utstyret fortsatt stå ute?" - }, - "questions/decide/kan-hjelpe.yaml": { - "description": "Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå.", - "moves": { - "trukket": { - "button": "Trekk meg", - "description": "Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre.", - "heading": "Ta en pause fra nabohjelpen" - } - }, - "question": "Vil du fortsatt kunne bli spurt om å hjelpe en nabo?" - }, - "questions/decide/trenger-hjelp.yaml": { - "description": "Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet.", - "moves": { - "ordnet": { - "button": "Merk som ordnet", - "description": "Da vet vi at naboen har fått hjelpen sin, og saken lukkes.", - "heading": "Meld fra at hjelpen er gitt" - } - }, - "question": "Har naboen fått hjelpen de trengte?" - }, - "questions/horingsinstans/index.yaml": { - "buckets": { - "innspill": { - "description": "Her ligger innspill fra beboere til saker kommunen har på høring.", - "heading": "Innspill til høringssvar", - "moves": { - "open->ikke_tatt_med": "Ikke tatt med", - "open->tatt_med": "Tatt med i svaret" - } - } - }, - "confirm": "Send svar", - "description": "Her samler du innspillene og ser hva som er tatt med i velets høringssvar.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "horingsinstans": { - "button": "Inviter", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Høringsinstans", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva sier vi i høringssvaret?" - }, - "questions/index.yaml": { - "description": "Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står.", - "needs": { - "bli-medlem": { - "button": "Bli medlem", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.", - "encouragement": "Kasserer sender deg kontingenten på e-post rett etterpå.", - "form_description": "Ha adressen i Tomter og en e-post du bruker klar.", - "form_title": "Meld deg inn", - "heading": "Bli medlem av Tomter Vel", - "hints": { - "adresse": "Tomterveien 12", - "epost": "ola.nordmann@epost.no", - "navn": "Ola Nordmann", - "telefon": "123 45 678" - }, - "icon": "user-plus", - "labels": { - "adresse": "Adresse", - "epost": "E-post", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem.", - "road_icon": "lucide:coins", - "road_title": "Etter innmelding", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "who_title": "Hvem svarer deg" - }, - "endre-medlemskap": { - "button": "Send endring", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.", - "encouragement": "Det tar bare et par minutter, og kasserer ordner resten.", - "form_description": "Skriv navnet ditt og hva som er nytt.", - "form_title": "Endre medlemskap", - "heading": "Oppdater eller avslutt medlemskapet", - "hints": { - "adresse": "Ny adresse i Tomter", - "hva_er_nytt": "Ny e-post, ny adresse, eller ønske om utmelding", - "navn": "Ola Nordmann" - }, - "icon": "pencil", - "labels": { - "adresse": "Adresse", - "hva_er_nytt": "Hva vil du endre?", - "navn": "Navn" - }, - "road_description": "Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om.", - "road_icon": "lucide:refresh-cw", - "road_title": "Etter du sender inn", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "who_title": "Hvem svarer deg" - }, - "anleggsfeil": { - "button": "Send inn", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.", - "encouragement": "Det holder med noen ord om hva du så og hvor.", - "form_description": "Fortell hva som er ødelagt og omtrent hvor det er.", - "form_title": "Meld anleggsfeil", - "heading": "Meld fra om noe ødelagt", - "hints": { - "hva": "Løs planke på gjerdet ved husken", - "hvor": "" - }, - "icon": "construction", - "labels": { - "hva": "Hva er ødelagt", - "hvor": "Hvor er det" - }, - "road_description": "Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet.", - "road_icon": "lucide:wrench", - "road_title": "Hva skjer videre", - "who_description": "Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:hammer", - "who_title": "Hvem leser dette" - }, - "trafikkfare": { - "button": "Send inn", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.", - "encouragement": "Bare noen linjer om hva og hvor er nok til at vi kan følge opp.", - "form_description": "Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer.", - "form_title": "Meld trafikkfare", - "heading": "Meld fra om en trafikkfare", - "hints": { - "epost": "ola.nordmann@epost.no", - "hva": "Dårlig sikt i krysset, biler kjører fort", - "hvor": "Krysset Tomterveien / Elvestien" - }, - "icon": "alert-triangle", - "labels": { - "epost": "E-post (valgfritt)", - "hva": "Hva så du", - "hvor": "Hvor var det" - }, - "road_description": "Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:car", - "who_title": "Hvem leser dette" - }, - "hjelpe-til": { - "button": "Meld meg på", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.", - "encouragement": "Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg.", - "form_description": "Fortell kort hva du kan hjelpe til med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli med på dugnad eller arrangement", - "hints": { - "hva": "", - "navn": "Kari Nordmann", - "telefon": "912 34 567" - }, - "icon": "hand-helping", - "labels": { - "hva": "Hva kan du hjelpe til med?", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit.", - "road_icon": "lucide:clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - }, - "komite": { - "button": "Meld interesse", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i.", - "encouragement": "Det tar bare et minutt, og noen fra styret svarer deg.", - "form_description": "Skriv hvilken komité du er interessert i.", - "form_title": "Meld deg til en komité", - "heading": "Sitt i en komité som betyr noe for deg", - "hints": { - "epost": "kari@eksempel.no", - "komite": "", - "navn": "Kari Nordmann" - }, - "icon": "users", - "labels": { - "epost": "E-post", - "komite": "Hvilken komité?", - "navn": "Navn" - }, - "road_description": "Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå.", - "road_icon": "lucide:clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:handshake", - "who_title": "Hvem leser dette" - }, - "dele-utstyr": { - "button": "Legg ut oppslag", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.", - "encouragement": "Vi legger det ut så naboene kan se det.", - "form_description": "Skriv kort hva det gjelder, så folk skjønner det med en gang.", - "form_title": "Lån eller utlån", - "heading": "Lån ut eller lån av naboen", - "hints": { - "email": "ola@eksempel.no", - "har_eller_trenger": "", - "hva": "Hengerfeste til bil, tilhenger, stige", - "navn": "Ola Nordmann" - }, - "icon": "package", - "labels": { - "email": "E-post", - "har_eller_trenger": "Har du eller trenger du", - "hva": "Hva gjelder det", - "navn": "Navn" - }, - "road_description": "Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen.", - "road_icon": "lucide:clipboard-list", - "road_title": "Fra oppslag til avtale", - "who_description": "Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem ser dette" - }, - "kan-hjelpe": { - "button": "Meld deg", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.", - "encouragement": "Du blir bare kontaktet når noe passer for deg.", - "form_description": "Fortell kort hva du kan bidra med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli spurt når en nabo trenger en hånd", - "hints": { - "email": "kari@eksempel.no", - "kan": "", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "hand-helping", - "labels": { - "email": "E-post", - "kan": "Hva kan du hjelpe med", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra.", - "road_icon": "lucide:user-check", - "road_title": "Fra påmelding til spørsmål", - "who_description": "Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no.", - "who_icon": "lucide:heart-handshake", - "who_title": "Hvem ser dette" - }, - "trenger-hjelp": { - "button": "Be om hjelp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.", - "encouragement": "Vi finner en nabo som kan stille opp så fort som mulig.", - "form_description": "Skriv kort hva du trenger hjelp til.", - "form_title": "Be om en hånd", - "heading": "Få en nabo til å stille opp", - "hints": { - "adresse": "Tomterveien 12", - "email": "kari@eksempel.no", - "hva": "Måke snø på trappa, handle inn litt mat", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "heart-handshake", - "labels": { - "adresse": "Adresse", - "email": "E-post", - "hva": "Hva trenger du hjelp til", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed.", - "road_icon": "lucide:hand-helping", - "road_title": "Fra melding til hjelp", - "who_description": "Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem ser dette" - }, - "horingsinnspill": { - "button": "Send innspill", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "encouragement": "Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen.", - "form_description": "Fortell hvilken sak det gjelder og hva du mener.", - "form_title": "Send et høringsinnspill", - "heading": "Få din mening med i høringssvaret", - "hints": { - "innspill": "Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen.", - "navn": "Kari Nordmann", - "sak": "Reguleringsplan for Tomterveien" - }, - "icon": "megaphone", - "labels": { - "innspill": "Hva mener du?", - "navn": "Navn", - "sak": "Hvilken sak gjelder det?" - }, - "road_description": "Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - } - }, - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "opener": { - "heading": "Dette gjør velet", - "description": "To ting først. Resten står lenger ned på siden.", - "features": { - "medlem": { - "heading": "Et vel som taler for Tomter, og et medlemskap du styrer selv", - "description": "Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil.", - "icon": "users" - }, - "nabo": { - "heading": "En nabo som stiller opp når du trenger det", - "description": "Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.", - "icon": "handshake" - } - } - }, - "shopping": { - "heading": "Se deg rundt først", - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.", - "items": { - "status-trafikkmeldinger": { - "heading": "Alle trafikkmeldinger", - "description": "Farlige steder naboene har meldt, og hva velet har gjort med dem.", - "icon": "list" - }, - "status-anleggsfeil": { - "heading": "Alt som er meldt ødelagt", - "description": "Lekeplassen og stien: det som er meldt, og det som er fikset.", - "icon": "list" - }, - "status-oppslag": { - "heading": "Oppslagstavla", - "description": "Det naboene har å låne ut, og det de trenger å låne.", - "icon": "list" - } - } - } - }, - "questions/kasserer/index.yaml": { - "buckets": { - "husstander": { - "description": "Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem.", - "heading": "Nye medlemmer som venter på registrering", - "moves": { - "open->betalt": "Registrer betaling", - "open->utmeldt": "Meld ut" - } - }, - "medlemsendringer": { - "description": "Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert.", - "heading": "Endringer som venter på å bli registrert", - "moves": { - "open->oppdatert": "Registrer endring" - } - }, - "utlegg": { - "description": "Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling.", - "heading": "Utlegg som venter på deg", - "moves": { - "godkjent->avvist": "Avvis likevel", - "godkjent->utbetalt": "Merk som utbetalt", - "open->avvist": "Avvis utlegg", - "open->godkjent": "Godkjenn utlegg" - } - } - }, - "confirm": "Lagre", - "description": "Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "kasserer": { - "button": "Inviter", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i kassereren", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva venter på meg som kasserer akkurat nå?" - }, - "questions/komiteer/index.yaml": { - "buckets": {}, - "confirm": "Confirm", - "description": "Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "komiteer": { - "button": "Inviter", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i komiteene", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": { - "utlegg": { - "button": "Send utlegg", - "description": "Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake.", - "heading": "Få tilbake det du har lagt ut" - } - }, - "question": "Hva står ubehandlet i komiteen din nå?" - }, - "questions/komiteer/utlegg-sent.yaml": { - "back": "Til forsiden", - "description": "Utlegget er sendt til kasserer. Du får beskjed når det er sjekket.", - "next_description": "Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga.", - "next_heading": "Pengene kommer på konto", - "question": "Hva skjer med utlegget mitt nå?" - }, - "questions/komiteer/utlegg.yaml": { - "button": "Send inn", - "description": "Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten.", - "encouragement": "Legg ved bilag om du har det, så går det raskere.", - "form_description": "Ha kvittering eller bilag klart før du fyller ut.", - "form_title": "Krav om refusjon", - "heading": "Få pengene tilbake", - "hints": { - "belop": "450 kr", - "hva": "Kaffe og kjeks til dugnaden", - "navn": "Kari Nordmann" - }, - "icon": "receipt", - "labels": { - "belop": "Beløp", - "hva": "Hva gjaldt det", - "navn": "Navn" - }, - "page_description": "Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake.", - "question": "Har du lagt ut penger for komiteen og vil ha dem tilbake?", - "road_description": "Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor.", - "road_icon": "lucide:wallet", - "road_title": "Fra krav til utbetaling", - "who_description": "Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster.", - "who_icon": "lucide:coins", - "who_title": "Kasserer ser dette" - }, - "questions/lekeplasser/index.yaml": { - "buckets": { - "anleggsfeil": { - "description": "Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses.", - "heading": "Det som er meldt inn av skader", - "moves": { - "open->tatt_tak_i": "Ta tak i saken", - "tatt_tak_i->utbedret": "Merk som utbedret" - } - } - }, - "confirm": "Lagre", - "description": "Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "lekeplasser": { - "button": "Inviter", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Leke- og møteplasser", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva må fikses på lekeplassene og stien nå?" - }, - "questions/nabohjelp/index.yaml": { - "buckets": { - "hjelpebehov": { - "description": "Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe.", - "heading": "Naboer som trenger en hånd", - "moves": { - "formidlet->ikke_lost": "Meld ikke løst", - "formidlet->ordnet": "Meld ordnet", - "open->formidlet": "Koble til nabo", - "open->ikke_lost": "Meld ikke løst" - } - }, - "hjelpere": { - "description": "Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem.", - "heading": "Naboer som kan stille opp", - "moves": { - "open->registrert": "Registrer som hjelper", - "open->trukket": "Meld trukket" - } - } - }, - "confirm": "Lagre", - "description": "Her kobler du naboer som trenger hjelp med dem som kan stille opp.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "nabohjelp": { - "button": "Inviter", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i nabohjelpen", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvem trenger hjelp, og hvem kan stille opp?" - }, - "questions/received/anleggsfeil.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt.", - "next_description": "Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg.", - "next_heading": "Komiteen tar tak i det", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se meldte feil", - "description": "Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet.", - "heading": "Se andre meldte feil" - } - }, - "questions/received/bli-medlem.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert.", - "next_description": "Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten.", - "next_heading": "Kasserer sender deg betalingsinfo", - "question": "Hva skjer etter at jeg har meldt meg inn?" - }, - "questions/received/dele-utstyr.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan.", - "next_description": "En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne.", - "next_heading": "Styret legger det ut for deg", - "question": "Hva skjer med det jeg har lagt ut?", - "see_all": { - "button": "Se hva naboer deler", - "description": "Se hva andre i Tomter har lagt ut til utlån akkurat nå.", - "heading": "Se alt naboene deler" - } - }, - "questions/received/endre-medlemskap.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut.", - "next_description": "Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg.", - "next_heading": "Kasserer retter opp opplysningene", - "question": "Hva skjer nå med det jeg meldte inn?" - }, - "questions/received/hjelpe-til.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg.", - "next_description": "Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden.", - "next_heading": "Komiteen tar kontakt", - "question": "Hva skjer nå som jeg har meldt meg?" - }, - "questions/received/horingsinnspill.yaml": { - "back": "Tilbake til forsiden", - "description": "Innspillet ditt er sendt til høringsinstansen i velet.", - "next_description": "De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med.", - "next_heading": "Innspillet ditt inn i vurderingen", - "question": "Hva skjer med det jeg har sagt om saken?" - }, - "questions/received/kan-hjelpe.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe.", - "next_description": "Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte.", - "next_heading": "Du blir kontaktet ved behov", - "question": "Hva skjer nå som jeg har registrert meg?" - }, - "questions/received/komite.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg.", - "next_description": "Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer.", - "next_heading": "Vi finner riktig komité til deg", - "question": "Hva skjer nå som jeg har meldt interesse for en komité?" - }, - "questions/received/trafikkfare.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din om trafikkfaren er sendt til komiteen for trafikk.", - "next_description": "Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs.", - "next_heading": "Trafikkomiteen tar den videre", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se andre trafikkfarer", - "description": "Se hva andre har meldt inn, og status på sakene.", - "heading": "Andre meldte trafikkfarer" - } - }, - "questions/received/trenger-hjelp.yaml": { - "back": "Til forsiden", - "description": "Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp.", - "next_description": "Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer.", - "next_heading": "Vi finner en nabo til deg", - "question": "Hva skjer nå som jeg har bedt om hjelp?" - }, - "questions/status/anleggsfeil/index.yaml": { - "back": "Tilbake til meldinger", - "description": "Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet.", - "heading": "Status på meldte anleggsfeil", - "list_description": "Alle meldinger er åpne for alle å se.", - "question": "Hva skjer med det jeg har meldt fra om?" - }, - "questions/status/oppslag/index.yaml": { - "back": "Tilbake", - "description": "Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet.", - "heading": "Oversikt over det som er meldt inn", - "list_description": "Åpen liste – navn og detaljer vises ikke.", - "question": "Hva er sendt inn, og hvor langt har det kommet?" - }, - "questions/status/trafikkmeldinger/index.yaml": { - "back": "Tilbake", - "description": "Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet.", - "heading": "Trafikkmeldinger og status", - "list_description": "Alle meldinger som er sendt inn, og hvor de står nå.", - "question": "Er det meldt fra om noe farlig i trafikken der jeg bor?" - }, - "questions/styret/index.yaml": { - "buckets": { - "innspill": { - "description": "Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar.", - "heading": "Høringsinnspill fra beboerne", - "moves": {} - }, - "komitesoknader": { - "description": "Her ligger alle som har meldt seg til en komité og venter på en plass.", - "heading": "Søknader til komiteene", - "moves": { - "open->avslatt": "Avslå søknaden", - "open->plassert": "Sett i komité" - } - }, - "oppslag": { - "description": "Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut.", - "heading": "Utstyr til utlån blant naboer", - "moves": { - "open->lagt_ut": "Legg ut oppslaget", - "open->tatt_ned": "Ta ned oppslaget" - } - }, - "trafikkmeldinger": { - "description": "Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier.", - "heading": "Meldinger om trafikkfarer", - "moves": {} - } - }, - "confirm": "Lagre", - "description": "Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "arrangementer": { - "button": "Inviter", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Arrangementer", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "horingsinstans": { - "button": "Inviter", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Høringsinstans", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "kasserer": { - "button": "Inviter", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i kassereren", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "komiteer": { - "button": "Inviter", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i komiteene", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "lekeplasser": { - "button": "Inviter", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Leke- og møteplasser", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "nabohjelp": { - "button": "Inviter", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i nabohjelpen", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "styret": { - "button": "Inviter", - "description": "De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i styret", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "trafikk": { - "button": "Inviter", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Trafikkforhold", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva venter på styret akkurat nå?" - }, - "questions/trafikk/index.yaml": { - "buckets": { - "trafikkmeldinger": { - "description": "Farlige steder i trafikken som naboer har meldt inn.", - "heading": "Farlige steder i trafikken", - "moves": { - "open->avvist": "Avvis meldingen", - "open->tatt_opp": "Ta opp med kommunen", - "tatt_opp->avvist": "Avvis meldingen", - "tatt_opp->ordnet": "Meld ordnet" - } - } - }, - "confirm": "Lagre", - "description": "Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "trafikk": { - "button": "Inviter", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Trafikkforhold", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvilke trafikkfarer må følges opp?" - } -} diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/README.md b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/README.md deleted file mode 100644 index 31cd327..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/README.md +++ /dev/null @@ -1,32 +0,0 @@ -# Tomter Vel's front door, showing rather than inviting (local only) - -Built from `plans/tomtervel.yaml` with the words of -`runs/tomtervel-opener-2026-09-23`, the front door reworded by Sonnet -after two builder changes. Not deployed: vel.klingenbergbygg.no is -what goes to the board. - -- **Public lists are shown, not pointed at.** Each bucket the public - may read (traffic reports, playground and path faults, the - noticeboard) is a feature on the front door carrying its newest - three records inline (`sort_by(.submitted_ms) | reverse | .[:3]`, - same pruning and `public_states` as the full list) and a markdown - link to the full list at `/status/`. -- **The card names what it shows.** The old "Have a look around - first / Nothing to fill in here" framing is gone from the fallback - and from the words guidance: the card is "Siste fra bygda", "Nye - meldinger og oppslag, slik de står akkurat nå". - -Lints green with the iris mail checks (uhhm/iris PR 1); the two -warnings are real (a neighbour whose request was not solved is not -told; a member removed from the list is not told). - -## Deployed 2026-09-28 - -Pushed to tomtervel/questions (58188f5) and live on -vel.klingenbergbygg.no. Only the opener and the new "Siste fra bygda" -card come from this round (`words-frontdoor.json`); the question and -the door headings are the tuned ones from -`runs/tomtervel-opener-2026-09-23`, so `needs.yaml` and -`aggregates.yaml` are unchanged and routing is as last scored. The -desks' and lists' new lines (what a row is, an empty list) fall back -in Norwegian now, not English. diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/build.log b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/build.log deleted file mode 100644 index 263c705..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/build.log +++ /dev/null @@ -1,19 +0,0 @@ -words: questions/index.yaml -content repo written to runs/tomtervel-frontdoor-2026-09-28/site -OK: 32 question(s), 13 aggregate(s) valid -OK: access policy, 116 rule(s), validates -OK: 7 mail(s): every placeholder fills, every link lands -need "bli-medlem": / [Bli medlem eller endre medlemskapet] -> /medlem [Bli medlem av Tomter Vel] -> "husstander" -need "endre-medlemskap": / [Bli medlem eller endre medlemskapet] -> /medlem [Oppdater eller avslutt medlemskapet] -> "medlemsendringer" -need "trafikkfare": / [Si fra om noe farlig eller ødelagt] -> /melde-fra [Meld fra om en trafikkfare] -> "trafikkmeldinger" -need "anleggsfeil": / [Si fra om noe farlig eller ødelagt] -> /melde-fra [Meld fra om noe ødelagt] -> "anleggsfeil" -need "horingsinnspill": / [Si din mening i en høringssak] -> "innspill" -need "hjelpe-til": / [Stille opp på 17. mai, dugnad eller i komité] -> /bidra [Bli med på dugnad eller arrangement] -> "frivillige" -need "komite": / [Stille opp på 17. mai, dugnad eller i komité] -> /bidra [Sitt i en komité som betyr noe for deg] -> "komitesoknader" -need "trenger-hjelp": / [Hjelp fra naboen, eller hjelp naboen] -> /naboer [Få en nabo til å stille opp] -> "hjelpebehov" -need "kan-hjelpe": / [Hjelp fra naboen, eller hjelp naboen] -> /naboer [Bli spurt når en nabo trenger en hånd] -> "hjelpere" -need "dele-utstyr": / [Hjelp fra naboen, eller hjelp naboen] -> /naboer [Lån ut eller lån av naboen] -> "oppslag" -need "utlegg": /komiteer/utlegg [Få pengene tilbake] -> "utlegg" -OK: 11 need(s) structurally met, 0 planned, 21 persona(s) -WARN: hjelpebehov: the person is mailed at "open" and not told when their case ends at ["ikke_lost"] -WARN: husstander: the person is mailed at "open" and not told when their case ends at ["utmeldt"] diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/aggregates.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/aggregates.yaml deleted file mode 100644 index 590d28b..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/aggregates.yaml +++ /dev/null @@ -1,192 +0,0 @@ -aggregates: -- bucket: anleggsfeil - initial: open - states: - open: - event: received - tatt_tak_i: - event: tatt_tak_i - utbedret: - event: utbedret - transitions: - open: - - tatt_tak_i - tatt_tak_i: - - utbedret -- bucket: frivillige - initial: open - states: - open: - event: received - kontaktet: - event: kontaktet - satt_opp: - event: satt_opp - takket_nei: - event: takket_nei - transitions: - kontaktet: - - satt_opp - - takket_nei - open: - - kontaktet - - takket_nei -- bucket: hjelpebehov - initial: open - states: - open: - event: received - mail: - to: submitter - subject: Vi leter etter en nabo til deg - body: Vi har mottatt det du trenger hjelp til, og ser etter en nabo som kan stille opp. Du hører fra oss så snart vi har funnet noen. - formidlet: - event: formidlet - mail: - to: submitter - subject: En nabo er koblet på - body: |- - Vi har funnet en nabo som kan hjelpe. De tar kontakt med deg direkte. - - Det du kan gjøre nå: {site}/decide/trenger-hjelp?chain={chain}&email={email} - ordnet: - event: ordnet - mail: - to: submitter - subject: Bra det løste seg - body: Godt å høre at det ordnet seg. Takk for at du sa fra, og lykke til videre. - ikke_lost: - event: ikke_lost - transitions: - formidlet: - - ordnet - - ikke_lost - open: - - formidlet - - ikke_lost -- bucket: hjelpere - initial: open - states: - open: - event: received - registrert: - event: registrert - trukket: - event: trukket - transitions: - open: - - registrert - - trukket -- bucket: husstander - initial: open - states: - open: - event: received - mail: - to: submitter - subject: Nesten i mål som medlem - body: |- - Takk for at du vil bli medlem. Du får en betalingsoppfordring med kontonummer og beløp så snart kasserer har sett på saken. - - Det du kan gjøre nå: {site}/decide/bli-medlem?chain={chain}&email={email} - betalt: - event: betalt - mail: - to: submitter - subject: Medlemskapet er i orden - body: Kontingenten er registrert betalt. Du er nå medlem av Tomter Vel - velkommen med! - utmeldt: - event: utmeldt - transitions: - open: - - betalt - - utmeldt -- bucket: innspill - initial: open - states: - open: - event: received - tatt_med: - event: tatt_med - ikke_tatt_med: - event: ikke_tatt_med - transitions: - open: - - tatt_med - - ikke_tatt_med -- bucket: komitesoknader - initial: open - states: - open: - event: received - plassert: - event: plassert - avslatt: - event: avslatt - transitions: - open: - - plassert - - avslatt -- bucket: medlemsendringer - initial: open - states: - open: - event: received - oppdatert: - event: oppdatert - transitions: - open: - - oppdatert -- bucket: oppslag - initial: open - states: - open: - event: received - lagt_ut: - event: lagt_ut - mail: - to: submitter - subject: Oppslaget er synlig for naboene - body: Oppslaget ditt er lagt ut, og naboene kan nå se det. - tatt_ned: - event: tatt_ned - transitions: - open: - - lagt_ut - - tatt_ned -- bucket: trafikkmeldinger - initial: open - states: - open: - event: received - tatt_opp: - event: tatt_opp - ordnet: - event: ordnet - avvist: - event: avvist - transitions: - open: - - tatt_opp - - avvist - tatt_opp: - - ordnet - - avvist -- bucket: utlegg - initial: open - states: - open: - event: received - godkjent: - event: godkjent - utbetalt: - event: utbetalt - avvist: - event: avvist - transitions: - godkjent: - - utbetalt - - avvist - open: - - godkjent - - avvist diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/llm/09-questions_index.yaml.md b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/llm/09-questions_index.yaml.md deleted file mode 100644 index 170c529..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/llm/09-questions_index.yaml.md +++ /dev/null @@ -1,264 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. Lands in `husstander`; its form collects: {navn}, {adresse}, {email}, {telefon} (optional). -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. Lands in `medlemsendringer`; its form collects: {navn}, {adresse}, {hva_er_nytt} (long). -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. Lands in `trafikkmeldinger`; its form collects: {hvor}, {hva} (long), {epost} (optional). -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. Lands in `anleggsfeil`; its form collects: {hvor}, {hva} (long). -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. Lands in `innspill`; its form collects: {navn}, {sak}, {innspill} (long). -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. Lands in `frivillige`; its form collects: {navn}, {telefon}, {hva}. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. Lands in `komitesoknader`; its form collects: {navn}, {epost}, {komite}. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. Lands in `hjelpebehov`; its form collects: {navn}, {email}, {adresse}, {hva} (long), {telefon} (optional). -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. Lands in `hjelpere`; its form collects: {navn}, {email}, {telefon}, {kan}. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. Lands in `oppslag`; its form collects: {navn}, {email}, {har_eller_trenger}, {hva} (long). -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. Lands in `utlegg`; its form collects: {navn}, {belop}, {hva} (long). - -The page: questions/index.yaml -It is the front door: the first page any visitor sees. `question` is the page's one question. It opens modestly: `opener` is the first card, what the business does in several features and no button at all - a stranger reads it and decides whether to trust the place, so say what is true and useful, not what to press. `shopping` is the second card: the site's live content, presented as it is - the latest records, a figure that matters, what has been built. It works best presented plainly: a heading that names what it shows ('Latest from the noticeboard', 'What we have built'), each item headed by its own content, `link` naming the full list. The content does the persuading; the card only has to label it, so it needs no invitation to look around and no word about forms. Only then come the offers: under `doors`, each entry is one alternative that leads to a page of its own for one kind of visitor, and its heading must let that visitor recognise themselves from the heading alone; under `needs`, each entry is one alternative with a form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "question": "", - "description": "", - "opener": { - "heading": "", - "description": "", - "features": { - "medlem": { - "heading": "", - "description": "", - "icon": "" - }, - "nabo": { - "heading": "", - "description": "", - "icon": "" - } - } - }, - "shopping": { - "heading": "", - "description": "", - "items": { - "status-anleggsfeil": { - "heading": "", - "description": "", - "link": "", - "empty": "", - "icon": "" - }, - "status-oppslag": { - "heading": "", - "description": "", - "link": "", - "empty": "", - "icon": "" - }, - "status-trafikkmeldinger": { - "heading": "", - "description": "", - "link": "", - "empty": "", - "icon": "" - } - } - }, - "doors": { - "medlem": { - "heading": "", - "description": "", - "button": "", - "icon": "", - "for_whom": "", - "behind": "" - }, - "melde-fra": { - "heading": "", - "description": "", - "button": "", - "icon": "", - "for_whom": "", - "behind": "" - }, - "bidra": { - "heading": "", - "description": "", - "button": "", - "icon": "", - "for_whom": "", - "behind": "" - }, - "naboer": { - "heading": "", - "description": "", - "button": "", - "icon": "", - "for_whom": "", - "behind": "" - } - }, - "needs": { - "horingsinnspill": { - "heading": "", - "description": "", - "button": "", - "encouragement": "", - "icon": "", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "", - "road_description": "", - "road_icon": "", - "who_title": "", - "who_description": "", - "who_icon": "", - "form_title": "", - "form_description": "", - "labels": { - "navn": "", - "sak": "", - "innspill": "" - }, - "hints": { - "navn": "", - "sak": "", - "innspill": "" - } - } - } -} - -Reply with the JSON object only. - -=== REPLY === -{ - "question": "Hva trenger du hjelp med i Tomter?", - "description": "Tomter Vel er for alle som bor her. Velg det som passer deg, så finner du veien videre.", - "opener": { - "heading": "Velforeningen for Tomter siden 1947", - "description": "Vi er sju komiteer som jobber på fritida for bygda vår. 157 husstander er med.", - "features": { - "medlem": { - "heading": "157 husstander er medlemmer", - "description": "Kontingenten går til arrangementer, lekeplasser, elvestien og arbeidet for tryggere trafikk.", - "icon": "users" - }, - "nabo": { - "heading": "Naboer som stiller opp for hverandre", - "description": "Trenger du hjelp med snømåking, handling eller skyss, finner vi en nabo som kan. Du kan også låne og låne ut utstyr.", - "icon": "heart-handshake" - } - } - }, - "shopping": { - "heading": "Siste fra bygda", - "description": "Nye meldinger og oppslag, slik de står akkurat nå.", - "items": { - "status-anleggsfeil": { - "heading": "Feil på lekeplasser og sti", - "description": "Det som er meldt inn, og hvor langt vi har kommet med å fikse det.", - "link": "Alle feilmeldinger", - "empty": "Ingenting er meldt ødelagt akkurat nå. Ser du noe, si fra.", - "icon": "construction" - }, - "status-oppslag": { - "heading": "Oppslagstavla for naboer", - "description": "Utstyr som er til låns, og det naboene leter etter.", - "link": "Hele oppslagstavla", - "empty": "Tavla er tom nå. Legg gjerne ut det første oppslaget.", - "icon": "list" - }, - "status-trafikkmeldinger": { - "heading": "Farlige steder i trafikken", - "description": "Det naboer har meldt fra om, og hva velet har gjort med det.", - "link": "Alle trafikkmeldinger", - "empty": "Ingen farlige steder er meldt inn nå. Har du sett et, fortell oss.", - "icon": "car" - } - } - }, - "doors": { - "medlem": { - "heading": "Bli medlem eller endre medlemskapet", - "description": "Meld deg inn, betal kontingent, eller si fra om flytting, ny e-post eller utmelding.", - "button": "Til medlemskap", - "icon": "user-plus", - "for_whom": "For deg som bor i Tomter", - "behind": "Du kan bli medlem og betale kontingent, eller melde flytting, ny e-post eller utmelding." - }, - "melde-fra": { - "heading": "Si fra om noe farlig eller ødelagt", - "description": "Har du sett et farlig sted i trafikken eller noe i stykker på lekeplassen eller stien? Da vet velet det.", - "button": "Meld fra", - "icon": "alert-triangle", - "for_whom": "For deg som har sett noe", - "behind": "Du kan melde fra om et farlig sted i trafikken eller om noe som er ødelagt på lekeplassen eller stien." - }, - "bidra": { - "heading": "Stille opp på 17. mai, dugnad eller i komité", - "description": "Velet drives av folk som bidrar litt. Finn noe som passer deg.", - "button": "Vil bidra", - "icon": "hand-helping", - "for_whom": "For deg som vil være med", - "behind": "Du kan melde deg til hjelp på 17. mai, dugnad eller et arrangement, eller søke plass i en komité." - }, - "naboer": { - "heading": "Hjelp fra naboen, eller hjelp naboen", - "description": "Snømåking, handling, skyss og utlån av utstyr, naboer imellom.", - "button": "Til nabohjelp", - "icon": "heart-handshake", - "for_whom": "For deg og naboene dine", - "behind": "Du kan be om hjelp, tilby hjelp eller legge ut noe du har å låne ut." - } - }, - "needs": { - "horingsinnspill": { - "heading": "Si din mening i en høringssak", - "description": "Har kommunen en sak på høring som du har tanker om? Send oss innspillet ditt.", - "button": "Send innspill", - "encouragement": "Innspillet ditt leses av høringsgruppa før velet skriver sitt svar.", - "icon": "megaphone", - "requires_title": "Dette trenger vi fra deg", - "requires_description": "Navnet ditt, hvilken sak det gjelder og hva du mener.", - "requires_icon": "clipboard-list", - "road_title": "Slik går det videre", - "road_description": "Innspillet kommer inn til høringsgruppa. Så avgjør de om det blir tatt med i velets svar, og du får vite om det ble med eller ikke.", - "road_icon": "route", - "who_title": "Hvem leser det", - "who_description": "Høringsgruppa i Tomter Vel leser det du sender. Du når styret på post@tomtervel.no.", - "who_icon": "users", - "form_title": "Ditt innspill", - "form_description": "Ha saken og det du vil si klart før du begynner.", - "labels": { - "navn": "Navn", - "sak": "Hvilken sak gjelder det?", - "innspill": "Hva mener du?" - }, - "hints": { - "navn": "Kari Nordmann", - "sak": "Reguleringsplan for Tomtervegen", - "innspill": "Jeg mener gangfeltet bør flyttes nærmere skolen, fordi barna krysser der." - } - } - } -} diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/needs.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/needs.yaml deleted file mode 100644 index 1d74b9a..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/needs.yaml +++ /dev/null @@ -1,312 +0,0 @@ -needs: -- id: bli-medlem - who: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten - enters: / - via: Bli medlem eller endre opplysningene dine - lands_in: husstander - handled_by: kasserer - stages: - - open - - betalt - - utmeldt - done_when: - - betalt - - utmeldt - success: - - betalt - max_steps: 2 - max_fields: 3 - stage_words: - open: mottatt - betalt: betalt - utmeldt: meldt ut -- id: endre-medlemskap - who: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem - enters: / - via: Bli medlem eller endre opplysningene dine - lands_in: medlemsendringer - handled_by: kasserer - stages: - - open - - oppdatert - done_when: - - oppdatert - success: - - oppdatert - max_steps: 2 - max_fields: 3 - stage_words: - open: mottatt - oppdatert: oppdatert -- id: trafikkfare - who: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien - enters: / - via: Meld fra om noe som bør fikses - lands_in: trafikkmeldinger - handled_by: trafikk - stages: - - open - - tatt_opp - - ordnet - - avvist - done_when: - - ordnet - - avvist - success: - - ordnet - max_steps: 2 - max_fields: 2 - stage_words: - open: mottatt - tatt_opp: tatt opp med kommunen - ordnet: ordnet - avvist: avvist -- id: anleggsfeil - who: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg - enters: / - via: Meld fra om noe som bør fikses - lands_in: anleggsfeil - handled_by: lekeplasser - stages: - - open - - tatt_tak_i - - utbedret - done_when: - - utbedret - success: - - utbedret - max_steps: 2 - max_fields: 2 - stage_words: - open: mottatt - tatt_tak_i: tatt tak i - utbedret: utbedret -- id: horingsinnspill - who: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar - enters: / - via: Få din mening med i høringssvaret - lands_in: innspill - handled_by: horingsinstans - stages: - - open - - tatt_med - - ikke_tatt_med - done_when: - - tatt_med - - ikke_tatt_med - success: - - tatt_med - max_steps: 1 - max_fields: 3 - stage_words: - open: mottatt - tatt_med: tatt med i høringssvaret - ikke_tatt_med: ikke tatt med -- id: hjelpe-til - who: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem - enters: / - via: Bli med og gjør en innsats - lands_in: frivillige - handled_by: arrangementer - stages: - - open - - kontaktet - - satt_opp - - takket_nei - done_when: - - satt_opp - - takket_nei - success: - - satt_opp - max_steps: 2 - max_fields: 3 - stage_words: - open: mottatt - kontaktet: kontaktet - satt_opp: satt opp - takket_nei: takket nei -- id: komite - who: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om - enters: / - via: Bli med og gjør en innsats - lands_in: komitesoknader - handled_by: styret - stages: - - open - - plassert - - avslatt - done_when: - - plassert - - avslatt - success: - - plassert - max_steps: 2 - max_fields: 3 - stage_words: - open: mottatt - plassert: plassert i en komité - avslatt: avslått -- id: trenger-hjelp - who: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp - enters: / - via: Få hjelp av naboer, eller gi en hånd selv - lands_in: hjelpebehov - handled_by: nabohjelp - stages: - - open - - formidlet - - ordnet - - ikke_lost - done_when: - - ordnet - - ikke_lost - success: - - ordnet - max_steps: 2 - max_fields: 4 - stage_words: - open: mottatt - formidlet: formidlet til en nabo - ordnet: ordnet - ikke_lost: ikke løst -- id: kan-hjelpe - who: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer - enters: / - via: Få hjelp av naboer, eller gi en hånd selv - lands_in: hjelpere - handled_by: nabohjelp - stages: - - open - - registrert - - trukket - done_when: - - registrert - - trukket - success: - - registrert - max_steps: 2 - max_fields: 4 - stage_words: - open: mottatt - registrert: registrert som hjelper - trukket: trukket -- id: dele-utstyr - who: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser - enters: / - via: Få hjelp av naboer, eller gi en hånd selv - lands_in: oppslag - handled_by: styret - stages: - - open - - lagt_ut - - tatt_ned - done_when: - - lagt_ut - - tatt_ned - success: - - lagt_ut - max_steps: 2 - max_fields: 4 - stage_words: - open: mottatt - lagt_ut: lagt ut - tatt_ned: tatt ned -- id: utlegg - who: en i en komité som har lagt ut for noe - wants: pengene tilbake - enters: /komiteer/utlegg - via: Få pengene tilbake - lands_in: utlegg - handled_by: kasserer - stages: - - open - - godkjent - - utbetalt - - avvist - done_when: - - utbetalt - - avvist - success: - - utbetalt - max_steps: 1 - max_fields: 3 - stage_words: - open: mottatt - godkjent: godkjent - utbetalt: utbetalt - avvist: avvist - enters_as: komiteer -personas: -- id: nyinnflyttet - need: bli-medlem - text: Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det? -- id: glemte-a-betale - need: bli-medlem - text: Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem? -- id: ny-epost - need: endre-medlemskap - text: Vi har byttet e-postadresse og får ikke lenger noe fra dere. -- id: flytter - need: endre-medlemskap - text: Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista. -- id: skolevei - need: trafikkfare - text: Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går. -- id: busslomme - need: trafikkfare - text: Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy. -- id: huske - need: anleggsfeil - text: Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt. -- id: bru - need: anleggsfeil - text: Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom. -- id: blokker - need: horingsinnspill - text: Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra? -- id: togtider - need: horingsinnspill - text: Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det. -- id: vafler - need: hjelpe-til - text: Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk. -- id: motorsag - need: hjelpe-til - text: Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad. -- id: pendler - need: komite - text: Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det. -- id: planlegger - need: komite - text: Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring. -- id: tilhenger - need: dele-utstyr - text: Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp. -- id: stige - need: dele-utstyr - text: Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har? -- id: snomaking - need: trenger-hjelp - text: Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør? -- id: nyoperert - need: trenger-hjelp - text: Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg? -- id: hjemmekontor - need: kan-hjelpe - text: Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv. -- id: pensjonert-elektriker - need: kan-hjelpe - text: Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting. -- id: kvittering - need: utlegg - text: Jeg kjøpte pølser og kakao til skøytedagen for 1 840 kroner, her er kvitteringa, vil ha det igjen. diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/arrangementer/_section.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/arrangementer/_section.yaml deleted file mode 100644 index 94afa0f..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/arrangementer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: arrangementer diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/arrangementer/index.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/arrangementer/index.yaml deleted file mode 100644 index 8f0c49b..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/arrangementer/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -name: Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp? -description: Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Frivillige til arrangementer og dugnad - description: Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem. - action: /arrangementer - consequence: - - Lagre - features: - - name: Frivillige - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: frivillige - requires_group: arrangementer - transitions: - - from: kontaktet - to: satt_opp - label: Sett opp - - from: kontaktet - to: takket_nei - label: Takket nei - - from: open - to: kontaktet - label: Merk som kontaktet - - from: open - to: takket_nei - label: Takket nei -- name: Inviter noen inn i Arrangementer - description: De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /arrangementer - consequence: - - Inviter - invite: - group: arrangementer - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - action: /arrangementer - consequence: - - Lagre - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: arrangementer - transitions: - - from: open - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/bidra/index.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/bidra/index.yaml deleted file mode 100644 index 65dada0..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/bidra/index.yaml +++ /dev/null @@ -1,82 +0,0 @@ -name: Vil du hjelpe til i nabolaget? -description: Vil du stille opp for nabolaget? Her melder du deg til dugnad og arrangementer, eller til en av komiteene. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Bli med på dugnad eller arrangement - description: 17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer. - action: /received/hjelpe-til - consequence: - - Meld meg på - record_as: frivillige - features: - - name: Hva skjer videre - description: Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit. - icon: lucide:clipboard-list - - name: Hvem leser dette - description: Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:users - - name: Meld deg som hjelper - requirements: - - name: navn - label: Navn - type: text - placeholder: Kari Nordmann - - name: telefon - label: Telefon - type: tel - placeholder: 912 34 567 - - name: hva - label: Hva kan du hjelpe til med? - type: select - options: - - 17. mai - - Juletregranstenning - - Skøytedag - - Dugnad på elvestien - - Det som trengs - multiple: true - description: Fortell kort hva du kan hjelpe til med. - icon: lucide:hand-helping - encouragements: - - Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg. -- name: Sitt i en komité som betyr noe for deg - description: Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i. - action: /received/komite - consequence: - - Meld interesse - record_as: komitesoknader - features: - - name: Hva skjer videre - description: Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå. - icon: lucide:clipboard-list - - name: Hvem leser dette - description: Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:handshake - - name: Meld deg til en komité - requirements: - - name: navn - label: Navn - type: text - placeholder: Kari Nordmann - - name: epost - label: E-post - type: email - placeholder: kari@eksempel.no - - name: komite - label: Hvilken komité? - type: select - options: - - Arrangementer - - Elvesti - - Høringsinstans - - Leke- og møteplasser - - Miljøgate - - Pendlerforhold - - Trafikkforhold - multiple: true - description: Skriv hvilken komité du er interessert i. - icon: lucide:users - encouragements: - - Det tar bare et minutt, og noen fra styret svarer deg. diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/decide/bli-medlem.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/decide/bli-medlem.yaml deleted file mode 100644 index 2453aa6..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/decide/bli-medlem.yaml +++ /dev/null @@ -1,11 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Utmeldt - description: '' - self_transition: - bucket: husstander - to: utmeldt - from: - - open - label: Utmeldt diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/decide/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/decide/dele-utstyr.yaml deleted file mode 100644 index 11765d8..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/decide/dele-utstyr.yaml +++ /dev/null @@ -1,11 +0,0 @@ -name: Skal oppslaget om utstyret fortsatt stå ute? -description: Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån. -alternatives: -- name: Meld at utstyret er tatt ned - description: Oppslaget fjernes fra siden, så ingen flere spør om å låne det. - self_transition: - bucket: oppslag - to: tatt_ned - from: - - open - label: Ta ned oppslaget diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/decide/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/decide/kan-hjelpe.yaml deleted file mode 100644 index 8205c75..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/decide/kan-hjelpe.yaml +++ /dev/null @@ -1,11 +0,0 @@ -name: Vil du fortsatt kunne bli spurt om å hjelpe en nabo? -description: Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå. -alternatives: -- name: Ta en pause fra nabohjelpen - description: Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre. - self_transition: - bucket: hjelpere - to: trukket - from: - - open - label: Trekk meg diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/decide/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/decide/trenger-hjelp.yaml deleted file mode 100644 index c7adb18..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/decide/trenger-hjelp.yaml +++ /dev/null @@ -1,11 +0,0 @@ -name: Har naboen fått hjelpen de trengte? -description: Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet. -alternatives: -- name: Meld fra at hjelpen er gitt - description: Da vet vi at naboen har fått hjelpen sin, og saken lukkes. - self_transition: - bucket: hjelpebehov - to: ordnet - from: - - formidlet - label: Merk som ordnet diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/horingsinstans/_section.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/horingsinstans/_section.yaml deleted file mode 100644 index ad97e31..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/horingsinstans/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: horingsinstans diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/horingsinstans/index.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/horingsinstans/index.yaml deleted file mode 100644 index dad2664..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/horingsinstans/index.yaml +++ /dev/null @@ -1,59 +0,0 @@ -name: Hva sier vi i høringssvaret? -description: Her samler du innspillene og ser hva som er tatt med i velets høringssvar. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Innspill til høringssvar - description: Her ligger innspill fra beboere til saker kommunen har på høring. - action: /horingsinstans - consequence: - - Send svar - features: - - name: Innspill - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: innspill - requires_group: horingsinstans - transitions: - - from: open - to: tatt_med - label: Tatt med i svaret - - from: open - to: ikke_tatt_med - label: Ikke tatt med -- name: Inviter noen inn i Høringsinstans - description: De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /horingsinstans - consequence: - - Inviter - invite: - group: horingsinstans - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - action: /horingsinstans - consequence: - - Send svar - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: horingsinstans - transitions: - - from: open - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/index.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/index.yaml deleted file mode 100644 index 327e15e..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/index.yaml +++ /dev/null @@ -1,118 +0,0 @@ -name: Hva gjør Tomter Vel, og hva kan du få her? -description: Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Velforeningen for Tomter siden 1947 - description: Vi er sju komiteer som jobber på fritida for bygda vår. 157 husstander er med. - features: - - name: 157 husstander er medlemmer - description: Kontingenten går til arrangementer, lekeplasser, elvestien og arbeidet for tryggere trafikk. - icon: lucide:users - - name: Naboer som stiller opp for hverandre - description: Trenger du hjelp med snømåking, handling eller skyss, finner vi en nabo som kan. Du kan også låne og låne ut utstyr. - icon: lucide:heart-handshake -- name: Siste fra bygda - description: Nye meldinger og oppslag, slik de står akkurat nå. - features: - - name: Feil på lekeplasser og sti - description: Det som er meldt inn, og hvor langt vi har kommet med å fikse det. [Alle feilmeldinger](/status/anleggsfeil) - icon: lucide:construction - resource: - source: - kind: kv - bucket: anleggsfeil - public: true - states: [] - empty: Ingenting er meldt ødelagt akkurat nå. Ser du noe, si fra. - jq: 'sort_by(.submitted_ms) | reverse | .[:3] | .[] | .responses |= {hva: .hva, hvor: .hvor}' - - name: Oppslagstavla for naboer - description: Utstyr som er til låns, og det naboene leter etter. [Hele oppslagstavla](/status/oppslag) - icon: lucide:list - resource: - source: - kind: kv - bucket: oppslag - public: true - states: [] - empty: Tavla er tom nå. Legg gjerne ut det første oppslaget. - jq: 'sort_by(.submitted_ms) | reverse | .[:3] | .[] | .responses |= {har_eller_trenger: .har_eller_trenger, hva: .hva}' - - name: Farlige steder i trafikken - description: Det naboer har meldt fra om, og hva velet har gjort med det. [Alle trafikkmeldinger](/status/trafikkmeldinger) - icon: lucide:car - resource: - source: - kind: kv - bucket: trafikkmeldinger - public: true - states: [] - empty: Ingen farlige steder er meldt inn nå. Har du sett et, fortell oss. - jq: 'sort_by(.submitted_ms) | reverse | .[:3] | .[] | .responses |= {hva: .hva, hvor: .hvor}' -- name: Bli medlem eller endre opplysningene dine - description: Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding. - action: /medlem - consequence: - - Til medlemskap - features: - - name: Deg som bor i Tomter - description: Å bli medlem og få betalt kontingenten, at velet har riktige opplysninger om dem. - icon: lucide:house -- name: Meld fra om noe som bør fikses - description: Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed. - action: /melde-fra - consequence: - - Meld fra - features: - - name: Deg som har sett noe som bør fikses - description: At velet tar det opp med kommunen eller den som eier veien, at det blir fikset før noen skader seg. - icon: lucide:alert-triangle -- name: Bli med og gjør en innsats - description: Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse. - action: /bidra - consequence: - - Bli med - features: - - name: Deg som vil gjøre en innsats - description: Å bli satt opp på noe som passer dem, en plass i den komiteen som driver med det de bryr seg om. - icon: lucide:hand-helping -- name: Få hjelp av naboer, eller gi en hånd selv - description: Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere. - action: /naboer - consequence: - - Til nabohjelp - features: - - name: Deg som trenger hjelp eller kan gi en hånd - description: At en nabo stiller opp, å bli spurt når det passer, et oppslag som naboene ser. - icon: lucide:heart-handshake -- name: Få din mening med i høringssvaret - description: Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar. - action: /received/horingsinnspill - consequence: - - Send innspill - record_as: innspill - features: - - name: Hva skjer videre - description: Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen. - icon: lucide:route - - name: Hvem leser dette - description: Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no. - icon: lucide:users - - name: Send et høringsinnspill - requirements: - - name: navn - label: Navn - type: text - placeholder: Kari Nordmann - - name: sak - label: Hvilken sak gjelder det? - type: text - placeholder: Reguleringsplan for Tomterveien - - name: innspill - label: Hva mener du? - type: textarea - placeholder: Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen. - description: Fortell hvilken sak det gjelder og hva du mener. - icon: lucide:megaphone - encouragements: - - Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen. diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/kasserer/_section.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/kasserer/_section.yaml deleted file mode 100644 index 2f8af2f..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/kasserer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: kasserer diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/kasserer/index.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/kasserer/index.yaml deleted file mode 100644 index 0acf94d..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/kasserer/index.yaml +++ /dev/null @@ -1,102 +0,0 @@ -name: Hva venter på meg som kasserer akkurat nå? -description: Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Nye medlemmer som venter på registrering - description: Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem. - action: /kasserer - consequence: - - Lagre - features: - - name: Husstander - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: husstander - requires_group: kasserer - transitions: - - from: open - to: betalt - label: Registrer betaling - - from: open - to: utmeldt - label: Meld ut -- name: Endringer som venter på å bli registrert - description: Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert. - action: /kasserer - consequence: - - Lagre - features: - - name: Medlemsendringer - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: medlemsendringer - requires_group: kasserer - transitions: - - from: open - to: oppdatert - label: Registrer endring -- name: Utlegg som venter på deg - description: Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling. - action: /kasserer - consequence: - - Lagre - features: - - name: Utlegg - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: utlegg - requires_group: kasserer - transitions: - - from: godkjent - to: utbetalt - label: Merk som utbetalt - - from: godkjent - to: avvist - label: Avvis likevel - - from: open - to: godkjent - label: Godkjenn utlegg - - from: open - to: avvist - label: Avvis utlegg -- name: Inviter noen inn i kassereren - description: De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /kasserer - consequence: - - Inviter - invite: - group: kasserer - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - action: /kasserer - consequence: - - Lagre - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: kasserer - transitions: - - from: open - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/komiteer/_section.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/komiteer/_section.yaml deleted file mode 100644 index 57e3295..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/komiteer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: komiteer diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/komiteer/index.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/komiteer/index.yaml deleted file mode 100644 index 3016d12..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/komiteer/index.yaml +++ /dev/null @@ -1,44 +0,0 @@ -name: Hva står ubehandlet i komiteen din nå? -description: Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Få tilbake det du har lagt ut - description: Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake. - action: /komiteer/utlegg - consequence: - - Send utlegg -- name: Inviter noen inn i komiteene - description: De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /komiteer - consequence: - - Inviter - invite: - group: komiteer - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - action: /komiteer - consequence: - - Confirm - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: komiteer - transitions: - - from: open - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/komiteer/utlegg-sent.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/komiteer/utlegg-sent.yaml deleted file mode 100644 index 6b7f3fb..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/komiteer/utlegg-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: Hva skjer med utlegget mitt nå? -description: Utlegget er sendt til kasserer. Du får beskjed når det er sjekket. -alternatives: -- name: Pengene kommer på konto - description: Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga. -- name: Til forsiden - description: '' - action: /komiteer - consequence: - - Til forsiden diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/komiteer/utlegg.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/komiteer/utlegg.yaml deleted file mode 100644 index e419f0d..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/komiteer/utlegg.yaml +++ /dev/null @@ -1,38 +0,0 @@ -followup: false -name: Har du lagt ut penger for komiteen og vil ha dem tilbake? -description: Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Få pengene tilbake - description: Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten. - action: /komiteer/utlegg-sent - consequence: - - Send inn - record_as: utlegg - features: - - name: Fra krav til utbetaling - description: Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor. - icon: lucide:wallet - - name: Kasserer ser dette - description: Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster. - icon: lucide:coins - - name: Krav om refusjon - requirements: - - name: navn - label: Navn - type: text - placeholder: Kari Nordmann - - name: belop - label: Beløp - type: text - placeholder: 450 kr - - name: hva - label: Hva gjaldt det - type: textarea - placeholder: Kaffe og kjeks til dugnaden - description: Ha kvittering eller bilag klart før du fyller ut. - icon: lucide:receipt - encouragements: - - Legg ved bilag om du har det, så går det raskere. diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/lekeplasser/_section.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/lekeplasser/_section.yaml deleted file mode 100644 index 1652221..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/lekeplasser/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: lekeplasser diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/lekeplasser/index.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/lekeplasser/index.yaml deleted file mode 100644 index a30dd6f..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/lekeplasser/index.yaml +++ /dev/null @@ -1,59 +0,0 @@ -name: Hva må fikses på lekeplassene og stien nå? -description: Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Det som er meldt inn av skader - description: Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses. - action: /lekeplasser - consequence: - - Lagre - features: - - name: Anleggsfeil - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: anleggsfeil - requires_group: lekeplasser - transitions: - - from: open - to: tatt_tak_i - label: Ta tak i saken - - from: tatt_tak_i - to: utbedret - label: Merk som utbedret -- name: Inviter noen inn i Leke- og møteplasser - description: De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /lekeplasser - consequence: - - Inviter - invite: - group: lekeplasser - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - action: /lekeplasser - consequence: - - Lagre - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: lekeplasser - transitions: - - from: open - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/medlem/index.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/medlem/index.yaml deleted file mode 100644 index 264baba..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/medlem/index.yaml +++ /dev/null @@ -1,72 +0,0 @@ -name: Vil du bli medlem, eller endre medlemskapet ditt? -description: Bli medlem av Tomter Vel, eller oppdater opplysningene dine hvis du allerede er medlem. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Bli medlem av Tomter Vel - description: Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet. - action: /received/bli-medlem - consequence: - - Bli medlem - record_as: husstander - features: - - name: Etter innmelding - description: Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem. - icon: lucide:coins - - name: Hvem svarer deg - description: Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden. - icon: lucide:user - - name: Meld deg inn - requirements: - - name: navn - label: Navn - type: text - placeholder: Ola Nordmann - - name: adresse - label: Adresse - type: text - placeholder: Tomterveien 12 - - name: email - label: Email - type: email - - name: telefon - label: Telefon - type: tel - optional: true - placeholder: 123 45 678 - description: Ha adressen i Tomter og en e-post du bruker klar. - icon: lucide:user-plus - encouragements: - - Kasserer sender deg kontingenten på e-post rett etterpå. -- name: Oppdater eller avslutt medlemskapet - description: Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger. - action: /received/endre-medlemskap - consequence: - - Send endring - record_as: medlemsendringer - features: - - name: Etter du sender inn - description: Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om. - icon: lucide:refresh-cw - - name: Hvem svarer deg - description: Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden. - icon: lucide:user - - name: Endre medlemskap - requirements: - - name: navn - label: Navn - type: text - placeholder: Ola Nordmann - - name: adresse - label: Adresse - type: text - placeholder: Ny adresse i Tomter - - name: hva_er_nytt - label: Hva vil du endre? - type: textarea - placeholder: Ny e-post, ny adresse, eller ønske om utmelding - description: Skriv navnet ditt og hva som er nytt. - icon: lucide:pencil - encouragements: - - Det tar bare et par minutter, og kasserer ordner resten. diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/melde-fra/index.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/melde-fra/index.yaml deleted file mode 100644 index cee30e1..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/melde-fra/index.yaml +++ /dev/null @@ -1,69 +0,0 @@ -name: Hva vil du melde fra om? -description: Har du sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien? Her sier du fra til velet. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Meld fra om en trafikkfare - description: Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre. - action: /received/trafikkfare - consequence: - - Send inn - record_as: trafikkmeldinger - features: - - name: Hva skjer videre - description: Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist. - icon: lucide:route - - name: Hvem leser dette - description: Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no. - icon: lucide:car - - name: Meld trafikkfare - requirements: - - name: hvor - label: Hvor var det - type: text - placeholder: Krysset Tomterveien / Elvestien - - name: hva - label: Hva så du - type: textarea - placeholder: Dårlig sikt i krysset, biler kjører fort - - name: epost - label: E-post (valgfritt) - type: email - optional: true - placeholder: ola.nordmann@epost.no - description: Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer. - icon: lucide:alert-triangle - encouragements: - - Bare noen linjer om hva og hvor er nok til at vi kan følge opp. -- name: Meld fra om noe ødelagt - description: Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det. - action: /received/anleggsfeil - consequence: - - Send inn - record_as: anleggsfeil - features: - - name: Hva skjer videre - description: Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet. - icon: lucide:wrench - - name: Hvem leser dette - description: Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no. - icon: lucide:hammer - - name: Meld anleggsfeil - requirements: - - name: hvor - label: Hvor er det - type: select - options: - - Lekeplassen - - Elvestien - - Skøytebanen - - Et annet sted - - name: hva - label: Hva er ødelagt - type: textarea - placeholder: Løs planke på gjerdet ved husken - description: Fortell hva som er ødelagt og omtrent hvor det er. - icon: lucide:construction - encouragements: - - Det holder med noen ord om hva du så og hvor. diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/naboer/index.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/naboer/index.yaml deleted file mode 100644 index 0a9eaab..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/naboer/index.yaml +++ /dev/null @@ -1,125 +0,0 @@ -name: Trenger du en hånd, eller kan du gi en? -description: Godt naboskap gjør hverdagen lettere. Trenger du en hånd, kan gi en, eller har noe å låne bort? -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Få en nabo til å stille opp - description: Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp. - action: /received/trenger-hjelp - consequence: - - Be om hjelp - record_as: hjelpebehov - features: - - name: Fra melding til hjelp - description: Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed. - icon: lucide:hand-helping - - name: Hvem ser dette - description: Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden. - icon: lucide:users - - name: Be om en hånd - requirements: - - name: navn - label: Navn - type: text - placeholder: Kari Nordmann - - name: email - label: E-post - type: email - placeholder: kari@eksempel.no - - name: adresse - label: Adresse - type: text - placeholder: Tomterveien 12 - - name: hva - label: Hva trenger du hjelp til - type: textarea - placeholder: Måke snø på trappa, handle inn litt mat - - name: telefon - label: Telefon - type: tel - optional: true - placeholder: 123 45 678 - description: Skriv kort hva du trenger hjelp til. - icon: lucide:heart-handshake - encouragements: - - Vi finner en nabo som kan stille opp så fort som mulig. -- name: Bli spurt når en nabo trenger en hånd - description: Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer. - action: /received/kan-hjelpe - consequence: - - Meld deg - record_as: hjelpere - features: - - name: Fra påmelding til spørsmål - description: Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra. - icon: lucide:user-check - - name: Hvem ser dette - description: Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no. - icon: lucide:heart-handshake - - name: Meld deg som hjelper - requirements: - - name: navn - label: Navn - type: text - placeholder: Kari Nordmann - - name: email - label: E-post - type: email - placeholder: kari@eksempel.no - - name: telefon - label: Telefon - type: tel - placeholder: 123 45 678 - - name: kan - label: Hva kan du hjelpe med - type: select - options: - - Snømåking - - Handling - - Kjøring - - Småfiks i huset - - En prat og litt selskap - - Det som trengs - multiple: true - description: Fortell kort hva du kan bidra med. - icon: lucide:hand-helping - encouragements: - - Du blir bare kontaktet når noe passer for deg. -- name: Lån ut eller lån av naboen - description: Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det. - action: /received/dele-utstyr - consequence: - - Legg ut oppslag - record_as: oppslag - features: - - name: Fra oppslag til avtale - description: Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen. - icon: lucide:clipboard-list - - name: Hvem ser dette - description: Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden. - icon: lucide:users - - name: Lån eller utlån - requirements: - - name: navn - label: Navn - type: text - placeholder: Ola Nordmann - - name: email - label: E-post - type: email - placeholder: ola@eksempel.no - - name: har_eller_trenger - label: Har du eller trenger du - type: select - options: - - Jeg har noe å låne ut - - Jeg trenger å låne noe - - name: hva - label: Hva gjelder det - type: textarea - placeholder: Hengerfeste til bil, tilhenger, stige - description: Skriv kort hva det gjelder, så folk skjønner det med en gang. - icon: lucide:package - encouragements: - - Vi legger det ut så naboene kan se det. diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/nabohjelp/_section.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/nabohjelp/_section.yaml deleted file mode 100644 index 5b3a2ad..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/nabohjelp/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: nabohjelp diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/nabohjelp/index.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/nabohjelp/index.yaml deleted file mode 100644 index 8f574e8..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/nabohjelp/index.yaml +++ /dev/null @@ -1,85 +0,0 @@ -name: Hvem trenger hjelp, og hvem kan stille opp? -description: Her kobler du naboer som trenger hjelp med dem som kan stille opp. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Naboer som trenger en hånd - description: Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe. - action: /nabohjelp - consequence: - - Lagre - features: - - name: Hjelpebehov - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: hjelpebehov - requires_group: nabohjelp - transitions: - - from: formidlet - to: ordnet - label: Meld ordnet - - from: formidlet - to: ikke_lost - label: Meld ikke løst - - from: open - to: formidlet - label: Koble til nabo - - from: open - to: ikke_lost - label: Meld ikke løst -- name: Naboer som kan stille opp - description: Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem. - action: /nabohjelp - consequence: - - Lagre - features: - - name: Hjelpere - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: hjelpere - requires_group: nabohjelp - transitions: - - from: open - to: registrert - label: Registrer som hjelper - - from: open - to: trukket - label: Meld trukket -- name: Inviter noen inn i nabohjelpen - description: De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /nabohjelp - consequence: - - Inviter - invite: - group: nabohjelp - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - action: /nabohjelp - consequence: - - Lagre - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: nabohjelp - transitions: - - from: open - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/anleggsfeil.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/anleggsfeil.yaml deleted file mode 100644 index 044dc75..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/anleggsfeil.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: Hva skjer med meldingen min nå? -description: Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt. -alternatives: -- name: Komiteen tar tak i det - description: Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg. -- name: Se andre meldte feil - description: Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet. - action: /status/anleggsfeil - consequence: - - Se meldte feil -- name: Tilbake til forsiden - description: '' - action: / - consequence: - - Tilbake til forsiden diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/bli-medlem.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/bli-medlem.yaml deleted file mode 100644 index 5092f36..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/bli-medlem.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: Hva skjer etter at jeg har meldt meg inn? -description: Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert. -alternatives: -- name: Kasserer sender deg betalingsinfo - description: Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten. -- name: Tilbake til forsiden - description: '' - action: / - consequence: - - Tilbake til forsiden diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/dele-utstyr.yaml deleted file mode 100644 index 4a41663..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/dele-utstyr.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: Hva skjer med det jeg har lagt ut? -description: Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan. -alternatives: -- name: Styret legger det ut for deg - description: En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne. -- name: Se alt naboene deler - description: Se hva andre i Tomter har lagt ut til utlån akkurat nå. - action: /status/oppslag - consequence: - - Se hva naboer deler -- name: Tilbake til forsiden - description: '' - action: / - consequence: - - Tilbake til forsiden diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/endre-medlemskap.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/endre-medlemskap.yaml deleted file mode 100644 index 5026325..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/endre-medlemskap.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: Hva skjer nå med det jeg meldte inn? -description: Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut. -alternatives: -- name: Kasserer retter opp opplysningene - description: Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg. -- name: Tilbake til forsiden - description: '' - action: / - consequence: - - Tilbake til forsiden diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/hjelpe-til.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/hjelpe-til.yaml deleted file mode 100644 index cde30a4..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/hjelpe-til.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: Hva skjer nå som jeg har meldt meg? -description: Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg. -alternatives: -- name: Komiteen tar kontakt - description: Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden. -- name: Tilbake til forsiden - description: '' - action: / - consequence: - - Tilbake til forsiden diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/horingsinnspill.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/horingsinnspill.yaml deleted file mode 100644 index e2a7281..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/horingsinnspill.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: Hva skjer med det jeg har sagt om saken? -description: Innspillet ditt er sendt til høringsinstansen i velet. -alternatives: -- name: Innspillet ditt inn i vurderingen - description: De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med. -- name: Tilbake til forsiden - description: '' - action: / - consequence: - - Tilbake til forsiden diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/kan-hjelpe.yaml deleted file mode 100644 index 7614d0c..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/kan-hjelpe.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: Hva skjer nå som jeg har registrert meg? -description: Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe. -alternatives: -- name: Du blir kontaktet ved behov - description: Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte. -- name: Tilbake til forsiden - description: '' - action: / - consequence: - - Tilbake til forsiden diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/komite.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/komite.yaml deleted file mode 100644 index df36c02..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/komite.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: Hva skjer nå som jeg har meldt interesse for en komité? -description: Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg. -alternatives: -- name: Vi finner riktig komité til deg - description: Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer. -- name: Tilbake til forsiden - description: '' - action: / - consequence: - - Tilbake til forsiden diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/trafikkfare.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/trafikkfare.yaml deleted file mode 100644 index dc08851..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/trafikkfare.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: Hva skjer med meldingen min nå? -description: Meldingen din om trafikkfaren er sendt til komiteen for trafikk. -alternatives: -- name: Trafikkomiteen tar den videre - description: Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs. -- name: Andre meldte trafikkfarer - description: Se hva andre har meldt inn, og status på sakene. - action: /status/trafikkmeldinger - consequence: - - Se andre trafikkfarer -- name: Tilbake til forsiden - description: '' - action: / - consequence: - - Tilbake til forsiden diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/trenger-hjelp.yaml deleted file mode 100644 index 989e0fe..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/received/trenger-hjelp.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: Hva skjer nå som jeg har bedt om hjelp? -description: Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp. -alternatives: -- name: Vi finner en nabo til deg - description: Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer. -- name: Til forsiden - description: '' - action: / - consequence: - - Til forsiden diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/status/anleggsfeil/index.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/status/anleggsfeil/index.yaml deleted file mode 100644 index 2227626..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/status/anleggsfeil/index.yaml +++ /dev/null @@ -1,24 +0,0 @@ -name: Hva skjer med det jeg har meldt fra om? -description: Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Status på meldte anleggsfeil - description: Alle meldinger er åpne for alle å se. - features: - - name: Anleggsfeil - description: Hver rad er én sak og hvor langt den har kommet. Navn og kontaktopplysninger vises ikke her. - resource: - source: - kind: kv - bucket: anleggsfeil - public: true - states: [] - empty: Ingenting her ennå. - jq: 'sort_by(.submitted_ms) | reverse | .[] | .responses |= {hva: .hva, hvor: .hvor}' -- name: Tilbake til meldinger - description: '' - action: / - consequence: - - Tilbake til meldinger diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/status/oppslag/index.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/status/oppslag/index.yaml deleted file mode 100644 index 003b03d..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/status/oppslag/index.yaml +++ /dev/null @@ -1,24 +0,0 @@ -name: Hva er sendt inn, og hvor langt har det kommet? -description: Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Oversikt over det som er meldt inn - description: Åpen liste – navn og detaljer vises ikke. - features: - - name: Oppslag - description: Hver rad er én sak og hvor langt den har kommet. Navn og kontaktopplysninger vises ikke her. - resource: - source: - kind: kv - bucket: oppslag - public: true - states: [] - empty: Ingenting her ennå. - jq: 'sort_by(.submitted_ms) | reverse | .[] | .responses |= {har_eller_trenger: .har_eller_trenger, hva: .hva}' -- name: Tilbake - description: '' - action: / - consequence: - - Tilbake diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/status/trafikkmeldinger/index.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/status/trafikkmeldinger/index.yaml deleted file mode 100644 index c638f63..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/status/trafikkmeldinger/index.yaml +++ /dev/null @@ -1,24 +0,0 @@ -name: Er det meldt fra om noe farlig i trafikken der jeg bor? -description: Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Trafikkmeldinger og status - description: Alle meldinger som er sendt inn, og hvor de står nå. - features: - - name: Trafikkmeldinger - description: Hver rad er én sak og hvor langt den har kommet. Navn og kontaktopplysninger vises ikke her. - resource: - source: - kind: kv - bucket: trafikkmeldinger - public: true - states: [] - empty: Ingenting her ennå. - jq: 'sort_by(.submitted_ms) | reverse | .[] | .responses |= {hva: .hva, hvor: .hvor}' -- name: Tilbake - description: '' - action: / - consequence: - - Tilbake diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/styret/_section.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/styret/_section.yaml deleted file mode 100644 index 5a34160..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/styret/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: styret diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/styret/index.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/styret/index.yaml deleted file mode 100644 index 5b2a7f9..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/styret/index.yaml +++ /dev/null @@ -1,219 +0,0 @@ -name: Hva venter på styret akkurat nå? -description: 'Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.' -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Høringsinnspill fra beboerne - description: Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar. - action: /styret - consequence: - - Lagre - features: - - name: Innspill - description: Hver rad er én sak og hvor langt den har kommet. En annen pult flytter disse. - resource: - source: - kind: kv - bucket: innspill - requires_group: styret - transitions: [] -- name: Søknader til komiteene - description: Her ligger alle som har meldt seg til en komité og venter på en plass. - action: /styret - consequence: - - Lagre - features: - - name: Komitesoknader - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: komitesoknader - requires_group: styret - transitions: - - from: open - to: plassert - label: Sett i komité - - from: open - to: avslatt - label: Avslå søknaden -- name: Utstyr til utlån blant naboer - description: Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut. - action: /styret - consequence: - - Lagre - features: - - name: Oppslag - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: oppslag - requires_group: styret - transitions: - - from: open - to: lagt_ut - label: Legg ut oppslaget - - from: open - to: tatt_ned - label: Ta ned oppslaget -- name: Meldinger om trafikkfarer - description: Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier. - action: /styret - consequence: - - Lagre - features: - - name: Trafikkmeldinger - description: Hver rad er én sak og hvor langt den har kommet. En annen pult flytter disse. - resource: - source: - kind: kv - bucket: trafikkmeldinger - requires_group: styret - transitions: [] -- name: Inviter noen inn i Arrangementer - description: De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: arrangementer - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Inviter noen inn i Høringsinstans - description: De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: horingsinstans - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Inviter noen inn i kassereren - description: De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: kasserer - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Inviter noen inn i komiteene - description: De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: komiteer - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Inviter noen inn i Leke- og møteplasser - description: De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: lekeplasser - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Inviter noen inn i nabohjelpen - description: De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: nabohjelp - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Inviter noen inn i styret - description: De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: styret - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Inviter noen inn i Trafikkforhold - description: De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: trafikk - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - action: /styret - consequence: - - Lagre - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: styret - transitions: - - from: open - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/trafikk/_section.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/trafikk/_section.yaml deleted file mode 100644 index dbe5246..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/trafikk/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: trafikk diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/trafikk/index.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/trafikk/index.yaml deleted file mode 100644 index 8fde653..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/questions/trafikk/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -name: Hvilke trafikkfarer må følges opp? -description: Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Farlige steder i trafikken - description: Farlige steder i trafikken som naboer har meldt inn. - action: /trafikk - consequence: - - Lagre - features: - - name: Trafikkmeldinger - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: trafikkmeldinger - requires_group: trafikk - transitions: - - from: open - to: tatt_opp - label: Ta opp med kommunen - - from: open - to: avvist - label: Avvis meldingen - - from: tatt_opp - to: ordnet - label: Meld ordnet - - from: tatt_opp - to: avvist - label: Avvis meldingen -- name: Inviter noen inn i Trafikkforhold - description: De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /trafikk - consequence: - - Inviter - invite: - group: trafikk - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - action: /trafikk - consequence: - - Lagre - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: trafikk - transitions: - - from: open - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/site.yaml b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/site.yaml deleted file mode 100644 index c264291..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/site.yaml +++ /dev/null @@ -1,16 +0,0 @@ -title: Tomter Vel -lang: no -mail: - from: Tomter Vel - reply_to: post@tomtervel.no - invite: - subject: Din konto hos {site_name} - body: |- - Hei {name}, - - {site_name} har laget en konto til deg og lagt deg til i {group}. Brukernavnet ditt er {username}. - - Velg passord her før {expires}: - {link} - - Etterpå logger du inn på {site}. diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/words.json b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/words.json deleted file mode 100644 index c1261cd..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/site/words.json +++ /dev/null @@ -1,1068 +0,0 @@ -{ - "aggregates.yaml": { - "hjelpebehov": { - "formidlet": { - "subject": "En nabo er koblet på", - "body": "Vi har funnet en nabo som kan hjelpe. De tar kontakt med deg direkte.\n\nDet du kan gjøre nå: {site}/decide/trenger-hjelp?chain={chain}&email={email}" - }, - "open": { - "subject": "Vi leter etter en nabo til deg", - "body": "Vi har mottatt det du trenger hjelp til, og ser etter en nabo som kan stille opp. Du hører fra oss så snart vi har funnet noen." - }, - "ordnet": { - "subject": "Bra det løste seg", - "body": "Godt å høre at det ordnet seg. Takk for at du sa fra, og lykke til videre." - } - }, - "husstander": { - "betalt": { - "subject": "Medlemskapet er i orden", - "body": "Kontingenten er registrert betalt. Du er nå medlem av Tomter Vel - velkommen med!" - }, - "open": { - "subject": "Nesten i mål som medlem", - "body": "Takk for at du vil bli medlem. Du får en betalingsoppfordring med kontonummer og beløp så snart kasserer har sett på saken.\n\nDet du kan gjøre nå: {site}/decide/bli-medlem?chain={chain}&email={email}" - } - }, - "oppslag": { - "lagt_ut": { - "subject": "Oppslaget er synlig for naboene", - "body": "Oppslaget ditt er lagt ut, og naboene kan nå se det." - } - } - }, - "questions/arrangementer/index.yaml": { - "question": "Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp?", - "description": "Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer.", - "confirm": "Lagre", - "buckets": { - "frivillige": { - "heading": "Frivillige til arrangementer og dugnad", - "description": "Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem.", - "moves": { - "kontaktet->satt_opp": "Sett opp", - "kontaktet->takket_nei": "Takket nei", - "open->kontaktet": "Merk som kontaktet", - "open->takket_nei": "Takket nei" - }, - "list_title": "Frivillige", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - } - }, - "links": {}, - "invites": { - "arrangementer": { - "heading": "Inviter noen inn i Arrangementer", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt." - } - }, - "questions/bidra/index.yaml": { - "question": "Vil du hjelpe til i nabolaget?", - "description": "Vil du stille opp for nabolaget? Her melder du deg til dugnad og arrangementer, eller til en av komiteene.", - "needs": { - "hjelpe-til": { - "heading": "Bli med på dugnad eller arrangement", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.", - "button": "Meld meg på", - "encouragement": "Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg.", - "icon": "hand-helping", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Hva skjer videre", - "road_description": "Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit.", - "road_icon": "lucide:clipboard-list", - "who_title": "Hvem leser dette", - "who_description": "Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "form_title": "Meld deg som hjelper", - "form_description": "Fortell kort hva du kan hjelpe til med.", - "labels": { - "navn": "Navn", - "telefon": "Telefon", - "hva": "Hva kan du hjelpe til med?" - }, - "hints": { - "navn": "Kari Nordmann", - "telefon": "912 34 567", - "hva": "" - } - }, - "komite": { - "heading": "Sitt i en komité som betyr noe for deg", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i.", - "button": "Meld interesse", - "encouragement": "Det tar bare et minutt, og noen fra styret svarer deg.", - "icon": "users", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Hva skjer videre", - "road_description": "Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå.", - "road_icon": "lucide:clipboard-list", - "who_title": "Hvem leser dette", - "who_description": "Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:handshake", - "form_title": "Meld deg til en komité", - "form_description": "Skriv hvilken komité du er interessert i.", - "labels": { - "navn": "Navn", - "epost": "E-post", - "komite": "Hvilken komité?" - }, - "hints": { - "navn": "Kari Nordmann", - "epost": "kari@eksempel.no", - "komite": "" - } - } - } - }, - "questions/decide/bli-medlem.yaml": { - "question": "What would you like to do?", - "description": "", - "moves": { - "utmeldt": { - "heading": "Utmeldt", - "description": "", - "button": "Utmeldt" - } - } - }, - "questions/decide/dele-utstyr.yaml": { - "question": "Skal oppslaget om utstyret fortsatt stå ute?", - "description": "Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån.", - "moves": { - "tatt_ned": { - "heading": "Meld at utstyret er tatt ned", - "description": "Oppslaget fjernes fra siden, så ingen flere spør om å låne det.", - "button": "Ta ned oppslaget" - } - } - }, - "questions/decide/kan-hjelpe.yaml": { - "question": "Vil du fortsatt kunne bli spurt om å hjelpe en nabo?", - "description": "Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå.", - "moves": { - "trukket": { - "heading": "Ta en pause fra nabohjelpen", - "description": "Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre.", - "button": "Trekk meg" - } - } - }, - "questions/decide/trenger-hjelp.yaml": { - "question": "Har naboen fått hjelpen de trengte?", - "description": "Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet.", - "moves": { - "ordnet": { - "heading": "Meld fra at hjelpen er gitt", - "description": "Da vet vi at naboen har fått hjelpen sin, og saken lukkes.", - "button": "Merk som ordnet" - } - } - }, - "questions/horingsinstans/index.yaml": { - "question": "Hva sier vi i høringssvaret?", - "description": "Her samler du innspillene og ser hva som er tatt med i velets høringssvar.", - "confirm": "Send svar", - "buckets": { - "innspill": { - "heading": "Innspill til høringssvar", - "description": "Her ligger innspill fra beboere til saker kommunen har på høring.", - "moves": { - "open->tatt_med": "Tatt med i svaret", - "open->ikke_tatt_med": "Ikke tatt med" - }, - "list_title": "Innspill", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - } - }, - "links": {}, - "invites": { - "horingsinstans": { - "heading": "Inviter noen inn i Høringsinstans", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt." - } - }, - "questions/index.yaml": { - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "description": "Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står.", - "opener": { - "heading": "Velforeningen for Tomter siden 1947", - "description": "Vi er sju komiteer som jobber på fritida for bygda vår. 157 husstander er med.", - "features": { - "medlem": { - "heading": "157 husstander er medlemmer", - "description": "Kontingenten går til arrangementer, lekeplasser, elvestien og arbeidet for tryggere trafikk.", - "icon": "users" - }, - "nabo": { - "heading": "Naboer som stiller opp for hverandre", - "description": "Trenger du hjelp med snømåking, handling eller skyss, finner vi en nabo som kan. Du kan også låne og låne ut utstyr.", - "icon": "heart-handshake" - } - } - }, - "shopping": { - "heading": "Siste fra bygda", - "description": "Nye meldinger og oppslag, slik de står akkurat nå.", - "items": { - "status-anleggsfeil": { - "heading": "Feil på lekeplasser og sti", - "description": "Det som er meldt inn, og hvor langt vi har kommet med å fikse det.", - "link": "Alle feilmeldinger", - "empty": "Ingenting er meldt ødelagt akkurat nå. Ser du noe, si fra.", - "icon": "construction" - }, - "status-oppslag": { - "heading": "Oppslagstavla for naboer", - "description": "Utstyr som er til låns, og det naboene leter etter.", - "link": "Hele oppslagstavla", - "empty": "Tavla er tom nå. Legg gjerne ut det første oppslaget.", - "icon": "list" - }, - "status-trafikkmeldinger": { - "heading": "Farlige steder i trafikken", - "description": "Det naboer har meldt fra om, og hva velet har gjort med det.", - "link": "Alle trafikkmeldinger", - "empty": "Ingen farlige steder er meldt inn nå. Har du sett et, fortell oss.", - "icon": "car" - } - } - }, - "doors": { - "medlem": { - "heading": "Bli medlem eller endre opplysningene dine", - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.", - "button": "Til medlemskap", - "icon": "house", - "for_whom": "Deg som bor i Tomter", - "behind": "Å bli medlem og få betalt kontingenten, at velet har riktige opplysninger om dem." - }, - "melde-fra": { - "heading": "Meld fra om noe som bør fikses", - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed.", - "button": "Meld fra", - "icon": "alert-triangle", - "for_whom": "Deg som har sett noe som bør fikses", - "behind": "At velet tar det opp med kommunen eller den som eier veien, at det blir fikset før noen skader seg." - }, - "bidra": { - "heading": "Bli med og gjør en innsats", - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.", - "button": "Bli med", - "icon": "hand-helping", - "for_whom": "Deg som vil gjøre en innsats", - "behind": "Å bli satt opp på noe som passer dem, en plass i den komiteen som driver med det de bryr seg om." - }, - "naboer": { - "heading": "Få hjelp av naboer, eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.", - "button": "Til nabohjelp", - "icon": "heart-handshake", - "for_whom": "Deg som trenger hjelp eller kan gi en hånd", - "behind": "At en nabo stiller opp, å bli spurt når det passer, et oppslag som naboene ser." - } - }, - "needs": { - "horingsinnspill": { - "heading": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "button": "Send innspill", - "encouragement": "Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen.", - "icon": "megaphone", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Hva skjer videre", - "road_description": "Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen.", - "road_icon": "lucide:route", - "who_title": "Hvem leser dette", - "who_description": "Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:users", - "form_title": "Send et høringsinnspill", - "form_description": "Fortell hvilken sak det gjelder og hva du mener.", - "labels": { - "navn": "Navn", - "sak": "Hvilken sak gjelder det?", - "innspill": "Hva mener du?" - }, - "hints": { - "navn": "Kari Nordmann", - "sak": "Reguleringsplan for Tomterveien", - "innspill": "Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen." - } - } - } - }, - "questions/kasserer/index.yaml": { - "question": "Hva venter på meg som kasserer akkurat nå?", - "description": "Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer.", - "confirm": "Lagre", - "buckets": { - "husstander": { - "heading": "Nye medlemmer som venter på registrering", - "description": "Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem.", - "moves": { - "open->betalt": "Registrer betaling", - "open->utmeldt": "Meld ut" - }, - "list_title": "Husstander", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - }, - "medlemsendringer": { - "heading": "Endringer som venter på å bli registrert", - "description": "Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert.", - "moves": { - "open->oppdatert": "Registrer endring" - }, - "list_title": "Medlemsendringer", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - }, - "utlegg": { - "heading": "Utlegg som venter på deg", - "description": "Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling.", - "moves": { - "godkjent->utbetalt": "Merk som utbetalt", - "godkjent->avvist": "Avvis likevel", - "open->godkjent": "Godkjenn utlegg", - "open->avvist": "Avvis utlegg" - }, - "list_title": "Utlegg", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - } - }, - "links": {}, - "invites": { - "kasserer": { - "heading": "Inviter noen inn i kassereren", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt." - } - }, - "questions/komiteer/index.yaml": { - "question": "Hva står ubehandlet i komiteen din nå?", - "description": "Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp.", - "confirm": "Confirm", - "buckets": {}, - "links": { - "utlegg": { - "heading": "Få tilbake det du har lagt ut", - "description": "Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake.", - "button": "Send utlegg" - } - }, - "invites": { - "komiteer": { - "heading": "Inviter noen inn i komiteene", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt." - } - }, - "questions/komiteer/utlegg-sent.yaml": { - "question": "Hva skjer med utlegget mitt nå?", - "description": "Utlegget er sendt til kasserer. Du får beskjed når det er sjekket.", - "next_heading": "Pengene kommer på konto", - "next_description": "Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga.", - "back": "Til forsiden" - }, - "questions/komiteer/utlegg.yaml": { - "heading": "Få pengene tilbake", - "description": "Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten.", - "button": "Send inn", - "encouragement": "Legg ved bilag om du har det, så går det raskere.", - "icon": "receipt", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Fra krav til utbetaling", - "road_description": "Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor.", - "road_icon": "lucide:wallet", - "who_title": "Kasserer ser dette", - "who_description": "Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster.", - "who_icon": "lucide:coins", - "form_title": "Krav om refusjon", - "form_description": "Ha kvittering eller bilag klart før du fyller ut.", - "labels": { - "navn": "Navn", - "belop": "Beløp", - "hva": "Hva gjaldt det" - }, - "hints": { - "navn": "Kari Nordmann", - "belop": "450 kr", - "hva": "Kaffe og kjeks til dugnaden" - }, - "question": "Har du lagt ut penger for komiteen og vil ha dem tilbake?", - "page_description": "Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake." - }, - "questions/lekeplasser/index.yaml": { - "question": "Hva må fikses på lekeplassene og stien nå?", - "description": "Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset.", - "confirm": "Lagre", - "buckets": { - "anleggsfeil": { - "heading": "Det som er meldt inn av skader", - "description": "Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses.", - "moves": { - "open->tatt_tak_i": "Ta tak i saken", - "tatt_tak_i->utbedret": "Merk som utbedret" - }, - "list_title": "Anleggsfeil", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - } - }, - "links": {}, - "invites": { - "lekeplasser": { - "heading": "Inviter noen inn i Leke- og møteplasser", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt." - } - }, - "questions/medlem/index.yaml": { - "question": "Vil du bli medlem, eller endre medlemskapet ditt?", - "description": "Bli medlem av Tomter Vel, eller oppdater opplysningene dine hvis du allerede er medlem.", - "needs": { - "bli-medlem": { - "heading": "Bli medlem av Tomter Vel", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.", - "button": "Bli medlem", - "encouragement": "Kasserer sender deg kontingenten på e-post rett etterpå.", - "icon": "user-plus", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Etter innmelding", - "road_description": "Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem.", - "road_icon": "lucide:coins", - "who_title": "Hvem svarer deg", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "form_title": "Meld deg inn", - "form_description": "Ha adressen i Tomter og en e-post du bruker klar.", - "labels": { - "navn": "Navn", - "adresse": "Adresse", - "email": "Email", - "telefon": "Telefon" - }, - "hints": { - "navn": "Ola Nordmann", - "adresse": "Tomterveien 12", - "email": "", - "telefon": "123 45 678" - } - }, - "endre-medlemskap": { - "heading": "Oppdater eller avslutt medlemskapet", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.", - "button": "Send endring", - "encouragement": "Det tar bare et par minutter, og kasserer ordner resten.", - "icon": "pencil", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Etter du sender inn", - "road_description": "Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om.", - "road_icon": "lucide:refresh-cw", - "who_title": "Hvem svarer deg", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "form_title": "Endre medlemskap", - "form_description": "Skriv navnet ditt og hva som er nytt.", - "labels": { - "navn": "Navn", - "adresse": "Adresse", - "hva_er_nytt": "Hva vil du endre?" - }, - "hints": { - "navn": "Ola Nordmann", - "adresse": "Ny adresse i Tomter", - "hva_er_nytt": "Ny e-post, ny adresse, eller ønske om utmelding" - } - } - } - }, - "questions/melde-fra/index.yaml": { - "question": "Hva vil du melde fra om?", - "description": "Har du sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien? Her sier du fra til velet.", - "needs": { - "trafikkfare": { - "heading": "Meld fra om en trafikkfare", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.", - "button": "Send inn", - "encouragement": "Bare noen linjer om hva og hvor er nok til at vi kan følge opp.", - "icon": "alert-triangle", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Hva skjer videre", - "road_description": "Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist.", - "road_icon": "lucide:route", - "who_title": "Hvem leser dette", - "who_description": "Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:car", - "form_title": "Meld trafikkfare", - "form_description": "Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer.", - "labels": { - "hvor": "Hvor var det", - "hva": "Hva så du", - "epost": "E-post (valgfritt)" - }, - "hints": { - "hvor": "Krysset Tomterveien / Elvestien", - "hva": "Dårlig sikt i krysset, biler kjører fort", - "epost": "ola.nordmann@epost.no" - } - }, - "anleggsfeil": { - "heading": "Meld fra om noe ødelagt", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.", - "button": "Send inn", - "encouragement": "Det holder med noen ord om hva du så og hvor.", - "icon": "construction", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Hva skjer videre", - "road_description": "Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet.", - "road_icon": "lucide:wrench", - "who_title": "Hvem leser dette", - "who_description": "Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:hammer", - "form_title": "Meld anleggsfeil", - "form_description": "Fortell hva som er ødelagt og omtrent hvor det er.", - "labels": { - "hvor": "Hvor er det", - "hva": "Hva er ødelagt" - }, - "hints": { - "hvor": "", - "hva": "Løs planke på gjerdet ved husken" - } - } - } - }, - "questions/naboer/index.yaml": { - "question": "Trenger du en hånd, eller kan du gi en?", - "description": "Godt naboskap gjør hverdagen lettere. Trenger du en hånd, kan gi en, eller har noe å låne bort?", - "needs": { - "trenger-hjelp": { - "heading": "Få en nabo til å stille opp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.", - "button": "Be om hjelp", - "encouragement": "Vi finner en nabo som kan stille opp så fort som mulig.", - "icon": "heart-handshake", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Fra melding til hjelp", - "road_description": "Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed.", - "road_icon": "lucide:hand-helping", - "who_title": "Hvem ser dette", - "who_description": "Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "form_title": "Be om en hånd", - "form_description": "Skriv kort hva du trenger hjelp til.", - "labels": { - "navn": "Navn", - "email": "E-post", - "adresse": "Adresse", - "hva": "Hva trenger du hjelp til", - "telefon": "Telefon" - }, - "hints": { - "navn": "Kari Nordmann", - "email": "kari@eksempel.no", - "adresse": "Tomterveien 12", - "hva": "Måke snø på trappa, handle inn litt mat", - "telefon": "123 45 678" - } - }, - "kan-hjelpe": { - "heading": "Bli spurt når en nabo trenger en hånd", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.", - "button": "Meld deg", - "encouragement": "Du blir bare kontaktet når noe passer for deg.", - "icon": "hand-helping", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Fra påmelding til spørsmål", - "road_description": "Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra.", - "road_icon": "lucide:user-check", - "who_title": "Hvem ser dette", - "who_description": "Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no.", - "who_icon": "lucide:heart-handshake", - "form_title": "Meld deg som hjelper", - "form_description": "Fortell kort hva du kan bidra med.", - "labels": { - "navn": "Navn", - "email": "E-post", - "telefon": "Telefon", - "kan": "Hva kan du hjelpe med" - }, - "hints": { - "navn": "Kari Nordmann", - "email": "kari@eksempel.no", - "telefon": "123 45 678", - "kan": "" - } - }, - "dele-utstyr": { - "heading": "Lån ut eller lån av naboen", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.", - "button": "Legg ut oppslag", - "encouragement": "Vi legger det ut så naboene kan se det.", - "icon": "package", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Fra oppslag til avtale", - "road_description": "Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen.", - "road_icon": "lucide:clipboard-list", - "who_title": "Hvem ser dette", - "who_description": "Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "form_title": "Lån eller utlån", - "form_description": "Skriv kort hva det gjelder, så folk skjønner det med en gang.", - "labels": { - "navn": "Navn", - "email": "E-post", - "har_eller_trenger": "Har du eller trenger du", - "hva": "Hva gjelder det" - }, - "hints": { - "navn": "Ola Nordmann", - "email": "ola@eksempel.no", - "har_eller_trenger": "", - "hva": "Hengerfeste til bil, tilhenger, stige" - } - } - } - }, - "questions/nabohjelp/index.yaml": { - "question": "Hvem trenger hjelp, og hvem kan stille opp?", - "description": "Her kobler du naboer som trenger hjelp med dem som kan stille opp.", - "confirm": "Lagre", - "buckets": { - "hjelpebehov": { - "heading": "Naboer som trenger en hånd", - "description": "Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe.", - "moves": { - "formidlet->ordnet": "Meld ordnet", - "formidlet->ikke_lost": "Meld ikke løst", - "open->formidlet": "Koble til nabo", - "open->ikke_lost": "Meld ikke løst" - }, - "list_title": "Hjelpebehov", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - }, - "hjelpere": { - "heading": "Naboer som kan stille opp", - "description": "Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem.", - "moves": { - "open->registrert": "Registrer som hjelper", - "open->trukket": "Meld trukket" - }, - "list_title": "Hjelpere", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - } - }, - "links": {}, - "invites": { - "nabohjelp": { - "heading": "Inviter noen inn i nabohjelpen", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt." - } - }, - "questions/received/anleggsfeil.yaml": { - "question": "Hva skjer med meldingen min nå?", - "description": "Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt.", - "next_heading": "Komiteen tar tak i det", - "next_description": "Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg.", - "back": "Tilbake til forsiden", - "see_all": { - "heading": "Se andre meldte feil", - "description": "Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet.", - "button": "Se meldte feil" - } - }, - "questions/received/bli-medlem.yaml": { - "question": "Hva skjer etter at jeg har meldt meg inn?", - "description": "Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert.", - "next_heading": "Kasserer sender deg betalingsinfo", - "next_description": "Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten.", - "back": "Tilbake til forsiden" - }, - "questions/received/dele-utstyr.yaml": { - "question": "Hva skjer med det jeg har lagt ut?", - "description": "Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan.", - "next_heading": "Styret legger det ut for deg", - "next_description": "En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne.", - "back": "Tilbake til forsiden", - "see_all": { - "heading": "Se alt naboene deler", - "description": "Se hva andre i Tomter har lagt ut til utlån akkurat nå.", - "button": "Se hva naboer deler" - } - }, - "questions/received/endre-medlemskap.yaml": { - "question": "Hva skjer nå med det jeg meldte inn?", - "description": "Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut.", - "next_heading": "Kasserer retter opp opplysningene", - "next_description": "Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg.", - "back": "Tilbake til forsiden" - }, - "questions/received/hjelpe-til.yaml": { - "question": "Hva skjer nå som jeg har meldt meg?", - "description": "Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg.", - "next_heading": "Komiteen tar kontakt", - "next_description": "Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden.", - "back": "Tilbake til forsiden" - }, - "questions/received/horingsinnspill.yaml": { - "question": "Hva skjer med det jeg har sagt om saken?", - "description": "Innspillet ditt er sendt til høringsinstansen i velet.", - "next_heading": "Innspillet ditt inn i vurderingen", - "next_description": "De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med.", - "back": "Tilbake til forsiden" - }, - "questions/received/kan-hjelpe.yaml": { - "question": "Hva skjer nå som jeg har registrert meg?", - "description": "Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe.", - "next_heading": "Du blir kontaktet ved behov", - "next_description": "Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte.", - "back": "Tilbake til forsiden" - }, - "questions/received/komite.yaml": { - "question": "Hva skjer nå som jeg har meldt interesse for en komité?", - "description": "Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg.", - "next_heading": "Vi finner riktig komité til deg", - "next_description": "Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer.", - "back": "Tilbake til forsiden" - }, - "questions/received/trafikkfare.yaml": { - "question": "Hva skjer med meldingen min nå?", - "description": "Meldingen din om trafikkfaren er sendt til komiteen for trafikk.", - "next_heading": "Trafikkomiteen tar den videre", - "next_description": "Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs.", - "back": "Tilbake til forsiden", - "see_all": { - "heading": "Andre meldte trafikkfarer", - "description": "Se hva andre har meldt inn, og status på sakene.", - "button": "Se andre trafikkfarer" - } - }, - "questions/received/trenger-hjelp.yaml": { - "question": "Hva skjer nå som jeg har bedt om hjelp?", - "description": "Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp.", - "next_heading": "Vi finner en nabo til deg", - "next_description": "Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer.", - "back": "Til forsiden" - }, - "questions/status/anleggsfeil/index.yaml": { - "question": "Hva skjer med det jeg har meldt fra om?", - "description": "Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet.", - "heading": "Status på meldte anleggsfeil", - "list_description": "Alle meldinger er åpne for alle å se.", - "list_title": "Anleggsfeil", - "list_note": "Hver rad er én sak og hvor langt den har kommet. Navn og kontaktopplysninger vises ikke her.", - "empty": "Ingenting her ennå.", - "back": "Tilbake til meldinger" - }, - "questions/status/oppslag/index.yaml": { - "question": "Hva er sendt inn, og hvor langt har det kommet?", - "description": "Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet.", - "heading": "Oversikt over det som er meldt inn", - "list_description": "Åpen liste – navn og detaljer vises ikke.", - "list_title": "Oppslag", - "list_note": "Hver rad er én sak og hvor langt den har kommet. Navn og kontaktopplysninger vises ikke her.", - "empty": "Ingenting her ennå.", - "back": "Tilbake" - }, - "questions/status/trafikkmeldinger/index.yaml": { - "question": "Er det meldt fra om noe farlig i trafikken der jeg bor?", - "description": "Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet.", - "heading": "Trafikkmeldinger og status", - "list_description": "Alle meldinger som er sendt inn, og hvor de står nå.", - "list_title": "Trafikkmeldinger", - "list_note": "Hver rad er én sak og hvor langt den har kommet. Navn og kontaktopplysninger vises ikke her.", - "empty": "Ingenting her ennå.", - "back": "Tilbake" - }, - "questions/styret/index.yaml": { - "question": "Hva venter på styret akkurat nå?", - "description": "Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.", - "confirm": "Lagre", - "buckets": { - "innspill": { - "heading": "Høringsinnspill fra beboerne", - "description": "Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar.", - "moves": {}, - "list_title": "Innspill", - "list_note": "Hver rad er én sak og hvor langt den har kommet. En annen pult flytter disse." - }, - "komitesoknader": { - "heading": "Søknader til komiteene", - "description": "Her ligger alle som har meldt seg til en komité og venter på en plass.", - "moves": { - "open->plassert": "Sett i komité", - "open->avslatt": "Avslå søknaden" - }, - "list_title": "Komitesoknader", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - }, - "oppslag": { - "heading": "Utstyr til utlån blant naboer", - "description": "Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut.", - "moves": { - "open->lagt_ut": "Legg ut oppslaget", - "open->tatt_ned": "Ta ned oppslaget" - }, - "list_title": "Oppslag", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - }, - "trafikkmeldinger": { - "heading": "Meldinger om trafikkfarer", - "description": "Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier.", - "moves": {}, - "list_title": "Trafikkmeldinger", - "list_note": "Hver rad er én sak og hvor langt den har kommet. En annen pult flytter disse." - } - }, - "links": {}, - "invites": { - "arrangementer": { - "heading": "Inviter noen inn i Arrangementer", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - }, - "horingsinstans": { - "heading": "Inviter noen inn i Høringsinstans", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - }, - "kasserer": { - "heading": "Inviter noen inn i kassereren", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - }, - "komiteer": { - "heading": "Inviter noen inn i komiteene", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - }, - "lekeplasser": { - "heading": "Inviter noen inn i Leke- og møteplasser", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - }, - "nabohjelp": { - "heading": "Inviter noen inn i nabohjelpen", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - }, - "styret": { - "heading": "Inviter noen inn i styret", - "description": "De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - }, - "trafikk": { - "heading": "Inviter noen inn i Trafikkforhold", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt." - } - }, - "questions/trafikk/index.yaml": { - "question": "Hvilke trafikkfarer må følges opp?", - "description": "Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier.", - "confirm": "Lagre", - "buckets": { - "trafikkmeldinger": { - "heading": "Farlige steder i trafikken", - "description": "Farlige steder i trafikken som naboer har meldt inn.", - "moves": { - "open->tatt_opp": "Ta opp med kommunen", - "open->avvist": "Avvis meldingen", - "tatt_opp->ordnet": "Meld ordnet", - "tatt_opp->avvist": "Avvis meldingen" - }, - "list_title": "Trafikkmeldinger", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - } - }, - "links": {}, - "invites": { - "trafikk": { - "heading": "Inviter noen inn i Trafikkforhold", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon, med engangslenken så lenge den ikke er brukt." - } - }, - "site.yaml": { - "invite": { - "subject": "Din konto hos {site_name}", - "body": "Hei {name},\n\n{site_name} har laget en konto til deg og lagt deg til i {group}. Brukernavnet ditt er {username}.\n\nVelg passord her før {expires}:\n{link}\n\nEtterpå logger du inn på {site}." - } - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/words-frontdoor.json b/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/words-frontdoor.json deleted file mode 100644 index 4345f7b..0000000 --- a/vendor/trainer/runs/tomtervel-frontdoor-2026-09-28/words-frontdoor.json +++ /dev/null @@ -1,106 +0,0 @@ -{ - "questions/index.yaml": { - "description": "Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står.", - "doors": { - "bidra": { - "button": "Bli med", - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.", - "for_whom": "Deg som vil gjøre en innsats", - "heading": "Bli med og gjør en innsats", - "icon": "hand-helping" - }, - "medlem": { - "button": "Til medlemskap", - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.", - "for_whom": "Deg som bor i Tomter", - "heading": "Bli medlem eller endre opplysningene dine", - "icon": "house" - }, - "melde-fra": { - "button": "Meld fra", - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed.", - "for_whom": "Deg som har sett noe som bør fikses", - "heading": "Meld fra om noe som bør fikses", - "icon": "alert-triangle" - }, - "naboer": { - "button": "Til nabohjelp", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.", - "for_whom": "Deg som trenger hjelp eller kan gi en hånd", - "heading": "Få hjelp av naboer, eller gi en hånd selv", - "icon": "heart-handshake" - } - }, - "needs": { - "horingsinnspill": { - "button": "Send innspill", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "encouragement": "Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen.", - "form_description": "Fortell hvilken sak det gjelder og hva du mener.", - "form_title": "Send et høringsinnspill", - "heading": "Få din mening med i høringssvaret", - "hints": { - "innspill": "Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen.", - "navn": "Kari Nordmann", - "sak": "Reguleringsplan for Tomterveien" - }, - "icon": "megaphone", - "labels": { - "innspill": "Hva mener du?", - "navn": "Navn", - "sak": "Hvilken sak gjelder det?" - }, - "road_description": "Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - } - }, - "opener": { - "heading": "Velforeningen for Tomter siden 1947", - "description": "Vi er sju komiteer som jobber på fritida for bygda vår. 157 husstander er med.", - "features": { - "medlem": { - "heading": "157 husstander er medlemmer", - "description": "Kontingenten går til arrangementer, lekeplasser, elvestien og arbeidet for tryggere trafikk.", - "icon": "users" - }, - "nabo": { - "heading": "Naboer som stiller opp for hverandre", - "description": "Trenger du hjelp med snømåking, handling eller skyss, finner vi en nabo som kan. Du kan også låne og låne ut utstyr.", - "icon": "heart-handshake" - } - } - }, - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "shopping": { - "heading": "Siste fra bygda", - "description": "Nye meldinger og oppslag, slik de står akkurat nå.", - "items": { - "status-anleggsfeil": { - "heading": "Feil på lekeplasser og sti", - "description": "Det som er meldt inn, og hvor langt vi har kommet med å fikse det.", - "link": "Alle feilmeldinger", - "empty": "Ingenting er meldt ødelagt akkurat nå. Ser du noe, si fra.", - "icon": "construction" - }, - "status-oppslag": { - "heading": "Oppslagstavla for naboer", - "description": "Utstyr som er til låns, og det naboene leter etter.", - "link": "Hele oppslagstavla", - "empty": "Tavla er tom nå. Legg gjerne ut det første oppslaget.", - "icon": "list" - }, - "status-trafikkmeldinger": { - "heading": "Farlige steder i trafikken", - "description": "Det naboer har meldt fra om, og hva velet har gjort med det.", - "link": "Alle trafikkmeldinger", - "empty": "Ingen farlige steder er meldt inn nå. Har du sett et, fortell oss.", - "icon": "car" - } - } - } - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-invites-2026-09-23/README.md b/vendor/trainer/runs/tomtervel-invites-2026-09-23/README.md deleted file mode 100644 index 5528dc0..0000000 --- a/vendor/trainer/runs/tomtervel-invites-2026-09-23/README.md +++ /dev/null @@ -1,11 +0,0 @@ -# Tomter Vel: invites on every desk, 2026-09-23 - -The first rebuild of a live site from its plan with `--words-from`: -every word the repo carried (hand-edited Norwegian, model-chosen -icons) lifted back into the words map by structure, the new invite -slots given Norwegian by `invite-words-no.json`, and the result -diffed against the live repo: additions only, 33 lines per committee -desk and 145 on styret's, which invites into all eight groups. - -`words.json` is the words as used; the next rebuild can start from it -with `--words words.json` instead of lifting. diff --git a/vendor/trainer/runs/tomtervel-invites-2026-09-23/invite-words-no.json b/vendor/trainer/runs/tomtervel-invites-2026-09-23/invite-words-no.json deleted file mode 100644 index 2066ba3..0000000 --- a/vendor/trainer/runs/tomtervel-invites-2026-09-23/invite-words-no.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "questions/arrangementer/index.yaml": { "invites": { - "arrangementer": { "heading": "Inviter noen inn i Arrangementer", "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", "button": "Inviter", "form_title": "Hvem", "labels": { "name": "Navn", "email": "E-post" } } - }, "invited": { "heading": "Sendte invitasjoner", "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", "done": "Er inne" } } -, - "questions/horingsinstans/index.yaml": { "invites": { - "horingsinstans": { "heading": "Inviter noen inn i Høringsinstans", "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", "button": "Inviter", "form_title": "Hvem", "labels": { "name": "Navn", "email": "E-post" } } - }, "invited": { "heading": "Sendte invitasjoner", "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", "done": "Er inne" } } -, - "questions/kasserer/index.yaml": { "invites": { - "kasserer": { "heading": "Inviter noen inn i kassereren", "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", "button": "Inviter", "form_title": "Hvem", "labels": { "name": "Navn", "email": "E-post" } } - }, "invited": { "heading": "Sendte invitasjoner", "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", "done": "Er inne" } } -, - "questions/komiteer/index.yaml": { "invites": { - "komiteer": { "heading": "Inviter noen inn i komiteene", "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", "button": "Inviter", "form_title": "Hvem", "labels": { "name": "Navn", "email": "E-post" } } - }, "invited": { "heading": "Sendte invitasjoner", "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", "done": "Er inne" } } -, - "questions/lekeplasser/index.yaml": { "invites": { - "lekeplasser": { "heading": "Inviter noen inn i Leke- og møteplasser", "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", "button": "Inviter", "form_title": "Hvem", "labels": { "name": "Navn", "email": "E-post" } } - }, "invited": { "heading": "Sendte invitasjoner", "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", "done": "Er inne" } } -, - "questions/nabohjelp/index.yaml": { "invites": { - "nabohjelp": { "heading": "Inviter noen inn i nabohjelpen", "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", "button": "Inviter", "form_title": "Hvem", "labels": { "name": "Navn", "email": "E-post" } } - }, "invited": { "heading": "Sendte invitasjoner", "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", "done": "Er inne" } } -, - "questions/styret/index.yaml": { "invites": { - "arrangementer": { "heading": "Inviter noen inn i Arrangementer", "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", "button": "Inviter", "form_title": "Hvem", "labels": { "name": "Navn", "email": "E-post" } }, - "horingsinstans": { "heading": "Inviter noen inn i Høringsinstans", "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", "button": "Inviter", "form_title": "Hvem", "labels": { "name": "Navn", "email": "E-post" } }, - "kasserer": { "heading": "Inviter noen inn i kassereren", "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", "button": "Inviter", "form_title": "Hvem", "labels": { "name": "Navn", "email": "E-post" } }, - "komiteer": { "heading": "Inviter noen inn i komiteene", "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", "button": "Inviter", "form_title": "Hvem", "labels": { "name": "Navn", "email": "E-post" } }, - "lekeplasser": { "heading": "Inviter noen inn i Leke- og møteplasser", "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", "button": "Inviter", "form_title": "Hvem", "labels": { "name": "Navn", "email": "E-post" } }, - "nabohjelp": { "heading": "Inviter noen inn i nabohjelpen", "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", "button": "Inviter", "form_title": "Hvem", "labels": { "name": "Navn", "email": "E-post" } }, - "styret": { "heading": "Inviter noen inn i styret", "description": "De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", "button": "Inviter", "form_title": "Hvem", "labels": { "name": "Navn", "email": "E-post" } }, - "trafikk": { "heading": "Inviter noen inn i Trafikkforhold", "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", "button": "Inviter", "form_title": "Hvem", "labels": { "name": "Navn", "email": "E-post" } } - }, "invited": { "heading": "Sendte invitasjoner", "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", "done": "Er inne" } } -, - "questions/trafikk/index.yaml": { "invites": { - "trafikk": { "heading": "Inviter noen inn i Trafikkforhold", "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", "button": "Inviter", "form_title": "Hvem", "labels": { "name": "Navn", "email": "E-post" } } - }, "invited": { "heading": "Sendte invitasjoner", "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", "done": "Er inne" } } -} diff --git a/vendor/trainer/runs/tomtervel-invites-2026-09-23/words.json b/vendor/trainer/runs/tomtervel-invites-2026-09-23/words.json deleted file mode 100644 index bfff02e..0000000 --- a/vendor/trainer/runs/tomtervel-invites-2026-09-23/words.json +++ /dev/null @@ -1,873 +0,0 @@ -{ - "questions/arrangementer/index.yaml": { - "buckets": { - "frivillige": { - "description": "Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem.", - "heading": "Frivillige til arrangementer og dugnad", - "moves": { - "kontaktet->satt_opp": "Sett opp", - "kontaktet->takket_nei": "Takket nei", - "open->kontaktet": "Merk som kontaktet", - "open->takket_nei": "Takket nei" - } - } - }, - "confirm": "Lagre", - "description": "Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "arrangementer": { - "button": "Inviter", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Arrangementer", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp?" - }, - "questions/bidra/index.yaml": { - "description": "Vil du stille opp for nabolaget? Her melder du deg til dugnad og arrangementer, eller til en av komiteene.", - "needs": { - "hjelpe-til": { - "button": "Meld meg på", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.", - "encouragement": "Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg.", - "form_description": "Fortell kort hva du kan hjelpe til med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli med på dugnad eller arrangement", - "hints": { - "hva": "", - "navn": "Kari Nordmann", - "telefon": "912 34 567" - }, - "icon": "hand-helping", - "labels": { - "hva": "Hva kan du hjelpe til med?", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit.", - "road_icon": "lucide:clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - }, - "komite": { - "button": "Meld interesse", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i.", - "encouragement": "Det tar bare et minutt, og noen fra styret svarer deg.", - "form_description": "Skriv hvilken komité du er interessert i.", - "form_title": "Meld deg til en komité", - "heading": "Sitt i en komité som betyr noe for deg", - "hints": { - "epost": "kari@eksempel.no", - "komite": "", - "navn": "Kari Nordmann" - }, - "icon": "users", - "labels": { - "epost": "E-post", - "komite": "Hvilken komité?", - "navn": "Navn" - }, - "road_description": "Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå.", - "road_icon": "lucide:clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:handshake", - "who_title": "Hvem leser dette" - } - }, - "question": "Vil du hjelpe til i nabolaget?" - }, - "questions/decide/dele-utstyr.yaml": { - "description": "Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån.", - "moves": { - "tatt_ned": { - "button": "Ta ned oppslaget", - "description": "Oppslaget fjernes fra siden, så ingen flere spør om å låne det.", - "heading": "Meld at utstyret er tatt ned" - } - }, - "question": "Skal oppslaget om utstyret fortsatt stå ute?" - }, - "questions/decide/kan-hjelpe.yaml": { - "description": "Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå.", - "moves": { - "trukket": { - "button": "Trekk meg", - "description": "Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre.", - "heading": "Ta en pause fra nabohjelpen" - } - }, - "question": "Vil du fortsatt kunne bli spurt om å hjelpe en nabo?" - }, - "questions/decide/trenger-hjelp.yaml": { - "description": "Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet.", - "moves": { - "ordnet": { - "button": "Merk som ordnet", - "description": "Da vet vi at naboen har fått hjelpen sin, og saken lukkes.", - "heading": "Meld fra at hjelpen er gitt" - } - }, - "question": "Har naboen fått hjelpen de trengte?" - }, - "questions/horingsinstans/index.yaml": { - "buckets": { - "innspill": { - "description": "Her ligger innspill fra beboere til saker kommunen har på høring.", - "heading": "Innspill til høringssvar", - "moves": { - "open->ikke_tatt_med": "Ikke tatt med", - "open->tatt_med": "Tatt med i svaret" - } - } - }, - "confirm": "Send svar", - "description": "Her samler du innspillene og ser hva som er tatt med i velets høringssvar.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "horingsinstans": { - "button": "Inviter", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Høringsinstans", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva sier vi i høringssvaret?" - }, - "questions/index.yaml": { - "description": "Tomter Vel tar vare på nærmiljøet – fra elvestien og lekeplassene til trafikksikkerhet og naboskap. Finn det som gjelder deg.", - "doors": { - "bidra": { - "button": "Bli med", - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.", - "for_whom": "Deg som vil gjøre en innsats", - "heading": "Bli med og gjør en innsats", - "icon": "hand-helping" - }, - "medlem": { - "button": "Til medlemskap", - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.", - "for_whom": "Deg som bor i Tomter", - "heading": "Bli medlem eller endre opplysningene dine", - "icon": "house" - }, - "melde-fra": { - "button": "Meld fra", - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed.", - "for_whom": "Deg som har sett noe som bør fikses", - "heading": "Meld fra om noe som bør fikses", - "icon": "alert-triangle" - }, - "naboer": { - "button": "Til nabohjelp", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.", - "for_whom": "Deg som trenger hjelp eller kan gi en hånd", - "heading": "Få hjelp av naboer, eller gi en hånd selv", - "icon": "heart-handshake" - } - }, - "needs": { - "horingsinnspill": { - "button": "Send innspill", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "encouragement": "Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen.", - "form_description": "Fortell hvilken sak det gjelder og hva du mener.", - "form_title": "Send et høringsinnspill", - "heading": "Få din mening med i høringssvaret", - "hints": { - "innspill": "Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen.", - "navn": "Kari Nordmann", - "sak": "Reguleringsplan for Tomterveien" - }, - "icon": "megaphone", - "labels": { - "innspill": "Hva mener du?", - "navn": "Navn", - "sak": "Hvilken sak gjelder det?" - }, - "road_description": "Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - } - }, - "question": "Hva gjelder det for deg?" - }, - "questions/kasserer/index.yaml": { - "buckets": { - "husstander": { - "description": "Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem.", - "heading": "Nye medlemmer som venter på registrering", - "moves": { - "open->betalt": "Registrer betaling", - "open->utmeldt": "Meld ut" - } - }, - "medlemsendringer": { - "description": "Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert.", - "heading": "Endringer som venter på å bli registrert", - "moves": { - "open->oppdatert": "Registrer endring" - } - }, - "utlegg": { - "description": "Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling.", - "heading": "Utlegg som venter på deg", - "moves": { - "godkjent->avvist": "Avvis likevel", - "godkjent->utbetalt": "Merk som utbetalt", - "open->avvist": "Avvis utlegg", - "open->godkjent": "Godkjenn utlegg" - } - } - }, - "confirm": "Lagre", - "description": "Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "kasserer": { - "button": "Inviter", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i kassereren", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva venter på meg som kasserer akkurat nå?" - }, - "questions/komiteer/index.yaml": { - "buckets": {}, - "confirm": "Confirm", - "description": "Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "komiteer": { - "button": "Inviter", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i komiteene", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": { - "utlegg": { - "button": "Send utlegg", - "description": "Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake.", - "heading": "Få tilbake det du har lagt ut" - } - }, - "question": "Hva står ubehandlet i komiteen din nå?" - }, - "questions/komiteer/utlegg-sent.yaml": { - "back": "Til forsiden", - "description": "Utlegget er sendt til kasserer. Du får beskjed når det er sjekket.", - "next_description": "Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga.", - "next_heading": "Pengene kommer på konto", - "question": "Hva skjer med utlegget mitt nå?" - }, - "questions/komiteer/utlegg.yaml": { - "button": "Send inn", - "description": "Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten.", - "encouragement": "Legg ved bilag om du har det, så går det raskere.", - "form_description": "Ha kvittering eller bilag klart før du fyller ut.", - "form_title": "Krav om refusjon", - "heading": "Få pengene tilbake", - "hints": { - "belop": "450 kr", - "hva": "Kaffe og kjeks til dugnaden", - "navn": "Kari Nordmann" - }, - "icon": "receipt", - "labels": { - "belop": "Beløp", - "hva": "Hva gjaldt det", - "navn": "Navn" - }, - "page_description": "Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake.", - "question": "Har du lagt ut penger for komiteen og vil ha dem tilbake?", - "road_description": "Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor.", - "road_icon": "lucide:wallet", - "road_title": "Fra krav til utbetaling", - "who_description": "Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster.", - "who_icon": "lucide:coins", - "who_title": "Kasserer ser dette" - }, - "questions/lekeplasser/index.yaml": { - "buckets": { - "anleggsfeil": { - "description": "Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses.", - "heading": "Det som er meldt inn av skader", - "moves": { - "open->tatt_tak_i": "Ta tak i saken", - "tatt_tak_i->utbedret": "Merk som utbedret" - } - } - }, - "confirm": "Lagre", - "description": "Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "lekeplasser": { - "button": "Inviter", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Leke- og møteplasser", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva må fikses på lekeplassene og stien nå?" - }, - "questions/medlem/index.yaml": { - "description": "Bli medlem av Tomter Vel, eller oppdater opplysningene dine hvis du allerede er medlem.", - "needs": { - "bli-medlem": { - "button": "Bli medlem", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.", - "encouragement": "Kasserer sender deg kontingenten på e-post rett etterpå.", - "form_description": "Ha adressen i Tomter og en e-post du bruker klar.", - "form_title": "Meld deg inn", - "heading": "Bli medlem av Tomter Vel", - "hints": { - "adresse": "Tomterveien 12", - "epost": "ola.nordmann@epost.no", - "navn": "Ola Nordmann", - "telefon": "123 45 678" - }, - "icon": "user-plus", - "labels": { - "adresse": "Adresse", - "epost": "E-post", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem.", - "road_icon": "lucide:coins", - "road_title": "Etter innmelding", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "who_title": "Hvem svarer deg" - }, - "endre-medlemskap": { - "button": "Send endring", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.", - "encouragement": "Det tar bare et par minutter, og kasserer ordner resten.", - "form_description": "Skriv navnet ditt og hva som er nytt.", - "form_title": "Endre medlemskap", - "heading": "Oppdater eller avslutt medlemskapet", - "hints": { - "adresse": "Ny adresse i Tomter", - "hva_er_nytt": "Ny e-post, ny adresse, eller ønske om utmelding", - "navn": "Ola Nordmann" - }, - "icon": "pencil", - "labels": { - "adresse": "Adresse", - "hva_er_nytt": "Hva vil du endre?", - "navn": "Navn" - }, - "road_description": "Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om.", - "road_icon": "lucide:refresh-cw", - "road_title": "Etter du sender inn", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "who_title": "Hvem svarer deg" - } - }, - "question": "Vil du bli medlem, eller endre medlemskapet ditt?" - }, - "questions/melde-fra/index.yaml": { - "description": "Har du sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien? Her sier du fra til velet.", - "needs": { - "anleggsfeil": { - "button": "Send inn", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.", - "encouragement": "Det holder med noen ord om hva du så og hvor.", - "form_description": "Fortell hva som er ødelagt og omtrent hvor det er.", - "form_title": "Meld anleggsfeil", - "heading": "Meld fra om noe ødelagt", - "hints": { - "hva": "Løs planke på gjerdet ved husken", - "hvor": "" - }, - "icon": "construction", - "labels": { - "hva": "Hva er ødelagt", - "hvor": "Hvor er det" - }, - "road_description": "Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet.", - "road_icon": "lucide:wrench", - "road_title": "Hva skjer videre", - "who_description": "Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:hammer", - "who_title": "Hvem leser dette" - }, - "trafikkfare": { - "button": "Send inn", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.", - "encouragement": "Bare noen linjer om hva og hvor er nok til at vi kan følge opp.", - "form_description": "Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer.", - "form_title": "Meld trafikkfare", - "heading": "Meld fra om en trafikkfare", - "hints": { - "epost": "ola.nordmann@epost.no", - "hva": "Dårlig sikt i krysset, biler kjører fort", - "hvor": "Krysset Tomterveien / Elvestien" - }, - "icon": "alert-triangle", - "labels": { - "epost": "E-post (valgfritt)", - "hva": "Hva så du", - "hvor": "Hvor var det" - }, - "road_description": "Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:car", - "who_title": "Hvem leser dette" - } - }, - "question": "Hva vil du melde fra om?" - }, - "questions/naboer/index.yaml": { - "description": "Godt naboskap gjør hverdagen lettere. Trenger du en hånd, kan gi en, eller har noe å låne bort?", - "needs": { - "dele-utstyr": { - "button": "Legg ut oppslag", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.", - "encouragement": "Vi legger det ut så naboene kan se det.", - "form_description": "Skriv kort hva det gjelder, så folk skjønner det med en gang.", - "form_title": "Lån eller utlån", - "heading": "Lån ut eller lån av naboen", - "hints": { - "email": "ola@eksempel.no", - "har_eller_trenger": "", - "hva": "Hengerfeste til bil, tilhenger, stige", - "navn": "Ola Nordmann" - }, - "icon": "package", - "labels": { - "email": "E-post", - "har_eller_trenger": "Har du eller trenger du", - "hva": "Hva gjelder det", - "navn": "Navn" - }, - "road_description": "Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen.", - "road_icon": "lucide:clipboard-list", - "road_title": "Fra oppslag til avtale", - "who_description": "Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem ser dette" - }, - "kan-hjelpe": { - "button": "Meld deg", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.", - "encouragement": "Du blir bare kontaktet når noe passer for deg.", - "form_description": "Fortell kort hva du kan bidra med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli spurt når en nabo trenger en hånd", - "hints": { - "email": "kari@eksempel.no", - "kan": "", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "hand-helping", - "labels": { - "email": "E-post", - "kan": "Hva kan du hjelpe med", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra.", - "road_icon": "lucide:user-check", - "road_title": "Fra påmelding til spørsmål", - "who_description": "Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no.", - "who_icon": "lucide:heart-handshake", - "who_title": "Hvem ser dette" - }, - "trenger-hjelp": { - "button": "Be om hjelp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.", - "encouragement": "Vi finner en nabo som kan stille opp så fort som mulig.", - "form_description": "Skriv kort hva du trenger hjelp til.", - "form_title": "Be om en hånd", - "heading": "Få en nabo til å stille opp", - "hints": { - "adresse": "Tomterveien 12", - "email": "kari@eksempel.no", - "hva": "Måke snø på trappa, handle inn litt mat", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "heart-handshake", - "labels": { - "adresse": "Adresse", - "email": "E-post", - "hva": "Hva trenger du hjelp til", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed.", - "road_icon": "lucide:hand-helping", - "road_title": "Fra melding til hjelp", - "who_description": "Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem ser dette" - } - }, - "question": "Trenger du en hånd, eller kan du gi en?" - }, - "questions/nabohjelp/index.yaml": { - "buckets": { - "hjelpebehov": { - "description": "Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe.", - "heading": "Naboer som trenger en hånd", - "moves": { - "formidlet->ikke_lost": "Meld ikke løst", - "formidlet->ordnet": "Meld ordnet", - "open->formidlet": "Koble til nabo", - "open->ikke_lost": "Meld ikke løst" - } - }, - "hjelpere": { - "description": "Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem.", - "heading": "Naboer som kan stille opp", - "moves": { - "open->registrert": "Registrer som hjelper", - "open->trukket": "Meld trukket" - } - } - }, - "confirm": "Lagre", - "description": "Her kobler du naboer som trenger hjelp med dem som kan stille opp.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "nabohjelp": { - "button": "Inviter", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i nabohjelpen", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvem trenger hjelp, og hvem kan stille opp?" - }, - "questions/received/anleggsfeil.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt.", - "next_description": "Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg.", - "next_heading": "Komiteen tar tak i det", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se meldte feil", - "description": "Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet.", - "heading": "Se andre meldte feil" - } - }, - "questions/received/bli-medlem.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert.", - "next_description": "Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten.", - "next_heading": "Kasserer sender deg betalingsinfo", - "question": "Hva skjer etter at jeg har meldt meg inn?" - }, - "questions/received/dele-utstyr.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan.", - "next_description": "En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne.", - "next_heading": "Styret legger det ut for deg", - "question": "Hva skjer med det jeg har lagt ut?", - "see_all": { - "button": "Se hva naboer deler", - "description": "Se hva andre i Tomter har lagt ut til utlån akkurat nå.", - "heading": "Se alt naboene deler" - } - }, - "questions/received/endre-medlemskap.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut.", - "next_description": "Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg.", - "next_heading": "Kasserer retter opp opplysningene", - "question": "Hva skjer nå med det jeg meldte inn?" - }, - "questions/received/hjelpe-til.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg.", - "next_description": "Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden.", - "next_heading": "Komiteen tar kontakt", - "question": "Hva skjer nå som jeg har meldt meg?" - }, - "questions/received/horingsinnspill.yaml": { - "back": "Tilbake til forsiden", - "description": "Innspillet ditt er sendt til høringsinstansen i velet.", - "next_description": "De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med.", - "next_heading": "Innspillet ditt inn i vurderingen", - "question": "Hva skjer med det jeg har sagt om saken?" - }, - "questions/received/kan-hjelpe.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe.", - "next_description": "Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte.", - "next_heading": "Du blir kontaktet ved behov", - "question": "Hva skjer nå som jeg har registrert meg?" - }, - "questions/received/komite.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg.", - "next_description": "Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer.", - "next_heading": "Vi finner riktig komité til deg", - "question": "Hva skjer nå som jeg har meldt interesse for en komité?" - }, - "questions/received/trafikkfare.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din om trafikkfaren er sendt til komiteen for trafikk.", - "next_description": "Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs.", - "next_heading": "Trafikkomiteen tar den videre", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se andre trafikkfarer", - "description": "Se hva andre har meldt inn, og status på sakene.", - "heading": "Andre meldte trafikkfarer" - } - }, - "questions/received/trenger-hjelp.yaml": { - "back": "Til forsiden", - "description": "Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp.", - "next_description": "Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer.", - "next_heading": "Vi finner en nabo til deg", - "question": "Hva skjer nå som jeg har bedt om hjelp?" - }, - "questions/status/anleggsfeil/index.yaml": { - "back": "Tilbake til meldinger", - "description": "Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet.", - "heading": "Status på meldte anleggsfeil", - "list_description": "Alle meldinger er åpne for alle å se.", - "question": "Hva skjer med det jeg har meldt fra om?" - }, - "questions/status/oppslag/index.yaml": { - "back": "Tilbake", - "description": "Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet.", - "heading": "Oversikt over det som er meldt inn", - "list_description": "Åpen liste – navn og detaljer vises ikke.", - "question": "Hva er sendt inn, og hvor langt har det kommet?" - }, - "questions/status/trafikkmeldinger/index.yaml": { - "back": "Tilbake", - "description": "Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet.", - "heading": "Trafikkmeldinger og status", - "list_description": "Alle meldinger som er sendt inn, og hvor de står nå.", - "question": "Er det meldt fra om noe farlig i trafikken der jeg bor?" - }, - "questions/styret/index.yaml": { - "buckets": { - "innspill": { - "description": "Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar.", - "heading": "Høringsinnspill fra beboerne", - "moves": {} - }, - "komitesoknader": { - "description": "Her ligger alle som har meldt seg til en komité og venter på en plass.", - "heading": "Søknader til komiteene", - "moves": { - "open->avslatt": "Avslå søknaden", - "open->plassert": "Sett i komité" - } - }, - "oppslag": { - "description": "Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut.", - "heading": "Utstyr til utlån blant naboer", - "moves": { - "open->lagt_ut": "Legg ut oppslaget", - "open->tatt_ned": "Ta ned oppslaget" - } - }, - "trafikkmeldinger": { - "description": "Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier.", - "heading": "Meldinger om trafikkfarer", - "moves": {} - } - }, - "confirm": "Lagre", - "description": "Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "arrangementer": { - "button": "Inviter", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Arrangementer", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "horingsinstans": { - "button": "Inviter", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Høringsinstans", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "kasserer": { - "button": "Inviter", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i kassereren", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "komiteer": { - "button": "Inviter", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i komiteene", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "lekeplasser": { - "button": "Inviter", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Leke- og møteplasser", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "nabohjelp": { - "button": "Inviter", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i nabohjelpen", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "styret": { - "button": "Inviter", - "description": "De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i styret", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "trafikk": { - "button": "Inviter", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Trafikkforhold", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva venter på styret akkurat nå?" - }, - "questions/trafikk/index.yaml": { - "buckets": { - "trafikkmeldinger": { - "description": "Farlige steder i trafikken som naboer har meldt inn.", - "heading": "Farlige steder i trafikken", - "moves": { - "open->avvist": "Avvis meldingen", - "open->tatt_opp": "Ta opp med kommunen", - "tatt_opp->avvist": "Avvis meldingen", - "tatt_opp->ordnet": "Meld ordnet" - } - } - }, - "confirm": "Lagre", - "description": "Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "trafikk": { - "button": "Inviter", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Trafikkforhold", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvilke trafikkfarer må følges opp?" - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/aggregates.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/aggregates.yaml deleted file mode 100644 index 73a8eaa..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/aggregates.yaml +++ /dev/null @@ -1,162 +0,0 @@ -aggregates: -- bucket: anleggsfeil - initial: open - states: - open: - event: received - tatt_tak_i: - event: tatt_tak_i - utbedret: - event: utbedret - transitions: - open: - - tatt_tak_i - tatt_tak_i: - - utbedret -- bucket: frivillige - initial: open - states: - kontaktet: - event: kontaktet - open: - event: received - satt_opp: - event: satt_opp - takket_nei: - event: takket_nei - transitions: - kontaktet: - - satt_opp - - takket_nei - open: - - kontaktet - - takket_nei -- bucket: hjelpebehov - initial: open - states: - formidlet: - event: formidlet - ikke_lost: - event: ikke_lost - open: - event: received - ordnet: - event: ordnet - transitions: - formidlet: - - ordnet - - ikke_lost - open: - - formidlet - - ikke_lost -- bucket: hjelpere - initial: open - states: - open: - event: received - registrert: - event: registrert - trukket: - event: trukket - transitions: - open: - - registrert - - trukket -- bucket: husstander - initial: open - states: - betalt: - event: betalt - open: - event: received - utmeldt: - event: utmeldt - transitions: - open: - - betalt - - utmeldt -- bucket: innspill - initial: open - states: - ikke_tatt_med: - event: ikke_tatt_med - open: - event: received - tatt_med: - event: tatt_med - transitions: - open: - - tatt_med - - ikke_tatt_med -- bucket: komitesoknader - initial: open - states: - avslatt: - event: avslatt - open: - event: received - plassert: - event: plassert - transitions: - open: - - plassert - - avslatt -- bucket: medlemsendringer - initial: open - states: - open: - event: received - oppdatert: - event: oppdatert - transitions: - open: - - oppdatert -- bucket: oppslag - initial: open - states: - lagt_ut: - event: lagt_ut - open: - event: received - tatt_ned: - event: tatt_ned - transitions: - open: - - lagt_ut - - tatt_ned -- bucket: trafikkmeldinger - initial: open - states: - avvist: - event: avvist - open: - event: received - ordnet: - event: ordnet - tatt_opp: - event: tatt_opp - transitions: - open: - - tatt_opp - - avvist - tatt_opp: - - ordnet - - avvist -- bucket: utlegg - initial: open - states: - avvist: - event: avvist - godkjent: - event: godkjent - open: - event: received - utbetalt: - event: utbetalt - transitions: - godkjent: - - utbetalt - - avvist - open: - - godkjent - - avvist diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/answers-full.jsonl b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/answers-full.jsonl deleted file mode 100644 index 5941c87..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/answers-full.jsonl +++ /dev/null @@ -1,40 +0,0 @@ -{"choice":"Vil du bli medlem eller endre medlemskapet?","confidence":0.95,"id":"nyinnflyttet@/"} -{"choice":"Meld deg inn i Tomter Vel","confidence":0.95,"id":"nyinnflyttet@/medlem"} -{"choice":"Vil du bli medlem eller endre medlemskapet?","confidence":0.95,"id":"glemte-a-betale@/"} -{"choice":"Meld deg inn i Tomter Vel","confidence":0.95,"id":"glemte-a-betale@/medlem"} -{"choice":"Vil du hjelpe eller få hjelp av naboer?","confidence":0.95,"id":"ny-epost@/"} -{"choice":"Oppdater opplysningene dine","confidence":0.95,"id":"ny-epost@/medlem"} -{"choice":"Vil du bli medlem eller endre medlemskapet?","confidence":0.95,"id":"flytter@/"} -{"choice":"Oppdater opplysningene dine","confidence":0.95,"id":"flytter@/medlem"} -{"choice":"Har du sett noe som bør fikses?","confidence":0.95,"id":"skolevei@/"} -{"choice":"Få gjort noe med en farlig vei","confidence":0.95,"id":"skolevei@/melde-fra"} -{"choice":"Har du sett noe som bør fikses?","confidence":0.85,"id":"busslomme@/"} -{"choice":"Få gjort noe med en farlig vei","confidence":0.95,"id":"busslomme@/melde-fra"} -{"choice":"Har du sett noe som bør fikses?","confidence":0.95,"id":"huske@/"} -{"choice":"Få fikset det som er ødelagt","confidence":0.95,"id":"huske@/melde-fra"} -{"choice":"Har du sett noe som bør fikses?","confidence":0.95,"id":"bru@/"} -{"choice":"Få gjort noe med en farlig vei","confidence":0.95,"id":"bru@/melde-fra"} -{"choice":"Har du sett noe som bør fikses?","confidence":0.95,"id":"blokker@/"} -{"choice":"Få din mening med i velets høringssvar","confidence":0.95,"id":"blokker@/bidra"} -{"choice":"Vil du bidra eller si din mening?","confidence":0.85,"id":"togtider@/"} -{"choice":"Få din mening med i velets høringssvar","confidence":0.95,"id":"togtider@/bidra"} -{"choice":"Vil du hjelpe eller få hjelp av naboer?","confidence":0.95,"id":"vafler@/"} -{"choice":"Gi en hånd på neste arrangement eller dugnad","confidence":0.95,"id":"vafler@/bidra"} -{"choice":"Har du sett noe som bør fikses?","confidence":0.95,"id":"motorsag@/"} -{"choice":"Gi en hånd på neste arrangement eller dugnad","confidence":0.95,"id":"motorsag@/bidra"} -{"choice":"Vil du bidra eller si din mening?","confidence":0.95,"id":"pendler@/"} -{"choice":"Få en plass i komiteen som passer deg","confidence":0.95,"id":"pendler@/bidra"} -{"choice":"Vil du bidra eller si din mening?","confidence":0.95,"id":"planlegger@/"} -{"choice":"Få din mening med i velets høringssvar","confidence":0.95,"id":"planlegger@/bidra"} -{"choice":"Vil du hjelpe eller få hjelp av naboer?","confidence":0.95,"id":"tilhenger@/"} -{"choice":"Del utstyr med naboene","confidence":0.95,"id":"tilhenger@/naboer"} -{"choice":"Vil du hjelpe eller få hjelp av naboer?","confidence":0.95,"id":"stige@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"stige@/naboer"} -{"choice":"Har du sett noe som bør fikses?","confidence":0.85,"id":"snomaking@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"snomaking@/naboer"} -{"choice":"Vil du hjelpe eller få hjelp av naboer?","confidence":0.95,"id":"nyoperert@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"nyoperert@/naboer"} -{"choice":"Vil du hjelpe eller få hjelp av naboer?","confidence":0.95,"id":"hjemmekontor@/"} -{"choice":"Få en nabo til å stille opp","confidence":1.0,"id":"hjemmekontor@/naboer"} -{"choice":"Vil du hjelpe eller få hjelp av naboer?","confidence":0.95,"id":"pensjonert-elektriker@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"pensjonert-elektriker@/naboer"} diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/answers-skim.jsonl b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/answers-skim.jsonl deleted file mode 100644 index d5738c6..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/answers-skim.jsonl +++ /dev/null @@ -1,40 +0,0 @@ -{"choice":"Vil du bli medlem eller endre medlemskapet?","confidence":0.95,"id":"nyinnflyttet@/"} -{"choice":"Meld deg inn i Tomter Vel","confidence":0.95,"id":"nyinnflyttet@/medlem"} -{"choice":"Vil du bli medlem eller endre medlemskapet?","confidence":0.95,"id":"glemte-a-betale@/"} -{"choice":"Meld deg inn i Tomter Vel","confidence":0.95,"id":"glemte-a-betale@/medlem"} -{"choice":"Har du sett noe som bør fikses?","confidence":0.95,"id":"ny-epost@/"} -{"choice":"Oppdater opplysningene dine","confidence":0.95,"id":"ny-epost@/medlem"} -{"choice":"Vil du bli medlem eller endre medlemskapet?","confidence":1.0,"id":"flytter@/"} -{"choice":"Oppdater opplysningene dine","confidence":0.95,"id":"flytter@/medlem"} -{"choice":"Har du sett noe som bør fikses?","confidence":0.95,"id":"skolevei@/"} -{"choice":"Få gjort noe med en farlig vei","confidence":0.95,"id":"skolevei@/melde-fra"} -{"choice":"Har du sett noe som bør fikses?","confidence":0.95,"id":"busslomme@/"} -{"choice":"Få fikset det som er ødelagt","confidence":0.85,"id":"busslomme@/melde-fra"} -{"choice":"Har du sett noe som bør fikses?","confidence":0.95,"id":"huske@/"} -{"choice":"Få gjort noe med en farlig vei","confidence":0.95,"id":"huske@/melde-fra"} -{"choice":"Vil du bidra eller si din mening?","confidence":0.95,"id":"bru@/"} -{"choice":"Få gjort noe med en farlig vei","confidence":0.95,"id":"bru@/melde-fra"} -{"choice":"Har du sett noe som bør fikses?","confidence":0.95,"id":"blokker@/"} -{"choice":"Få din mening med i velets høringssvar","confidence":0.95,"id":"blokker@/bidra"} -{"choice":"Vil du bidra eller si din mening?","confidence":0.95,"id":"togtider@/"} -{"choice":"Få din mening med i velets høringssvar","confidence":0.95,"id":"togtider@/bidra"} -{"choice":"Vil du bli medlem eller endre medlemskapet?","confidence":0.95,"id":"vafler@/"} -{"choice":"Gi en hånd på neste arrangement eller dugnad","confidence":0.95,"id":"vafler@/bidra"} -{"choice":"Har du sett noe som bør fikses?","confidence":0.95,"id":"motorsag@/"} -{"choice":"Gi en hånd på neste arrangement eller dugnad","confidence":0.95,"id":"motorsag@/bidra"} -{"choice":"Vil du bidra eller si din mening?","confidence":0.95,"id":"pendler@/"} -{"choice":"Få en plass i komiteen som passer deg","confidence":0.95,"id":"pendler@/bidra"} -{"choice":"Vil du bidra eller si din mening?","confidence":0.95,"id":"planlegger@/"} -{"choice":"Få din mening med i velets høringssvar","confidence":0.95,"id":"planlegger@/bidra"} -{"choice":"Vil du hjelpe eller få hjelp av naboer?","confidence":0.95,"id":"tilhenger@/"} -{"choice":"Bli en nabo andre kan spørre","confidence":0.95,"id":"tilhenger@/naboer"} -{"choice":"Vil du hjelpe eller få hjelp av naboer?","confidence":0.95,"id":"stige@/"} -{"choice":"Bli en nabo andre kan spørre","confidence":0.95,"id":"stige@/naboer"} -{"choice":"Vil du hjelpe eller få hjelp av naboer?","confidence":0.95,"id":"snomaking@/"} -{"choice":"Bli en nabo andre kan spørre","confidence":0.95,"id":"snomaking@/naboer"} -{"choice":"Vil du hjelpe eller få hjelp av naboer?","confidence":0.95,"id":"nyoperert@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"nyoperert@/naboer"} -{"choice":"Vil du hjelpe eller få hjelp av naboer?","confidence":0.95,"id":"hjemmekontor@/"} -{"choice":"Bli en nabo andre kan spørre","confidence":0.95,"id":"hjemmekontor@/naboer"} -{"choice":"Vil du hjelpe eller få hjelp av naboer?","confidence":0.95,"id":"pensjonert-elektriker@/"} -{"choice":"Bli en nabo andre kan spørre","confidence":0.95,"id":"pensjonert-elektriker@/naboer"} diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/build.log b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/build.log deleted file mode 100644 index 89191ba..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/build.log +++ /dev/null @@ -1,41 +0,0 @@ -words: questions/arrangementskomite/index.yaml -words: questions/bidra/index.yaml -words: questions/decide/dele-utstyr.yaml -words: questions/decide/kan-hjelpe.yaml -words: questions/decide/trenger-hjelp.yaml -words: questions/index.yaml -words: questions/kasserer/index.yaml -words: questions/komiteer/index.yaml -words: questions/komiteer/utlegg-sent.yaml -words: questions/komiteer/utlegg.yaml -words: questions/lekeplasskomite/index.yaml -words: questions/medlem/index.yaml -words: questions/melde-fra/index.yaml -words: questions/naboer/index.yaml -words: questions/nabohjelp/index.yaml -words: questions/received/anleggsfeil.yaml -words: questions/received/bli-medlem.yaml -words: questions/received/dele-utstyr.yaml -words: questions/received/endre-medlemskap.yaml -words: questions/received/hjelpe-til.yaml -words: questions/received/horingsinnspill.yaml -words: questions/received/kan-hjelpe.yaml -words: questions/received/komite.yaml -words: questions/received/trafikkfare.yaml -words: questions/received/trenger-hjelp.yaml -words: questions/styret/index.yaml -words: questions/trafikkomite/index.yaml -content repo written to runs/tomtervel-nabohjelp-2026-09-22 -OK: 27 question(s), 12 aggregate(s) valid -need "bli-medlem": / [Vil du bli medlem eller endre medlemskapet?] -> /medlem [Meld deg inn i Tomter Vel] -> "husstander" -need "endre-medlemskap": / [Vil du bli medlem eller endre medlemskapet?] -> /medlem [Oppdater opplysningene dine] -> "medlemsendringer" -need "trafikkfare": / [Har du sett noe som bør fikses?] -> /melde-fra [Få gjort noe med en farlig vei] -> "trafikkmeldinger" -need "anleggsfeil": / [Har du sett noe som bør fikses?] -> /melde-fra [Få fikset det som er ødelagt] -> "anleggsfeil" -need "horingsinnspill": / [Vil du bidra eller si din mening?] -> /bidra [Få din mening med i velets høringssvar] -> "innspill" -need "hjelpe-til": / [Vil du bidra eller si din mening?] -> /bidra [Gi en hånd på neste arrangement eller dugnad] -> "frivillige" -need "komite": / [Vil du bidra eller si din mening?] -> /bidra [Få en plass i komiteen som passer deg] -> "komitesoknader" -need "trenger-hjelp": / [Vil du hjelpe eller få hjelp av naboer?] -> /naboer [Få en nabo til å stille opp] -> "hjelpebehov" -need "kan-hjelpe": / [Vil du hjelpe eller få hjelp av naboer?] -> /naboer [Bli en nabo andre kan spørre] -> "hjelpere" -need "dele-utstyr": / [Vil du hjelpe eller få hjelp av naboer?] -> /naboer [Del utstyr med naboene] -> "oppslag" -need "utlegg": /komiteer/utlegg [Få tilbake det du har lagt ut for] -> "utlegg" -OK: 11 need(s) structurally met, 0 planned, 21 persona(s) diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/kanidm-client.sh b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/kanidm-client.sh deleted file mode 100755 index edea365..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/kanidm-client.sh +++ /dev/null @@ -1,53 +0,0 @@ -#!/bin/sh -# The Kanidm side of vel.klingenbergbygg.no: one OAuth2 client and one -# group per desk, each group mapped into the `groups` claim under the -# name the content uses in `qualifies`. Portal reads that claim at -# login (portal src/auth.rs) and gates each group's directory on it. -# -# Needs an admin session first, from a terminal: -# -# kanidm login -D idm_admin -H https://id.klingenbergbygg.no -# -# then: -# -# sh runs/tomtervel-nabohjelp-2026-09-22/kanidm-client.sh -# -# The client secret it prints at the end goes into /etc/app/tomtervel-portal.env -# on kasse together with KANIDM_URL and OAUTH2_CLIENT_ID, then -# `sudo systemctl restart app@tomtervel-portal`. -set -eu -K="kanidm -D idm_admin -H https://id.klingenbergbygg.no" -C=tomtervel-portal - -# Every create skips what is already there, so the script can be rerun. -# `get` exits 0 whether or not the item exists, so the output is read. -has_client() { $K system oauth2 get "$1" 2>/dev/null | grep -q '^name:'; } -has_group() { $K group get "$1" 2>/dev/null | grep -q '^name:'; } -has_client $C || $K system oauth2 create $C "Tomter Vel" https://vel.klingenbergbygg.no -$K system oauth2 add-redirect-url $C https://vel.klingenbergbygg.no/auth/callback || true - -# One Kanidm group per desk, created before anything refers to them. -has_group tomtervel_members || $K group create tomtervel_members -for g in kasserer styret komiteer nabohjelp arrangementer elvesti horingsinstans lekeplasser miljogate pendlerforhold trafikk; do - has_group tomtervel_$g || $K group create tomtervel_$g - $K group add-members tomtervel_members tomtervel_$g -done - -# Portal asks for openid, profile and email (portal src/server/oidc.rs); -# the groups come through the claim map, not a scope. -$K system oauth2 update-scope-map $C tomtervel_members openid profile email - -# The claim value is the plain name the pages use in `qualifies`. -for g in kasserer styret komiteer nabohjelp arrangementer elvesti horingsinstans lekeplasser miljogate pendlerforhold trafikk; do - $K system oauth2 update-claim-map $C groups tomtervel_$g $g -done -$K system oauth2 update-claim-map-join $C groups array - -# Each desk group is a member of tomtervel_members, and Kanidm resolves -# membership transitively, so a person only needs their desk group: -# kanidm -D idm_admin -H https://id.klingenbergbygg.no group add-members tomtervel_kasserer - -echo "--- client ---" -$K system oauth2 get $C -echo "--- secret (put in OAUTH2_CLIENT_SECRET on kasse) ---" -$K system oauth2 show-basic-secret $C diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/kasse-instance.sh b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/kasse-instance.sh deleted file mode 100755 index 9260972..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/kasse-instance.sh +++ /dev/null @@ -1,34 +0,0 @@ -#!/bin/sh -# Bring up app@tomtervel-portal on kasse, serving vel.klingenbergbygg.no -# from tomtervel/questions. Run from this machine as: -# -# ssh kasse sh -s < runs/tomtervel-nabohjelp-2026-09-22/kasse-instance.sh -# -# Mirrors how westra-portal is set up on the host (2026-09-22): the same -# v0.3.36 release, an env file under /etc/app, a Caddy site file under -# /etc/caddy/conf.d, the app@ template unit. Port 3050 (westra 3030, -# klingenberg 3040). Login is left out until the Kanidm client exists; -# add KANIDM_URL, OAUTH2_CLIENT_ID and OAUTH2_CLIENT_SECRET to the env -# file then and restart the unit (see kanidm-client.sh beside this). -set -eu -I=tomtervel-portal; V=v0.3.36 - -sudo mkdir -p /srv/app/$I/releases -[ -d /srv/app/$I/releases/$V ] || sudo cp -a /srv/app/westra-portal/releases/$V /srv/app/$I/releases/ -sudo rm -f /srv/app/$I/releases/$V/westra-portal -sudo ln -sfn portal /srv/app/$I/releases/$V/$I -sudo ln -sfn /srv/app/$I/releases/$V /srv/app/$I/current - -# Env: westra's minus its instance and client lines, plus ours. -sudo sh -c "grep -vE '^(LEPTOS_SITE_ADDR|CONTENT_REPO|PUBLIC_URL|KANIDM_URL|OAUTH2_CLIENT_ID|OAUTH2_CLIENT_SECRET)=' /etc/app/westra-portal.env > /etc/app/$I.env" -sudo sh -c "printf 'LEPTOS_SITE_ADDR=127.0.0.1:3050\nCONTENT_REPO=https://prosjekt.klingenbergbygg.no/tomtervel/questions\nPUBLIC_URL=https://vel.klingenbergbygg.no\n' >> /etc/app/$I.env" -sudo chmod --reference=/etc/app/westra-portal.env /etc/app/$I.env -echo "env keys: $(sudo sed 's/=.*//' /etc/app/$I.env | tr '\n' ' ')" - -sudo sh -c "printf 'vel.klingenbergbygg.no {\n\treverse_proxy 127.0.0.1:3050\n}\n' > /etc/caddy/conf.d/vel.klingenbergbygg.no" -sudo systemctl reload caddy && echo "caddy reloaded" - -sudo systemctl enable --now app@$I.service -sleep 5 -echo "app@$I: $(systemctl is-active app@$I.service)" -sudo journalctl -u app@$I.service --no-pager -n 15 -o cat | cut -c1-160 diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/kasse-login.sh b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/kasse-login.sh deleted file mode 100755 index c84f1f2..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/kasse-login.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/sh -# Add the Kanidm client to app@tomtervel-portal on kasse and restart it. -# The secret is the script's one argument. From this machine, in fish: -# -# ssh kasse sh -s (kanidm -D idm_admin -H https://id.klingenbergbygg.no system oauth2 show-basic-secret tomtervel-portal 2>/dev/null) < runs/tomtervel-nabohjelp-2026-09-22/kasse-login.sh -# -# (in bash: `ssh kasse sh -s "$(kanidm ... show-basic-secret tomtervel-portal 2>/dev/null)" < ...`). -# Run kasse-instance.sh first; this refuses to run before it. -set -eu -I=tomtervel-portal -[ -n "${1:-}" ] || { echo "no secret given as argument"; exit 1; } -[ -f /etc/app/$I.env ] || { echo "/etc/app/$I.env is missing: run kasse-instance.sh first"; exit 1; } -if sudo grep -q '^OAUTH2_CLIENT_ID=' /etc/app/$I.env; then - echo "client already in /etc/app/$I.env; replacing the secret" - sudo sed -i '/^OAUTH2_CLIENT_SECRET=/d' /etc/app/$I.env -else - sudo sh -c "printf 'KANIDM_URL=https://id.klingenbergbygg.no\nOAUTH2_CLIENT_ID=$I\n' >> /etc/app/$I.env" -fi -sudo sh -c "printf 'OAUTH2_CLIENT_SECRET=%s\n' '$1' >> /etc/app/$I.env" -sudo systemctl restart app@$I.service -sleep 4 -echo "app@$I: $(systemctl is-active app@$I.service)" -sudo journalctl -u app@$I.service --no-pager -n 8 -o cat | cut -c1-160 diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/01-questions_arrangementskomite_index.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/01-questions_arrangementskomite_index.yaml.md deleted file mode 100644 index 00e95ef..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/01-questions_arrangementskomite_index.yaml.md +++ /dev/null @@ -1,78 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/arrangementskomite/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "frivillige": { - "description": "", - "heading": "", - "moves": { - "kontaktet->satt_opp": "satt_opp>", - "kontaktet->takket_nei": "takket_nei>", - "open->kontaktet": "kontaktet>", - "open->takket_nei": "takket_nei>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "frivillige": { - "description": "Her ser du hvem som har sagt de vil hjelpe til, og hva de er satt opp på.", - "heading": "Frivillige til arrangementer og dugnad", - "moves": { - "kontaktet->satt_opp": "Sett på oppgave", - "kontaktet->takket_nei": "Takket nei", - "open->kontaktet": "Har tatt kontakt", - "open->takket_nei": "Takket nei" - } - } - }, - "confirm": "Lagre", - "description": "Oversikt over frivillige som vil hjelpe til, så du kan sette dem opp på noe som passer.", - "links": {}, - "question": "Hvem kan hjelpe til, og hva skal de gjøre?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/02-questions_bidra_index.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/02-questions_bidra_index.yaml.md deleted file mode 100644 index 16635c9..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/02-questions_bidra_index.yaml.md +++ /dev/null @@ -1,118 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/bidra/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "hjelpe-til": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "hva": "", - "navn": "", - "telefon": "" - } - }, - "horingsinnspill": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "innspill": "", - "navn": "", - "sak": "" - } - }, - "komite": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "epost": "", - "komite": "", - "navn": "" - } - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "description": "Vil du bidra med noe for Tomter? Her finner du veien inn, enten det er en dugnadsøkt, en mening om en høringssak eller en plass i en komité.", - "needs": { - "hjelpe-til": { - "button": "Meld meg på", - "description": "Sett av litt tid på et arrangement eller en dugnad. Vi finner noe som passer deg.", - "form_title": "Bli med å hjelpe", - "heading": "Gi en hånd på neste arrangement eller dugnad", - "labels": { - "hva": "Hva kan du tenke deg å hjelpe til med?", - "navn": "Navn", - "telefon": "Telefon" - } - }, - "horingsinnspill": { - "button": "Send innspill", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet, så tar vi det med i velets svar.", - "form_title": "Send et høringsinnspill", - "heading": "Få din mening med i velets høringssvar", - "labels": { - "innspill": "Hva mener du?", - "navn": "Navn", - "sak": "Hvilken sak gjelder det?" - } - }, - "komite": { - "button": "Meld interesse", - "description": "Vi er sju komiteer som trenger folk. Si hvilken som passer deg, så tar vi kontakt.", - "form_title": "Bli med i en komité", - "heading": "Få en plass i komiteen som passer deg", - "labels": { - "epost": "E-post", - "komite": "Hvilken komité har du lyst til å bli med i?", - "navn": "Navn" - } - } - }, - "question": "Hva har du lyst til å bidra med?" -} diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/03-questions_decide_dele-utstyr.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/03-questions_decide_dele-utstyr.yaml.md deleted file mode 100644 index 34bff5f..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/03-questions_decide_dele-utstyr.yaml.md +++ /dev/null @@ -1,64 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/decide/dele-utstyr.yaml -It is a page the person who sent a form reaches later, through a private link, to make a decision that is theirs: under `moves`, each entry is one thing they can decide. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "moves": { - "tatt_ned": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Her styrer du oppslaget om det du har lånt ut.", - "moves": { - "tatt_ned": { - "button": "Ta ned oppslaget", - "description": "Oppslaget forsvinner fra siden. Bruk denne når det er lånt bort eller du ikke vil låne det ut lenger.", - "heading": "Ta ned oppslaget ditt" - } - }, - "question": "Vil du ta ned oppslaget?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/04-questions_decide_kan-hjelpe.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/04-questions_decide_kan-hjelpe.yaml.md deleted file mode 100644 index d4c5c68..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/04-questions_decide_kan-hjelpe.yaml.md +++ /dev/null @@ -1,62 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/decide/kan-hjelpe.yaml -It is a page the person who sent a form reaches later, through a private link, to make a decision that is theirs: under `moves`, each entry is one thing they can decide. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "moves": { - "trukket": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "description": "Her ser du hvem som har fått beskjed om at du kan hjelpe, og kan trekke deg om det ikke passer lenger.", - "moves": { - "trukket": { - "button": "Trekk meg", - "description": "Da fjerner vi deg fra lista over naboer nabohjelpa kan spørre.", - "heading": "Slutt å bli spurt" - } - }, - "question": "Vil du fortsatt stå på lista over naboer som kan hjelpe?" -} diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/05-questions_decide_trenger-hjelp.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/05-questions_decide_trenger-hjelp.yaml.md deleted file mode 100644 index ff3f88b..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/05-questions_decide_trenger-hjelp.yaml.md +++ /dev/null @@ -1,64 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/decide/trenger-hjelp.yaml -It is a page the person who sent a form reaches later, through a private link, to make a decision that is theirs: under `moves`, each entry is one thing they can decide. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "moves": { - "ordnet": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Her sier du fra om hva som skjedde med hjelpen naboen tilbød.", - "moves": { - "ordnet": { - "button": "Ja, det ordnet seg", - "description": "Du fikk hjelpen du trengte. Vi merker saken som løst og gir beskjed til den som hjalp til.", - "heading": "Meld at hjelpen kom fram" - } - }, - "question": "Ordnet det seg?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/06-questions_index.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/06-questions_index.yaml.md deleted file mode 100644 index 923df75..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/06-questions_index.yaml.md +++ /dev/null @@ -1,94 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/index.yaml -It is the front door: the first page any visitor sees. `question` is the page's one question. Under `doors`, each entry is one alternative that leads to a page of its own for one kind of visitor: its heading must let that visitor recognise themselves from the heading alone. Under `needs`, each entry is one alternative with a form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "doors": { - "bidra": { - "button": "", - "description": "", - "heading": "" - }, - "medlem": { - "button": "", - "description": "", - "heading": "" - }, - "melde-fra": { - "button": "", - "description": "", - "heading": "" - }, - "naboer": { - "button": "", - "description": "", - "heading": "" - } - }, - "needs": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "description": "Hva vil du hjelpe oss med i dag?", - "doors": { - "bidra": { - "button": "Bidra", - "description": "Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.", - "heading": "Vil du bidra eller si din mening?" - }, - "medlem": { - "button": "Bli medlem", - "description": "Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.", - "heading": "Vil du bli medlem eller endre medlemskapet?" - }, - "melde-fra": { - "button": "Meld fra", - "description": "Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.", - "heading": "Har du sett noe som bør fikses?" - }, - "naboer": { - "button": "Naboer", - "description": "Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.", - "heading": "Vil du hjelpe eller få hjelp av naboer?" - } - }, - "needs": {}, - "question": "Hva vil du gjøre?" -} diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/07-questions_kasserer_index.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/07-questions_kasserer_index.yaml.md deleted file mode 100644 index 3f1a7eb..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/07-questions_kasserer_index.yaml.md +++ /dev/null @@ -1,108 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/kasserer/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "husstander": { - "description": "", - "heading": "", - "moves": { - "open->betalt": "betalt>", - "open->utmeldt": "utmeldt>" - } - }, - "medlemsendringer": { - "description": "", - "heading": "", - "moves": { - "open->oppdatert": "oppdatert>" - } - }, - "utlegg": { - "description": "", - "heading": "", - "moves": { - "godkjent->avvist": "avvist>", - "godkjent->utbetalt": "utbetalt>", - "open->avvist": "avvist>", - "open->godkjent": "godkjent>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "husstander": { - "description": "Husstander som har meldt seg inn eller vil ut av velet.", - "heading": "Husstander som venter på deg", - "moves": { - "open->betalt": "Kontingent betalt", - "open->utmeldt": "Meld ut" - } - }, - "medlemsendringer": { - "description": "Medlemmer som har flyttet, byttet e-post eller vil melde seg ut.", - "heading": "Opplysninger som skal endres", - "moves": { - "open->oppdatert": "Opplysninger oppdatert" - } - }, - "utlegg": { - "description": "Utlegg fra komiteene som venter på godkjenning eller utbetaling.", - "heading": "Utlegg som venter på deg", - "moves": { - "godkjent->avvist": "Avvis likevel", - "godkjent->utbetalt": "Merk som utbetalt", - "open->avvist": "Avvis utlegg", - "open->godkjent": "Godkjenn utlegg" - } - } - }, - "confirm": "Utført", - "description": "Her har du oversikt over medlemskap og utlegg som venter på deg som kasserer.", - "links": {}, - "question": "Hva må jeg som kasserer ta tak i nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/08-questions_komiteer_index.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/08-questions_komiteer_index.yaml.md deleted file mode 100644 index fba4788..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/08-questions_komiteer_index.yaml.md +++ /dev/null @@ -1,68 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/komiteer/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": {}, - "confirm": "", - "description": "", - "links": { - "utlegg": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": {}, - "confirm": "Registrer", - "description": "Her ser du sakene komiteen din har fått inn, og kan flytte dem videre etter hvert som dere følger dem opp.", - "links": { - "utlegg": { - "button": "Legg inn utlegg", - "description": "Har du lagt ut for noe til komiteen? Registrer det her, så tar kasserer seg av resten.", - "heading": "Få igjen penger du har lagt ut" - } - }, - "question": "Hva står på til komiteen min nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/09-questions_komiteer_utlegg-sent.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/09-questions_komiteer_utlegg-sent.yaml.md deleted file mode 100644 index 94fd190..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/09-questions_komiteer_utlegg-sent.yaml.md +++ /dev/null @@ -1,48 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/komiteer/utlegg-sent.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{"back": "Til forsiden", "description": "Utlegget ditt er sendt til kasserer.", "next_description": "Kasserer ser gjennom utlegget og godkjenner det, så blir pengene satt inn på kontoen du har oppgitt.", "next_heading": "Pengene dine tilbake", "question": "Hva skjer nå med utlegget mitt?"} diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/10-questions_komiteer_utlegg.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/10-questions_komiteer_utlegg.yaml.md deleted file mode 100644 index 363fd0e..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/10-questions_komiteer_utlegg.yaml.md +++ /dev/null @@ -1,68 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/komiteer/utlegg.yaml -It is a page only one role inside the business can open, holding one form. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "belop": "", - "hva": "", - "navn": "" - }, - "page_description": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "button": "Send krav", - "description": "Har du lagt ut for noe til komiteen, kan du melde det inn her, så ordner kasserer utbetaling.", - "form_title": "Krav om utlegg", - "heading": "Få tilbake det du har lagt ut for", - "labels": { - "belop": "Beløp", - "hva": "Hva gjaldt det", - "navn": "Navn" - }, - "page_description": "For deg som har betalt noe for komiteen din og skal ha pengene tilbake.", - "question": "Har du lagt ut for noe komiteen skal betale?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/11-questions_lekeplasskomite_index.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/11-questions_lekeplasskomite_index.yaml.md deleted file mode 100644 index bd6f47f..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/11-questions_lekeplasskomite_index.yaml.md +++ /dev/null @@ -1,74 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/lekeplasskomite/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "anleggsfeil": { - "description": "", - "heading": "", - "moves": { - "open->tatt_tak_i": "tatt_tak_i>", - "tatt_tak_i->utbedret": "utbedret>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "anleggsfeil": { - "description": "Meldinger om noe som er ødelagt på lekeplassen eller stien, og som må fikses før noen skader seg.", - "heading": "Skader meldt inn av naboer", - "moves": { - "open->tatt_tak_i": "Ta tak i dette", - "tatt_tak_i->utbedret": "Meld som utbedret" - } - } - }, - "confirm": "Lagre", - "description": "Her har lekeplasskomiteen oversikt over meldte feil på lekeplassene og stien, og kan følge dem opp fram til de er utbedret.", - "links": {}, - "question": "Hva må lekeplasskomiteen følge opp nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/12-questions_medlem_index.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/12-questions_medlem_index.yaml.md deleted file mode 100644 index 992d0ff..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/12-questions_medlem_index.yaml.md +++ /dev/null @@ -1,100 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/medlem/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "bli-medlem": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "adresse": "", - "epost": "", - "navn": "", - "telefon": "" - } - }, - "endre-medlemskap": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "adresse": "", - "hva_er_nytt": "", - "navn": "" - } - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Bli medlem av Tomter Vel, eller oppdater opplysningene dine hvis noe har endret seg.", - "needs": { - "bli-medlem": { - "button": "Bli medlem", - "description": "Meld deg inn og betal kontingenten, så er du med.", - "form_title": "Bli medlem", - "heading": "Meld deg inn i Tomter Vel", - "labels": { - "adresse": "Adresse", - "epost": "E-post", - "navn": "Navn", - "telefon": "Telefon" - } - }, - "endre-medlemskap": { - "button": "Meld endring", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Si fra her.", - "form_title": "Endre medlemskap", - "heading": "Oppdater opplysningene dine", - "labels": { - "adresse": "Adresse", - "hva_er_nytt": "Hva vil du endre?", - "navn": "Navn" - } - } - }, - "question": "Vil du bli medlem, eller endre medlemskapet ditt?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/13-questions_melde-fra_index.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/13-questions_melde-fra_index.yaml.md deleted file mode 100644 index ec31dec..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/13-questions_melde-fra_index.yaml.md +++ /dev/null @@ -1,96 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/melde-fra/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "anleggsfeil": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "hva": "", - "hvor": "" - } - }, - "trafikkfare": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "epost": "", - "hva": "", - "hvor": "" - } - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Sett du noe i nabolaget som ikke er som det skal? Fortell oss om det, så følger vi det opp.", - "needs": { - "anleggsfeil": { - "button": "Meld fra", - "description": "Er noe på lekeplassen eller stien ødelagt? Si ifra, så tar vi tak i det før noen skader seg.", - "form_title": "Meld skade", - "heading": "Få fikset det som er ødelagt", - "labels": { - "hva": "Hva er ødelagt?", - "hvor": "Hvor er det?" - } - }, - "trafikkfare": { - "button": "Meld fra", - "description": "Sett du et farlig sted i trafikken? Meld fra, så tar vi det opp med kommunen eller veieier.", - "form_title": "Meld trafikkfare", - "heading": "Få gjort noe med en farlig vei", - "labels": { - "epost": "E-post", - "hva": "Hva er farlig?", - "hvor": "Hvor er det?" - } - } - }, - "question": "Hva har du sett?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/14-questions_naboer_index.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/14-questions_naboer_index.yaml.md deleted file mode 100644 index c865583..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/14-questions_naboer_index.yaml.md +++ /dev/null @@ -1,126 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/naboer/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "dele-utstyr": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "email": "", - "har_eller_trenger": "", - "hva": "", - "navn": "" - } - }, - "kan-hjelpe": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "email": "", - "kan": "", - "navn": "", - "telefon": "" - } - }, - "trenger-hjelp": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "adresse": "", - "email": "", - "hva": "", - "navn": "", - "telefon": "" - } - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "description": "Nabolag er godt naboskap. Trenger du en hånd, kan du stille opp, eller har du noe andre kan låne?", - "needs": { - "dele-utstyr": { - "button": "Lag oppslag", - "description": "Legg ut det du har til overs, eller si fra om noe du gjerne vil låne av naboene.", - "form_title": "Lån eller lån ut", - "heading": "Del utstyr med naboene", - "labels": { - "email": "E-post", - "har_eller_trenger": "Har du, eller trenger du?", - "hva": "Hva gjelder det?", - "navn": "Navn" - } - }, - "kan-hjelpe": { - "button": "Meld deg", - "description": "Si fra om hva du kan bidra med, så tar nabohjelpa kontakt når det trengs.", - "form_title": "Meld deg som hjelper", - "heading": "Bli en nabo andre kan spørre", - "labels": { - "email": "E-post", - "kan": "Hva kan du hjelpe med?", - "navn": "Navn", - "telefon": "Telefon" - } - }, - "trenger-hjelp": { - "button": "Be om hjelp", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Fortell hva du trenger, så finner vi en nabo.", - "form_title": "Be om en hånd", - "heading": "Få en nabo til å stille opp", - "labels": { - "adresse": "Adresse", - "email": "E-post", - "hva": "Hva trenger du hjelp med?", - "navn": "Navn", - "telefon": "Telefon" - } - } - }, - "question": "Trenger du en nabo, eller vil du være en?" -} diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/15-questions_nabohjelp_index.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/15-questions_nabohjelp_index.yaml.md deleted file mode 100644 index 7505b60..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/15-questions_nabohjelp_index.yaml.md +++ /dev/null @@ -1,94 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/nabohjelp/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "hjelpebehov": { - "description": "", - "heading": "", - "moves": { - "formidlet->ikke_lost": "ikke_lost>", - "formidlet->ordnet": "ordnet>", - "open->formidlet": "formidlet>", - "open->ikke_lost": "ikke_lost>" - } - }, - "hjelpere": { - "description": "", - "heading": "", - "moves": { - "open->registrert": "registrert>", - "open->trukket": "trukket>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "hjelpebehov": { - "description": "Naboer som trenger en hånd med noe akkurat nå, som snømåking, handling eller skyss.", - "heading": "Naboer som trenger en hånd", - "moves": { - "formidlet->ikke_lost": "Fikk ingen til å hjelpe", - "formidlet->ordnet": "Hjelpen er gitt", - "open->formidlet": "Satt nabo på saken", - "open->ikke_lost": "Fant ingen som kan" - } - }, - "hjelpere": { - "description": "Naboer som har sagt de stiller opp når noen trenger en hånd.", - "heading": "Naboer som kan stille opp", - "moves": { - "open->registrert": "Tatt imot", - "open->trukket": "Trukket seg" - } - } - }, - "confirm": "Lagre", - "description": "Her ser du hvem som trenger hjelp og hvem som kan hjelpe, så du kan sette dem sammen.", - "links": {}, - "question": "Hvem trenger hjelp, og hvem kan gi den?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/16-questions_received_anleggsfeil.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/16-questions_received_anleggsfeil.yaml.md deleted file mode 100644 index 2898d3c..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/16-questions_received_anleggsfeil.yaml.md +++ /dev/null @@ -1,56 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/anleggsfeil.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake", - "description": "Meldingen din om feilen er sendt til lekeplasskomiteen.", - "next_description": "Lekeplasskomiteen ser på det og fikser det som må fikses, eller sperrer av stedet til det er gjort.", - "next_heading": "Lekeplasskomiteen tar det videre", - "question": "Hva skjer med meldingen min nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/17-questions_received_bli-medlem.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/17-questions_received_bli-medlem.yaml.md deleted file mode 100644 index 9973264..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/17-questions_received_bli-medlem.yaml.md +++ /dev/null @@ -1,56 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/bli-medlem.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Til forsiden", - "description": "Vi har mottatt innmeldingen din i Tomter Vel. Kasserer går gjennom den og sender deg informasjon om kontingenten.", - "next_description": "Så snart kontingenten er betalt, er du registrert som medlem hos oss.", - "next_heading": "Du hører fra kasserer om kontingenten", - "question": "Hva skjer nå som jeg har meldt meg inn?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/18-questions_received_dele-utstyr.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/18-questions_received_dele-utstyr.yaml.md deleted file mode 100644 index b1d8d56..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/18-questions_received_dele-utstyr.yaml.md +++ /dev/null @@ -1,54 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/dele-utstyr.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "back": "Til forsiden", - "description": "Takk for at du melder inn utstyr til deling. Styret legger det ut så naboene kan se det.", - "next_description": "Styret legger oppslaget ut, og tar kontakt med deg hvis noe er uklart.", - "next_heading": "Oppslaget kommer opp snart", - "question": "Hva skjer med det jeg har meldt inn?" -} diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/19-questions_received_endre-medlemskap.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/19-questions_received_endre-medlemskap.yaml.md deleted file mode 100644 index d420681..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/19-questions_received_endre-medlemskap.yaml.md +++ /dev/null @@ -1,56 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/endre-medlemskap.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake", - "description": "Kasserer oppdaterer opplysningene deres i medlemsregisteret.", - "next_description": "Kasserer går gjennom endringen og retter opp i registeret så snart de får tid.", - "next_heading": "Riktige opplysninger i registeret", - "question": "Er opplysningene mine oppdatert nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/20-questions_received_hjelpe-til.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/20-questions_received_hjelpe-til.yaml.md deleted file mode 100644 index 29e9dd0..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/20-questions_received_hjelpe-til.yaml.md +++ /dev/null @@ -1,56 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/hjelpe-til.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake til forsiden", - "description": "Takk for at du vil hjelpe til! Arrangementskomiteen har fått beskjed og tar kontakt med deg.", - "next_description": "Noen fra arrangementskomiteen tar kontakt med deg for å avtale hva du kan bidra med.", - "next_heading": "Arrangementskomiteen kontakter deg", - "question": "Hva skjer nå som jeg har meldt meg?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/21-questions_received_horingsinnspill.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/21-questions_received_horingsinnspill.yaml.md deleted file mode 100644 index 0d1a3d9..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/21-questions_received_horingsinnspill.yaml.md +++ /dev/null @@ -1,56 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/horingsinnspill.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake til forsiden", - "description": "Takk for innspillet ditt. Vi har mottatt det og tar det med når styret skal svare på høringen.", - "next_description": "Styret går gjennom innspillene før høringsfristen og samler dem i velets svar til kommunen.", - "next_heading": "Innspillet ditt blir med i høringssvaret", - "question": "Hva skjer med innspillet mitt nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/22-questions_received_kan-hjelpe.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/22-questions_received_kan-hjelpe.yaml.md deleted file mode 100644 index 3dc4bf4..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/22-questions_received_kan-hjelpe.yaml.md +++ /dev/null @@ -1,56 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/kan-hjelpe.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake", - "description": "Takk for at du sier fra at du kan hjelpe. Meldingen går til nabohjelp.", - "next_description": "Nabohjelp legger deg inn på listen over naboer som kan stille opp. Du blir kontaktet når det er noen som trenger akkurat det du tilbyr.", - "next_heading": "Du er registrert som hjelper", - "question": "Hva skjer nå med det jeg har sendt inn?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/23-questions_received_komite.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/23-questions_received_komite.yaml.md deleted file mode 100644 index d73873e..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/23-questions_received_komite.yaml.md +++ /dev/null @@ -1,56 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/komite.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake til forsiden", - "description": "Takk for at du vil bidra i en komité. Styret ser gjennom henvendelser om komitéarbeid og tar kontakt med deg.", - "next_description": "Styret finner ut hvilken komité som passer, og hører med deg før du settes opp.", - "next_heading": "Du hører fra styret", - "question": "Hva skjer nå med ønsket mitt om å sitte i en komité?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/24-questions_received_trafikkfare.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/24-questions_received_trafikkfare.yaml.md deleted file mode 100644 index 2787a3c..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/24-questions_received_trafikkfare.yaml.md +++ /dev/null @@ -1,56 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/trafikkfare.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Tilbake til forsiden", - "description": "Takk for at du meldte fra om en trafikkfare. Trafikkomiteen leser meldingen og tar den videre.", - "next_description": "Meldingen går til trafikkomiteen. De vurderer saken og tar den opp med kommunen eller veieier om det trengs.", - "next_heading": "Trafikkomiteen ser på saken", - "question": "Hva skjer med meldingen min nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/25-questions_received_trenger-hjelp.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/25-questions_received_trenger-hjelp.yaml.md deleted file mode 100644 index 3e200d1..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/25-questions_received_trenger-hjelp.yaml.md +++ /dev/null @@ -1,56 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/received/trenger-hjelp.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Til forsiden", - "description": "Vi har fått beskjeden om at du trenger en hånd, og nabohjelp-komiteen ser på den.", - "next_description": "Så snart en nabo kan stille opp, tar de kontakt med deg.", - "next_heading": "En nabo tar kontakt", - "question": "Hva skjer nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/26-questions_styret_index.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/26-questions_styret_index.yaml.md deleted file mode 100644 index 45aadba..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/26-questions_styret_index.yaml.md +++ /dev/null @@ -1,116 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/styret/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "innspill": { - "description": "", - "heading": "", - "moves": { - "open->ikke_tatt_med": "ikke_tatt_med>", - "open->tatt_med": "tatt_med>" - } - }, - "komitesoknader": { - "description": "", - "heading": "", - "moves": { - "open->avslatt": "avslatt>", - "open->plassert": "plassert>" - } - }, - "oppslag": { - "description": "", - "heading": "", - "moves": { - "open->lagt_ut": "lagt_ut>", - "open->tatt_ned": "tatt_ned>" - } - }, - "trafikkmeldinger": { - "description": "", - "heading": "", - "moves": {} - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "innspill": { - "description": "Her ser dere innspill fra beboere til saker kommunen har på høring, klare til å tas med i velets svar.", - "heading": "Innspill til høringssvar", - "moves": { - "open->ikke_tatt_med": "Ikke ta med", - "open->tatt_med": "Ta med i svaret" - } - }, - "komitesoknader": { - "description": "Her ser dere hvem som har meldt seg til en komité og venter på plass.", - "heading": "Søknader til komiteene", - "moves": { - "open->avslatt": "Avslå søknaden", - "open->plassert": "Gi plass i komité" - } - }, - "oppslag": { - "description": "Her ser dere oppslag naboer vil dele om ting de låner ut eller trenger å låne.", - "heading": "Oppslag om utstyr", - "moves": { - "open->lagt_ut": "Legg ut oppslaget", - "open->tatt_ned": "Ta ned oppslaget" - } - }, - "trafikkmeldinger": { - "description": "Her ser dere farlige steder i trafikken som beboere har meldt inn.", - "heading": "Meldte trafikkfarer", - "moves": {} - } - }, - "confirm": "Lagre", - "description": "Herfra følger styret opp høringsinnspill, komitésøknader, oppslag og trafikkmeldinger fra beboerne.", - "links": {}, - "question": "Hva venter på styret akkurat nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/27-questions_trafikkomite_index.yaml.md b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/27-questions_trafikkomite_index.yaml.md deleted file mode 100644 index 6d78020..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/llm/27-questions_trafikkomite_index.yaml.md +++ /dev/null @@ -1,78 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: nb - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil være med i velet, eller allerede er det; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe i nabolaget som ikke er som det skal; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil gjøre en innsats, eller si sin mening i en sak; behind it: horingsinnspill, hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikkomite. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasskomite. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by styret. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementskomite. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: questions/trafikkomite/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "trafikkmeldinger": { - "description": "", - "heading": "", - "moves": { - "open->avvist": "avvist>", - "open->tatt_opp": "tatt_opp>", - "tatt_opp->avvist": "avvist>", - "tatt_opp->ordnet": "ordnet>" - } - } - }, - "confirm": "", - "description": "", - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "trafikkmeldinger": { - "description": "Meldinger fra naboer om farlige steder i trafikken, fra nye tips til saker dere har tatt videre.", - "heading": "Trafikkfarer naboene har meldt inn", - "moves": { - "open->avvist": "Avvis meldingen", - "open->tatt_opp": "Ta opp med kommunen", - "tatt_opp->avvist": "Avvis saken", - "tatt_opp->ordnet": "Meld som ordnet" - } - } - }, - "confirm": "Lagre", - "description": "Her følger trafikkomiteen opp farer naboene har meldt fra om, fra nytt tips til saken er ordnet eller avvist.", - "links": {}, - "question": "Hvilke trafikkfarer må vi følge opp nå?" -} -``` diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/model.json b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/model.json deleted file mode 100644 index 4c9ad8d..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/model.json +++ /dev/null @@ -1,1467 +0,0 @@ -{ - "buckets": { - "anleggsfeil": { - "desks": [ - { - "group": "lekeplasskomite", - "moves": [ - { - "from": "open", - "label": "Ta tak i dette", - "to": "tatt_tak_i" - }, - { - "from": "tatt_tak_i", - "label": "Meld som utbedret", - "to": "utbedret" - } - ], - "page": "/lekeplasskomite" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "tatt_tak_i" - ], - "tatt_tak_i": [ - "utbedret" - ] - } - }, - "frivillige": { - "desks": [ - { - "group": "arrangementskomite", - "moves": [ - { - "from": "kontaktet", - "label": "Sett på oppgave", - "to": "satt_opp" - }, - { - "from": "kontaktet", - "label": "Takket nei", - "to": "takket_nei" - }, - { - "from": "open", - "label": "Har tatt kontakt", - "to": "kontaktet" - }, - { - "from": "open", - "label": "Takket nei", - "to": "takket_nei" - } - ], - "page": "/arrangementskomite" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "kontaktet": [ - "satt_opp", - "takket_nei" - ], - "open": [ - "kontaktet", - "takket_nei" - ] - } - }, - "hjelpebehov": { - "desks": [ - { - "group": "nabohjelp", - "moves": [ - { - "from": "formidlet", - "label": "Hjelpen er gitt", - "to": "ordnet" - }, - { - "from": "formidlet", - "label": "Fikk ingen til å hjelpe", - "to": "ikke_lost" - }, - { - "from": "open", - "label": "Satt nabo på saken", - "to": "formidlet" - }, - { - "from": "open", - "label": "Fant ingen som kan", - "to": "ikke_lost" - } - ], - "page": "/nabohjelp" - } - ], - "initial": "open", - "self_moves": [ - "ordnet" - ], - "transitions": { - "formidlet": [ - "ordnet", - "ikke_lost" - ], - "open": [ - "formidlet", - "ikke_lost" - ] - } - }, - "hjelpere": { - "desks": [ - { - "group": "nabohjelp", - "moves": [ - { - "from": "open", - "label": "Tatt imot", - "to": "registrert" - }, - { - "from": "open", - "label": "Trukket seg", - "to": "trukket" - } - ], - "page": "/nabohjelp" - } - ], - "initial": "open", - "self_moves": [ - "trukket" - ], - "transitions": { - "open": [ - "registrert", - "trukket" - ] - } - }, - "husstander": { - "desks": [ - { - "group": "kasserer", - "moves": [ - { - "from": "open", - "label": "Kontingent betalt", - "to": "betalt" - }, - { - "from": "open", - "label": "Meld ut", - "to": "utmeldt" - } - ], - "page": "/kasserer" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "betalt", - "utmeldt" - ] - } - }, - "innspill": { - "desks": [ - { - "group": "styret", - "moves": [ - { - "from": "open", - "label": "Ta med i svaret", - "to": "tatt_med" - }, - { - "from": "open", - "label": "Ikke ta med", - "to": "ikke_tatt_med" - } - ], - "page": "/styret" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "tatt_med", - "ikke_tatt_med" - ] - } - }, - "komitesoknader": { - "desks": [ - { - "group": "styret", - "moves": [ - { - "from": "open", - "label": "Gi plass i komité", - "to": "plassert" - }, - { - "from": "open", - "label": "Avslå søknaden", - "to": "avslatt" - } - ], - "page": "/styret" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "plassert", - "avslatt" - ] - } - }, - "medlemsendringer": { - "desks": [ - { - "group": "kasserer", - "moves": [ - { - "from": "open", - "label": "Opplysninger oppdatert", - "to": "oppdatert" - } - ], - "page": "/kasserer" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "oppdatert" - ] - } - }, - "oppslag": { - "desks": [ - { - "group": "styret", - "moves": [ - { - "from": "open", - "label": "Legg ut oppslaget", - "to": "lagt_ut" - }, - { - "from": "open", - "label": "Ta ned oppslaget", - "to": "tatt_ned" - } - ], - "page": "/styret" - } - ], - "initial": "open", - "self_moves": [ - "tatt_ned" - ], - "transitions": { - "open": [ - "lagt_ut", - "tatt_ned" - ] - } - }, - "trafikkmeldinger": { - "desks": [ - { - "group": "styret", - "moves": [], - "page": "/styret" - }, - { - "group": "trafikkomite", - "moves": [ - { - "from": "open", - "label": "Ta opp med kommunen", - "to": "tatt_opp" - }, - { - "from": "open", - "label": "Avvis meldingen", - "to": "avvist" - }, - { - "from": "tatt_opp", - "label": "Meld som ordnet", - "to": "ordnet" - }, - { - "from": "tatt_opp", - "label": "Avvis saken", - "to": "avvist" - } - ], - "page": "/trafikkomite" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "open": [ - "tatt_opp", - "avvist" - ], - "tatt_opp": [ - "ordnet", - "avvist" - ] - } - }, - "utlegg": { - "desks": [ - { - "group": "kasserer", - "moves": [ - { - "from": "godkjent", - "label": "Merk som utbetalt", - "to": "utbetalt" - }, - { - "from": "godkjent", - "label": "Avvis likevel", - "to": "avvist" - }, - { - "from": "open", - "label": "Godkjenn utlegg", - "to": "godkjent" - }, - { - "from": "open", - "label": "Avvis utlegg", - "to": "avvist" - } - ], - "page": "/kasserer" - } - ], - "initial": "open", - "self_moves": [], - "transitions": { - "godkjent": [ - "utbetalt", - "avvist" - ], - "open": [ - "godkjent", - "avvist" - ] - } - } - }, - "needs": [ - { - "done_when": [ - "betalt", - "utmeldt" - ], - "enters_as": null, - "handled_by": "kasserer", - "id": "bli-medlem", - "lands_in": "husstander", - "steps": [ - { - "alternative": "Vil du bli medlem eller endre medlemskapet?", - "expect": [ - "Vil du bli medlem eller endre medlemskapet?" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.", - "name": "Vil du bli medlem eller endre medlemskapet?" - }, - { - "description": "Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.", - "name": "Har du sett noe som bør fikses?" - }, - { - "description": "Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.", - "name": "Vil du bidra eller si din mening?" - }, - { - "description": "Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.", - "name": "Vil du hjelpe eller få hjelp av naboer?" - } - ], - "page": "/", - "question": "Hva vil du gjøre?" - }, - { - "alternative": "Meld deg inn i Tomter Vel", - "expect": [ - "Meld deg inn i Tomter Vel" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Adresse", - "name": "adresse", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "E-post", - "name": "epost", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Telefon", - "name": "telefon", - "optional": true, - "options": [], - "type": "tel" - } - ], - "options": [ - { - "description": "Meld deg inn og betal kontingenten, så er du med.", - "name": "Meld deg inn i Tomter Vel" - }, - { - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Si fra her.", - "name": "Oppdater opplysningene dine" - } - ], - "page": "/medlem", - "question": "Vil du bli medlem, eller endre medlemskapet ditt?" - } - ], - "success": [ - "betalt" - ], - "wants": "å bli medlem og få betalt kontingenten", - "who": "en husstand i Tomter" - }, - { - "done_when": [ - "oppdatert" - ], - "enters_as": null, - "handled_by": "kasserer", - "id": "endre-medlemskap", - "lands_in": "medlemsendringer", - "steps": [ - { - "alternative": "Vil du bli medlem eller endre medlemskapet?", - "expect": [ - "Vil du bli medlem eller endre medlemskapet?" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.", - "name": "Vil du bli medlem eller endre medlemskapet?" - }, - { - "description": "Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.", - "name": "Har du sett noe som bør fikses?" - }, - { - "description": "Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.", - "name": "Vil du bidra eller si din mening?" - }, - { - "description": "Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.", - "name": "Vil du hjelpe eller få hjelp av naboer?" - } - ], - "page": "/", - "question": "Hva vil du gjøre?" - }, - { - "alternative": "Oppdater opplysningene dine", - "expect": [ - "Oppdater opplysningene dine" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Adresse", - "name": "adresse", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hva vil du endre?", - "name": "hva_er_nytt", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Meld deg inn og betal kontingenten, så er du med.", - "name": "Meld deg inn i Tomter Vel" - }, - { - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Si fra her.", - "name": "Oppdater opplysningene dine" - } - ], - "page": "/medlem", - "question": "Vil du bli medlem, eller endre medlemskapet ditt?" - } - ], - "success": [ - "oppdatert" - ], - "wants": "at velet har riktige opplysninger om dem", - "who": "et medlem som har flyttet, byttet e-post eller vil melde seg ut" - }, - { - "done_when": [ - "ordnet", - "avvist" - ], - "enters_as": null, - "handled_by": "trafikkomite", - "id": "trafikkfare", - "lands_in": "trafikkmeldinger", - "steps": [ - { - "alternative": "Har du sett noe som bør fikses?", - "expect": [ - "Har du sett noe som bør fikses?" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.", - "name": "Vil du bli medlem eller endre medlemskapet?" - }, - { - "description": "Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.", - "name": "Har du sett noe som bør fikses?" - }, - { - "description": "Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.", - "name": "Vil du bidra eller si din mening?" - }, - { - "description": "Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.", - "name": "Vil du hjelpe eller få hjelp av naboer?" - } - ], - "page": "/", - "question": "Hva vil du gjøre?" - }, - { - "alternative": "Få gjort noe med en farlig vei", - "expect": [ - "Få gjort noe med en farlig vei" - ], - "fields": [ - { - "label": "Hvor er det?", - "name": "hvor", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hva er farlig?", - "name": "hva", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "E-post", - "name": "epost", - "optional": true, - "options": [], - "type": "email" - } - ], - "options": [ - { - "description": "Sett du et farlig sted i trafikken? Meld fra, så tar vi det opp med kommunen eller veieier.", - "name": "Få gjort noe med en farlig vei" - }, - { - "description": "Er noe på lekeplassen eller stien ødelagt? Si ifra, så tar vi tak i det før noen skader seg.", - "name": "Få fikset det som er ødelagt" - } - ], - "page": "/melde-fra", - "question": "Hva har du sett?" - } - ], - "success": [ - "ordnet" - ], - "wants": "at velet tar det opp med kommunen eller den som eier veien", - "who": "en som har sett et farlig sted i trafikken" - }, - { - "done_when": [ - "utbedret" - ], - "enters_as": null, - "handled_by": "lekeplasskomite", - "id": "anleggsfeil", - "lands_in": "anleggsfeil", - "steps": [ - { - "alternative": "Har du sett noe som bør fikses?", - "expect": [ - "Har du sett noe som bør fikses?" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.", - "name": "Vil du bli medlem eller endre medlemskapet?" - }, - { - "description": "Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.", - "name": "Har du sett noe som bør fikses?" - }, - { - "description": "Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.", - "name": "Vil du bidra eller si din mening?" - }, - { - "description": "Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.", - "name": "Vil du hjelpe eller få hjelp av naboer?" - } - ], - "page": "/", - "question": "Hva vil du gjøre?" - }, - { - "alternative": "Få fikset det som er ødelagt", - "expect": [ - "Få fikset det som er ødelagt" - ], - "fields": [ - { - "label": "Hvor er det?", - "name": "hvor", - "optional": false, - "options": [ - "Lekeplassen", - "Elvestien", - "Skøytebanen", - "Et annet sted" - ], - "type": "select" - }, - { - "label": "Hva er ødelagt?", - "name": "hva", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Sett du et farlig sted i trafikken? Meld fra, så tar vi det opp med kommunen eller veieier.", - "name": "Få gjort noe med en farlig vei" - }, - { - "description": "Er noe på lekeplassen eller stien ødelagt? Si ifra, så tar vi tak i det før noen skader seg.", - "name": "Få fikset det som er ødelagt" - } - ], - "page": "/melde-fra", - "question": "Hva har du sett?" - } - ], - "success": [ - "utbedret" - ], - "wants": "at det blir fikset før noen skader seg", - "who": "en som ser at noe på lekeplassen eller stien er ødelagt" - }, - { - "done_when": [ - "tatt_med", - "ikke_tatt_med" - ], - "enters_as": null, - "handled_by": "styret", - "id": "horingsinnspill", - "lands_in": "innspill", - "steps": [ - { - "alternative": "Vil du bidra eller si din mening?", - "expect": [ - "Vil du bidra eller si din mening?" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.", - "name": "Vil du bli medlem eller endre medlemskapet?" - }, - { - "description": "Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.", - "name": "Har du sett noe som bør fikses?" - }, - { - "description": "Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.", - "name": "Vil du bidra eller si din mening?" - }, - { - "description": "Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.", - "name": "Vil du hjelpe eller få hjelp av naboer?" - } - ], - "page": "/", - "question": "Hva vil du gjøre?" - }, - { - "alternative": "Få din mening med i velets høringssvar", - "expect": [ - "Få din mening med i velets høringssvar" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hvilken sak gjelder det?", - "name": "sak", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hva mener du?", - "name": "innspill", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet, så tar vi det med i velets svar.", - "name": "Få din mening med i velets høringssvar" - }, - { - "description": "Sett av litt tid på et arrangement eller en dugnad. Vi finner noe som passer deg.", - "name": "Gi en hånd på neste arrangement eller dugnad" - }, - { - "description": "Vi er sju komiteer som trenger folk. Si hvilken som passer deg, så tar vi kontakt.", - "name": "Få en plass i komiteen som passer deg" - } - ], - "page": "/bidra", - "question": "Hva har du lyst til å bidra med?" - } - ], - "success": [ - "tatt_med" - ], - "wants": "at velet tar det med i sitt svar", - "who": "en beboer som har en mening om en sak kommunen har på høring" - }, - { - "done_when": [ - "satt_opp", - "takket_nei" - ], - "enters_as": null, - "handled_by": "arrangementskomite", - "id": "hjelpe-til", - "lands_in": "frivillige", - "steps": [ - { - "alternative": "Vil du bidra eller si din mening?", - "expect": [ - "Vil du bidra eller si din mening?" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.", - "name": "Vil du bli medlem eller endre medlemskapet?" - }, - { - "description": "Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.", - "name": "Har du sett noe som bør fikses?" - }, - { - "description": "Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.", - "name": "Vil du bidra eller si din mening?" - }, - { - "description": "Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.", - "name": "Vil du hjelpe eller få hjelp av naboer?" - } - ], - "page": "/", - "question": "Hva vil du gjøre?" - }, - { - "alternative": "Gi en hånd på neste arrangement eller dugnad", - "expect": [ - "Gi en hånd på neste arrangement eller dugnad" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Telefon", - "name": "telefon", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "Hva kan du tenke deg å hjelpe til med?", - "name": "hva", - "optional": false, - "options": [ - "17. mai", - "Juletregranstenning", - "Skøytedag", - "Dugnad på elvestien", - "Det som trengs" - ], - "type": "select" - } - ], - "options": [ - { - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet, så tar vi det med i velets svar.", - "name": "Få din mening med i velets høringssvar" - }, - { - "description": "Sett av litt tid på et arrangement eller en dugnad. Vi finner noe som passer deg.", - "name": "Gi en hånd på neste arrangement eller dugnad" - }, - { - "description": "Vi er sju komiteer som trenger folk. Si hvilken som passer deg, så tar vi kontakt.", - "name": "Få en plass i komiteen som passer deg" - } - ], - "page": "/bidra", - "question": "Hva har du lyst til å bidra med?" - } - ], - "success": [ - "satt_opp" - ], - "wants": "å bli satt opp på noe som passer dem", - "who": "en som vil hjelpe til på et arrangement eller en dugnad" - }, - { - "done_when": [ - "plassert", - "avslatt" - ], - "enters_as": null, - "handled_by": "styret", - "id": "komite", - "lands_in": "komitesoknader", - "steps": [ - { - "alternative": "Vil du bidra eller si din mening?", - "expect": [ - "Vil du bidra eller si din mening?" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.", - "name": "Vil du bli medlem eller endre medlemskapet?" - }, - { - "description": "Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.", - "name": "Har du sett noe som bør fikses?" - }, - { - "description": "Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.", - "name": "Vil du bidra eller si din mening?" - }, - { - "description": "Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.", - "name": "Vil du hjelpe eller få hjelp av naboer?" - } - ], - "page": "/", - "question": "Hva vil du gjøre?" - }, - { - "alternative": "Få en plass i komiteen som passer deg", - "expect": [ - "Få en plass i komiteen som passer deg" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "E-post", - "name": "epost", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Hvilken komité har du lyst til å bli med i?", - "name": "komite", - "optional": false, - "options": [ - "Arrangementer", - "Elvesti", - "Høringsinstans", - "Leke- og møteplasser", - "Miljøgate", - "Pendlerforhold", - "Trafikkforhold" - ], - "type": "select" - } - ], - "options": [ - { - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet, så tar vi det med i velets svar.", - "name": "Få din mening med i velets høringssvar" - }, - { - "description": "Sett av litt tid på et arrangement eller en dugnad. Vi finner noe som passer deg.", - "name": "Gi en hånd på neste arrangement eller dugnad" - }, - { - "description": "Vi er sju komiteer som trenger folk. Si hvilken som passer deg, så tar vi kontakt.", - "name": "Få en plass i komiteen som passer deg" - } - ], - "page": "/bidra", - "question": "Hva har du lyst til å bidra med?" - } - ], - "success": [ - "plassert" - ], - "wants": "en plass i den komiteen som driver med det de bryr seg om", - "who": "en som vil sitte i en komité" - }, - { - "done_when": [ - "ordnet", - "ikke_lost" - ], - "enters_as": null, - "handled_by": "nabohjelp", - "id": "trenger-hjelp", - "lands_in": "hjelpebehov", - "steps": [ - { - "alternative": "Vil du hjelpe eller få hjelp av naboer?", - "expect": [ - "Vil du hjelpe eller få hjelp av naboer?" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.", - "name": "Vil du bli medlem eller endre medlemskapet?" - }, - { - "description": "Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.", - "name": "Har du sett noe som bør fikses?" - }, - { - "description": "Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.", - "name": "Vil du bidra eller si din mening?" - }, - { - "description": "Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.", - "name": "Vil du hjelpe eller få hjelp av naboer?" - } - ], - "page": "/", - "question": "Hva vil du gjøre?" - }, - { - "alternative": "Få en nabo til å stille opp", - "expect": [ - "Få en nabo til å stille opp" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "E-post", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Adresse", - "name": "adresse", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hva trenger du hjelp med?", - "name": "hva", - "optional": false, - "options": [], - "type": "textarea" - }, - { - "label": "Telefon", - "name": "telefon", - "optional": true, - "options": [], - "type": "tel" - } - ], - "options": [ - { - "description": "Trenger du en hånd med snømåking, handling eller skyss? Fortell hva du trenger, så finner vi en nabo.", - "name": "Få en nabo til å stille opp" - }, - { - "description": "Si fra om hva du kan bidra med, så tar nabohjelpa kontakt når det trengs.", - "name": "Bli en nabo andre kan spørre" - }, - { - "description": "Legg ut det du har til overs, eller si fra om noe du gjerne vil låne av naboene.", - "name": "Del utstyr med naboene" - } - ], - "page": "/naboer", - "question": "Trenger du en nabo, eller vil du være en?" - } - ], - "success": [ - "ordnet" - ], - "wants": "at en nabo stiller opp", - "who": "en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss" - }, - { - "done_when": [ - "registrert", - "trukket" - ], - "enters_as": null, - "handled_by": "nabohjelp", - "id": "kan-hjelpe", - "lands_in": "hjelpere", - "steps": [ - { - "alternative": "Vil du hjelpe eller få hjelp av naboer?", - "expect": [ - "Vil du hjelpe eller få hjelp av naboer?" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.", - "name": "Vil du bli medlem eller endre medlemskapet?" - }, - { - "description": "Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.", - "name": "Har du sett noe som bør fikses?" - }, - { - "description": "Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.", - "name": "Vil du bidra eller si din mening?" - }, - { - "description": "Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.", - "name": "Vil du hjelpe eller få hjelp av naboer?" - } - ], - "page": "/", - "question": "Hva vil du gjøre?" - }, - { - "alternative": "Bli en nabo andre kan spørre", - "expect": [ - "Bli en nabo andre kan spørre" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "E-post", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Telefon", - "name": "telefon", - "optional": false, - "options": [], - "type": "tel" - }, - { - "label": "Hva kan du hjelpe med?", - "name": "kan", - "optional": false, - "options": [ - "Snømåking", - "Handling", - "Kjøring", - "Småfiks i huset", - "En prat og litt selskap", - "Det som trengs" - ], - "type": "select" - } - ], - "options": [ - { - "description": "Trenger du en hånd med snømåking, handling eller skyss? Fortell hva du trenger, så finner vi en nabo.", - "name": "Få en nabo til å stille opp" - }, - { - "description": "Si fra om hva du kan bidra med, så tar nabohjelpa kontakt når det trengs.", - "name": "Bli en nabo andre kan spørre" - }, - { - "description": "Legg ut det du har til overs, eller si fra om noe du gjerne vil låne av naboene.", - "name": "Del utstyr med naboene" - } - ], - "page": "/naboer", - "question": "Trenger du en nabo, eller vil du være en?" - } - ], - "success": [ - "registrert" - ], - "wants": "å bli spurt når det passer", - "who": "en nabo som kan stille opp når noen trenger det" - }, - { - "done_when": [ - "lagt_ut", - "tatt_ned" - ], - "enters_as": null, - "handled_by": "styret", - "id": "dele-utstyr", - "lands_in": "oppslag", - "steps": [ - { - "alternative": "Vil du hjelpe eller få hjelp av naboer?", - "expect": [ - "Vil du hjelpe eller få hjelp av naboer?" - ], - "fields": [], - "options": [ - { - "description": "Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.", - "name": "Vil du bli medlem eller endre medlemskapet?" - }, - { - "description": "Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.", - "name": "Har du sett noe som bør fikses?" - }, - { - "description": "Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.", - "name": "Vil du bidra eller si din mening?" - }, - { - "description": "Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer.", - "name": "Vil du hjelpe eller få hjelp av naboer?" - } - ], - "page": "/", - "question": "Hva vil du gjøre?" - }, - { - "alternative": "Del utstyr med naboene", - "expect": [ - "Del utstyr med naboene" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "E-post", - "name": "email", - "optional": false, - "options": [], - "type": "email" - }, - { - "label": "Har du, eller trenger du?", - "name": "har_eller_trenger", - "optional": false, - "options": [ - "Jeg har noe å låne ut", - "Jeg trenger å låne noe" - ], - "type": "select" - }, - { - "label": "Hva gjelder det?", - "name": "hva", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Trenger du en hånd med snømåking, handling eller skyss? Fortell hva du trenger, så finner vi en nabo.", - "name": "Få en nabo til å stille opp" - }, - { - "description": "Si fra om hva du kan bidra med, så tar nabohjelpa kontakt når det trengs.", - "name": "Bli en nabo andre kan spørre" - }, - { - "description": "Legg ut det du har til overs, eller si fra om noe du gjerne vil låne av naboene.", - "name": "Del utstyr med naboene" - } - ], - "page": "/naboer", - "question": "Trenger du en nabo, eller vil du være en?" - } - ], - "success": [ - "lagt_ut" - ], - "wants": "et oppslag som naboene ser", - "who": "en nabo som har noe å låne ut, eller trenger å låne noe" - }, - { - "done_when": [ - "utbetalt", - "avvist" - ], - "enters_as": "komiteer", - "handled_by": "kasserer", - "id": "utlegg", - "lands_in": "utlegg", - "steps": [ - { - "alternative": "Få tilbake det du har lagt ut for", - "expect": [ - "Få tilbake det du har lagt ut for" - ], - "fields": [ - { - "label": "Navn", - "name": "navn", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Beløp", - "name": "belop", - "optional": false, - "options": [], - "type": "text" - }, - { - "label": "Hva gjaldt det", - "name": "hva", - "optional": false, - "options": [], - "type": "textarea" - } - ], - "options": [ - { - "description": "Har du lagt ut for noe til komiteen, kan du melde det inn her, så ordner kasserer utbetaling.", - "name": "Få tilbake det du har lagt ut for" - } - ], - "page": "/komiteer/utlegg", - "question": "Har du lagt ut for noe komiteen skal betale?" - } - ], - "success": [ - "utbetalt" - ], - "wants": "pengene tilbake", - "who": "en i en komité som har lagt ut for noe" - } - ], - "personas": [ - { - "id": "nyinnflyttet", - "need": "bli-medlem", - "text": "Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?" - }, - { - "id": "glemte-a-betale", - "need": "bli-medlem", - "text": "Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?" - }, - { - "id": "ny-epost", - "need": "endre-medlemskap", - "text": "Vi har byttet e-postadresse og får ikke lenger noe fra dere." - }, - { - "id": "flytter", - "need": "endre-medlemskap", - "text": "Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista." - }, - { - "id": "skolevei", - "need": "trafikkfare", - "text": "Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går." - }, - { - "id": "busslomme", - "need": "trafikkfare", - "text": "Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy." - }, - { - "id": "huske", - "need": "anleggsfeil", - "text": "Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt." - }, - { - "id": "bru", - "need": "anleggsfeil", - "text": "Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom." - }, - { - "id": "blokker", - "need": "horingsinnspill", - "text": "Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?" - }, - { - "id": "togtider", - "need": "horingsinnspill", - "text": "Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det." - }, - { - "id": "vafler", - "need": "hjelpe-til", - "text": "Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk." - }, - { - "id": "motorsag", - "need": "hjelpe-til", - "text": "Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad." - }, - { - "id": "pendler", - "need": "komite", - "text": "Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det." - }, - { - "id": "planlegger", - "need": "komite", - "text": "Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring." - }, - { - "id": "tilhenger", - "need": "dele-utstyr", - "text": "Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp." - }, - { - "id": "stige", - "need": "dele-utstyr", - "text": "Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?" - }, - { - "id": "snomaking", - "need": "trenger-hjelp", - "text": "Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?" - }, - { - "id": "nyoperert", - "need": "trenger-hjelp", - "text": "Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?" - }, - { - "id": "hjemmekontor", - "need": "kan-hjelpe", - "text": "Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv." - }, - { - "id": "pensjonert-elektriker", - "need": "kan-hjelpe", - "text": "Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting." - }, - { - "id": "kvittering", - "need": "utlegg", - "text": "Jeg kjøpte pølser og kakao til skøytedagen for 1 840 kroner, her er kvitteringa, vil ha det igjen." - } - ] -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/needs.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/needs.yaml deleted file mode 100644 index 4896e29..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/needs.yaml +++ /dev/null @@ -1,265 +0,0 @@ -needs: -- done_when: - - betalt - - utmeldt - enters: / - handled_by: kasserer - id: bli-medlem - lands_in: husstander - max_fields: 3 - max_steps: 2 - stages: - - open - - betalt - - utmeldt - success: - - betalt - via: Vil du bli medlem eller endre medlemskapet? - wants: å bli medlem og få betalt kontingenten - who: en husstand i Tomter -- done_when: - - oppdatert - enters: / - handled_by: kasserer - id: endre-medlemskap - lands_in: medlemsendringer - max_fields: 3 - max_steps: 2 - stages: - - open - - oppdatert - success: - - oppdatert - via: Vil du bli medlem eller endre medlemskapet? - wants: at velet har riktige opplysninger om dem - who: et medlem som har flyttet, byttet e-post eller vil melde seg ut -- done_when: - - ordnet - - avvist - enters: / - handled_by: trafikkomite - id: trafikkfare - lands_in: trafikkmeldinger - max_fields: 2 - max_steps: 2 - stages: - - open - - tatt_opp - - ordnet - - avvist - success: - - ordnet - via: Har du sett noe som bør fikses? - wants: at velet tar det opp med kommunen eller den som eier veien - who: en som har sett et farlig sted i trafikken -- done_when: - - utbedret - enters: / - handled_by: lekeplasskomite - id: anleggsfeil - lands_in: anleggsfeil - max_fields: 2 - max_steps: 2 - stages: - - open - - tatt_tak_i - - utbedret - success: - - utbedret - via: Har du sett noe som bør fikses? - wants: at det blir fikset før noen skader seg - who: en som ser at noe på lekeplassen eller stien er ødelagt -- done_when: - - tatt_med - - ikke_tatt_med - enters: / - handled_by: styret - id: horingsinnspill - lands_in: innspill - max_fields: 3 - max_steps: 2 - stages: - - open - - tatt_med - - ikke_tatt_med - success: - - tatt_med - via: Vil du bidra eller si din mening? - wants: at velet tar det med i sitt svar - who: en beboer som har en mening om en sak kommunen har på høring -- done_when: - - satt_opp - - takket_nei - enters: / - handled_by: arrangementskomite - id: hjelpe-til - lands_in: frivillige - max_fields: 3 - max_steps: 2 - stages: - - open - - kontaktet - - satt_opp - - takket_nei - success: - - satt_opp - via: Vil du bidra eller si din mening? - wants: å bli satt opp på noe som passer dem - who: en som vil hjelpe til på et arrangement eller en dugnad -- done_when: - - plassert - - avslatt - enters: / - handled_by: styret - id: komite - lands_in: komitesoknader - max_fields: 3 - max_steps: 2 - stages: - - open - - plassert - - avslatt - success: - - plassert - via: Vil du bidra eller si din mening? - wants: en plass i den komiteen som driver med det de bryr seg om - who: en som vil sitte i en komité -- done_when: - - ordnet - - ikke_lost - enters: / - handled_by: nabohjelp - id: trenger-hjelp - lands_in: hjelpebehov - max_fields: 4 - max_steps: 2 - stages: - - open - - formidlet - - ordnet - - ikke_lost - success: - - ordnet - via: Vil du hjelpe eller få hjelp av naboer? - wants: at en nabo stiller opp - who: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss -- done_when: - - registrert - - trukket - enters: / - handled_by: nabohjelp - id: kan-hjelpe - lands_in: hjelpere - max_fields: 4 - max_steps: 2 - stages: - - open - - registrert - - trukket - success: - - registrert - via: Vil du hjelpe eller få hjelp av naboer? - wants: å bli spurt når det passer - who: en nabo som kan stille opp når noen trenger det -- done_when: - - lagt_ut - - tatt_ned - enters: / - handled_by: styret - id: dele-utstyr - lands_in: oppslag - max_fields: 4 - max_steps: 2 - stages: - - open - - lagt_ut - - tatt_ned - success: - - lagt_ut - via: Vil du hjelpe eller få hjelp av naboer? - wants: et oppslag som naboene ser - who: en nabo som har noe å låne ut, eller trenger å låne noe -- done_when: - - utbetalt - - avvist - enters: /komiteer/utlegg - enters_as: komiteer - handled_by: kasserer - id: utlegg - lands_in: utlegg - max_fields: 3 - max_steps: 1 - stages: - - open - - godkjent - - utbetalt - - avvist - success: - - utbetalt - via: Få tilbake det du har lagt ut for - wants: pengene tilbake - who: en i en komité som har lagt ut for noe -personas: -- id: nyinnflyttet - need: bli-medlem - text: Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det? -- id: glemte-a-betale - need: bli-medlem - text: Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem? -- id: ny-epost - need: endre-medlemskap - text: Vi har byttet e-postadresse og får ikke lenger noe fra dere. -- id: flytter - need: endre-medlemskap - text: Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista. -- id: skolevei - need: trafikkfare - text: Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går. -- id: busslomme - need: trafikkfare - text: Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy. -- id: huske - need: anleggsfeil - text: Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt. -- id: bru - need: anleggsfeil - text: Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom. -- id: blokker - need: horingsinnspill - text: Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra? -- id: togtider - need: horingsinnspill - text: Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det. -- id: vafler - need: hjelpe-til - text: Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk. -- id: motorsag - need: hjelpe-til - text: Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad. -- id: pendler - need: komite - text: Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det. -- id: planlegger - need: komite - text: Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring. -- id: tilhenger - need: dele-utstyr - text: Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp. -- id: stige - need: dele-utstyr - text: Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har? -- id: snomaking - need: trenger-hjelp - text: Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør? -- id: nyoperert - need: trenger-hjelp - text: Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg? -- id: hjemmekontor - need: kan-hjelpe - text: Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv. -- id: pensjonert-elektriker - need: kan-hjelpe - text: Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting. -- id: kvittering - need: utlegg - text: Jeg kjøpte pølser og kakao til skøytedagen for 1 840 kroner, her er kvitteringa, vil ha det igjen. diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/arrangementskomite/_section.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/arrangementskomite/_section.yaml deleted file mode 100644 index 7c3b4ae..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/arrangementskomite/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: arrangementskomite diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/arrangementskomite/index.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/arrangementskomite/index.yaml deleted file mode 100644 index 28ee618..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/arrangementskomite/index.yaml +++ /dev/null @@ -1,32 +0,0 @@ -alternatives: -- action: /arrangementskomite - consequence: - - Lagre - description: Her ser du hvem som har sagt de vil hjelpe til, og hva de er satt opp på. - features: - - description: '' - name: '' - resource: - requires_group: arrangementskomite - source: - bucket: frivillige - kind: kv - transitions: - - from: kontaktet - label: Sett på oppgave - to: satt_opp - - from: kontaktet - label: Takket nei - to: takket_nei - - from: open - label: Har tatt kontakt - to: kontaktet - - from: open - label: Takket nei - to: takket_nei - name: Frivillige til arrangementer og dugnad -description: Oversikt over frivillige som vil hjelpe til, så du kan sette dem opp på noe som passer. -name: Hvem kan hjelpe til, og hva skal de gjøre? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/bidra/index.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/bidra/index.yaml deleted file mode 100644 index 0f20574..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/bidra/index.yaml +++ /dev/null @@ -1,74 +0,0 @@ -alternatives: -- action: /received/horingsinnspill - consequence: - - Send innspill - description: Har kommunen en sak på høring du mener noe om? Send oss innspillet, så tar vi det med i velets svar. - features: - - name: Send et høringsinnspill - requirements: - - label: Navn - name: navn - type: text - - label: Hvilken sak gjelder det? - name: sak - type: text - - label: Hva mener du? - name: innspill - type: textarea - name: Få din mening med i velets høringssvar - record_as: innspill -- action: /received/hjelpe-til - consequence: - - Meld meg på - description: Sett av litt tid på et arrangement eller en dugnad. Vi finner noe som passer deg. - features: - - name: Bli med å hjelpe - requirements: - - label: Navn - name: navn - type: text - - label: Telefon - name: telefon - type: tel - - label: Hva kan du tenke deg å hjelpe til med? - name: hva - options: - - 17. mai - - Juletregranstenning - - Skøytedag - - Dugnad på elvestien - - Det som trengs - type: select - name: Gi en hånd på neste arrangement eller dugnad - record_as: frivillige -- action: /received/komite - consequence: - - Meld interesse - description: Vi er sju komiteer som trenger folk. Si hvilken som passer deg, så tar vi kontakt. - features: - - name: Bli med i en komité - requirements: - - label: Navn - name: navn - type: text - - label: E-post - name: epost - type: email - - label: Hvilken komité har du lyst til å bli med i? - name: komite - options: - - Arrangementer - - Elvesti - - Høringsinstans - - Leke- og møteplasser - - Miljøgate - - Pendlerforhold - - Trafikkforhold - type: select - name: Få en plass i komiteen som passer deg - record_as: komitesoknader -description: Vil du bidra med noe for Tomter? Her finner du veien inn, enten det er en dugnadsøkt, en mening om en høringssak eller en plass i en komité. -name: Hva har du lyst til å bidra med? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/decide/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/decide/dele-utstyr.yaml deleted file mode 100644 index 5e174d1..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/decide/dele-utstyr.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Oppslaget forsvinner fra siden. Bruk denne når det er lånt bort eller du ikke vil låne det ut lenger. - name: Ta ned oppslaget ditt - self_transition: - bucket: oppslag - label: Ta ned oppslaget - to: tatt_ned -description: Her styrer du oppslaget om det du har lånt ut. -name: Vil du ta ned oppslaget? diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/decide/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/decide/kan-hjelpe.yaml deleted file mode 100644 index 3139f3e..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/decide/kan-hjelpe.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Da fjerner vi deg fra lista over naboer nabohjelpa kan spørre. - name: Slutt å bli spurt - self_transition: - bucket: hjelpere - label: Trekk meg - to: trukket -description: Her ser du hvem som har fått beskjed om at du kan hjelpe, og kan trekke deg om det ikke passer lenger. -name: Vil du fortsatt stå på lista over naboer som kan hjelpe? diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/decide/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/decide/trenger-hjelp.yaml deleted file mode 100644 index ad92cf3..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/decide/trenger-hjelp.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Du fikk hjelpen du trengte. Vi merker saken som løst og gir beskjed til den som hjalp til. - name: Meld at hjelpen kom fram - self_transition: - bucket: hjelpebehov - label: Ja, det ordnet seg - to: ordnet -description: Her sier du fra om hva som skjedde med hjelpen naboen tilbød. -name: Ordnet det seg? diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/index.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/index.yaml deleted file mode 100644 index b52b2b0..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/index.yaml +++ /dev/null @@ -1,26 +0,0 @@ -alternatives: -- action: /medlem - consequence: - - Bli medlem - description: Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem. - name: Vil du bli medlem eller endre medlemskapet? -- action: /melde-fra - consequence: - - Meld fra - description: Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her. - name: Har du sett noe som bør fikses? -- action: /bidra - consequence: - - Bidra - description: Si din mening om en høringssak, eller meld deg til en dugnad eller en komité. - name: Vil du bidra eller si din mening? -- action: /naboer - consequence: - - Naboer - description: Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer. - name: Vil du hjelpe eller få hjelp av naboer? -description: Hva vil du hjelpe oss med i dag? -name: Hva vil du gjøre? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/kasserer/_section.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/kasserer/_section.yaml deleted file mode 100644 index 2f8af2f..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/kasserer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: kasserer diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/kasserer/index.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/kasserer/index.yaml deleted file mode 100644 index 4974664..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/kasserer/index.yaml +++ /dev/null @@ -1,69 +0,0 @@ -alternatives: -- action: /kasserer - consequence: - - Utført - description: Husstander som har meldt seg inn eller vil ut av velet. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: husstander - kind: kv - transitions: - - from: open - label: Kontingent betalt - to: betalt - - from: open - label: Meld ut - to: utmeldt - name: Husstander som venter på deg -- action: /kasserer - consequence: - - Utført - description: Medlemmer som har flyttet, byttet e-post eller vil melde seg ut. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: medlemsendringer - kind: kv - transitions: - - from: open - label: Opplysninger oppdatert - to: oppdatert - name: Opplysninger som skal endres -- action: /kasserer - consequence: - - Utført - description: Utlegg fra komiteene som venter på godkjenning eller utbetaling. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: utlegg - kind: kv - transitions: - - from: godkjent - label: Merk som utbetalt - to: utbetalt - - from: godkjent - label: Avvis likevel - to: avvist - - from: open - label: Godkjenn utlegg - to: godkjent - - from: open - label: Avvis utlegg - to: avvist - name: Utlegg som venter på deg -description: Her har du oversikt over medlemskap og utlegg som venter på deg som kasserer. -name: Hva må jeg som kasserer ta tak i nå? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/komiteer/_section.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/komiteer/_section.yaml deleted file mode 100644 index 57e3295..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/komiteer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: komiteer diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/komiteer/index.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/komiteer/index.yaml deleted file mode 100644 index 141de05..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/komiteer/index.yaml +++ /dev/null @@ -1,11 +0,0 @@ -alternatives: -- action: /komiteer/utlegg - consequence: - - Legg inn utlegg - description: Har du lagt ut for noe til komiteen? Registrer det her, så tar kasserer seg av resten. - name: Få igjen penger du har lagt ut -description: Her ser du sakene komiteen din har fått inn, og kan flytte dem videre etter hvert som dere følger dem opp. -name: Hva står på til komiteen min nå? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/komiteer/utlegg-sent.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/komiteer/utlegg-sent.yaml deleted file mode 100644 index f0a05f1..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/komiteer/utlegg-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer ser gjennom utlegget og godkjenner det, så blir pengene satt inn på kontoen du har oppgitt. - name: Pengene dine tilbake -- action: /komiteer - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Utlegget ditt er sendt til kasserer. -name: Hva skjer nå med utlegget mitt? diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/komiteer/utlegg.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/komiteer/utlegg.yaml deleted file mode 100644 index 1a2f434..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/komiteer/utlegg.yaml +++ /dev/null @@ -1,25 +0,0 @@ -alternatives: -- action: /komiteer/utlegg-sent - consequence: - - Send krav - description: Har du lagt ut for noe til komiteen, kan du melde det inn her, så ordner kasserer utbetaling. - features: - - name: Krav om utlegg - requirements: - - label: Navn - name: navn - type: text - - label: Beløp - name: belop - type: text - - label: Hva gjaldt det - name: hva - type: textarea - name: Få tilbake det du har lagt ut for - record_as: utlegg -description: For deg som har betalt noe for komiteen din og skal ha pengene tilbake. -followup: false -name: Har du lagt ut for noe komiteen skal betale? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/lekeplasskomite/_section.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/lekeplasskomite/_section.yaml deleted file mode 100644 index ca64c92..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/lekeplasskomite/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: lekeplasskomite diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/lekeplasskomite/index.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/lekeplasskomite/index.yaml deleted file mode 100644 index ada5fbc..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/lekeplasskomite/index.yaml +++ /dev/null @@ -1,26 +0,0 @@ -alternatives: -- action: /lekeplasskomite - consequence: - - Lagre - description: Meldinger om noe som er ødelagt på lekeplassen eller stien, og som må fikses før noen skader seg. - features: - - description: '' - name: '' - resource: - requires_group: lekeplasskomite - source: - bucket: anleggsfeil - kind: kv - transitions: - - from: open - label: Ta tak i dette - to: tatt_tak_i - - from: tatt_tak_i - label: Meld som utbedret - to: utbedret - name: Skader meldt inn av naboer -description: Her har lekeplasskomiteen oversikt over meldte feil på lekeplassene og stien, og kan følge dem opp fram til de er utbedret. -name: Hva må lekeplasskomiteen følge opp nå? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/medlem/index.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/medlem/index.yaml deleted file mode 100644 index be062eb..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/medlem/index.yaml +++ /dev/null @@ -1,46 +0,0 @@ -alternatives: -- action: /received/bli-medlem - consequence: - - Bli medlem - description: Meld deg inn og betal kontingenten, så er du med. - features: - - name: Bli medlem - requirements: - - label: Navn - name: navn - type: text - - label: Adresse - name: adresse - type: text - - label: E-post - name: epost - type: email - - label: Telefon - name: telefon - optional: true - type: tel - name: Meld deg inn i Tomter Vel - record_as: husstander -- action: /received/endre-medlemskap - consequence: - - Meld endring - description: Har du flyttet, byttet e-post eller vil melde deg ut? Si fra her. - features: - - name: Endre medlemskap - requirements: - - label: Navn - name: navn - type: text - - label: Adresse - name: adresse - type: text - - label: Hva vil du endre? - name: hva_er_nytt - type: textarea - name: Oppdater opplysningene dine - record_as: medlemsendringer -description: Bli medlem av Tomter Vel, eller oppdater opplysningene dine hvis noe har endret seg. -name: Vil du bli medlem, eller endre medlemskapet ditt? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/melde-fra/index.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/melde-fra/index.yaml deleted file mode 100644 index 12fa1d1..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/melde-fra/index.yaml +++ /dev/null @@ -1,45 +0,0 @@ -alternatives: -- action: /received/trafikkfare - consequence: - - Meld fra - description: Sett du et farlig sted i trafikken? Meld fra, så tar vi det opp med kommunen eller veieier. - features: - - name: Meld trafikkfare - requirements: - - label: Hvor er det? - name: hvor - type: text - - label: Hva er farlig? - name: hva - type: textarea - - label: E-post - name: epost - optional: true - type: email - name: Få gjort noe med en farlig vei - record_as: trafikkmeldinger -- action: /received/anleggsfeil - consequence: - - Meld fra - description: Er noe på lekeplassen eller stien ødelagt? Si ifra, så tar vi tak i det før noen skader seg. - features: - - name: Meld skade - requirements: - - label: Hvor er det? - name: hvor - options: - - Lekeplassen - - Elvestien - - Skøytebanen - - Et annet sted - type: select - - label: Hva er ødelagt? - name: hva - type: textarea - name: Få fikset det som er ødelagt - record_as: anleggsfeil -description: Sett du noe i nabolaget som ikke er som det skal? Fortell oss om det, så følger vi det opp. -name: Hva har du sett? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/naboer/index.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/naboer/index.yaml deleted file mode 100644 index f82456a..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/naboer/index.yaml +++ /dev/null @@ -1,83 +0,0 @@ -alternatives: -- action: /received/trenger-hjelp - consequence: - - Be om hjelp - description: Trenger du en hånd med snømåking, handling eller skyss? Fortell hva du trenger, så finner vi en nabo. - features: - - name: Be om en hånd - requirements: - - label: Navn - name: navn - type: text - - label: E-post - name: email - type: email - - label: Adresse - name: adresse - type: text - - label: Hva trenger du hjelp med? - name: hva - type: textarea - - label: Telefon - name: telefon - optional: true - type: tel - name: Få en nabo til å stille opp - record_as: hjelpebehov -- action: /received/kan-hjelpe - consequence: - - Meld deg - description: Si fra om hva du kan bidra med, så tar nabohjelpa kontakt når det trengs. - features: - - name: Meld deg som hjelper - requirements: - - label: Navn - name: navn - type: text - - label: E-post - name: email - type: email - - label: Telefon - name: telefon - type: tel - - label: Hva kan du hjelpe med? - name: kan - options: - - Snømåking - - Handling - - Kjøring - - Småfiks i huset - - En prat og litt selskap - - Det som trengs - type: select - name: Bli en nabo andre kan spørre - record_as: hjelpere -- action: /received/dele-utstyr - consequence: - - Lag oppslag - description: Legg ut det du har til overs, eller si fra om noe du gjerne vil låne av naboene. - features: - - name: Lån eller lån ut - requirements: - - label: Navn - name: navn - type: text - - label: E-post - name: email - type: email - - label: Har du, eller trenger du? - name: har_eller_trenger - options: - - Jeg har noe å låne ut - - Jeg trenger å låne noe - type: select - - label: Hva gjelder det? - name: hva - type: textarea - name: Del utstyr med naboene - record_as: oppslag -description: Nabolag er godt naboskap. Trenger du en hånd, kan du stille opp, eller har du noe andre kan låne? -name: Trenger du en nabo, eller vil du være en? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/nabohjelp/_section.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/nabohjelp/_section.yaml deleted file mode 100644 index 5b3a2ad..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/nabohjelp/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: nabohjelp diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/nabohjelp/index.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/nabohjelp/index.yaml deleted file mode 100644 index 1355cb3..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/nabohjelp/index.yaml +++ /dev/null @@ -1,52 +0,0 @@ -alternatives: -- action: /nabohjelp - consequence: - - Lagre - description: Naboer som trenger en hånd med noe akkurat nå, som snømåking, handling eller skyss. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: hjelpebehov - kind: kv - transitions: - - from: formidlet - label: Hjelpen er gitt - to: ordnet - - from: formidlet - label: Fikk ingen til å hjelpe - to: ikke_lost - - from: open - label: Satt nabo på saken - to: formidlet - - from: open - label: Fant ingen som kan - to: ikke_lost - name: Naboer som trenger en hånd -- action: /nabohjelp - consequence: - - Lagre - description: Naboer som har sagt de stiller opp når noen trenger en hånd. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: hjelpere - kind: kv - transitions: - - from: open - label: Tatt imot - to: registrert - - from: open - label: Trukket seg - to: trukket - name: Naboer som kan stille opp -description: Her ser du hvem som trenger hjelp og hvem som kan hjelpe, så du kan sette dem sammen. -name: Hvem trenger hjelp, og hvem kan gi den? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/anleggsfeil.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/anleggsfeil.yaml deleted file mode 100644 index e3aeb75..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/anleggsfeil.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Lekeplasskomiteen ser på det og fikser det som må fikses, eller sperrer av stedet til det er gjort. - name: Lekeplasskomiteen tar det videre -- action: / - consequence: - - Tilbake - description: '' - name: Tilbake -description: Meldingen din om feilen er sendt til lekeplasskomiteen. -name: Hva skjer med meldingen min nå? diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/bli-medlem.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/bli-medlem.yaml deleted file mode 100644 index 255e540..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/bli-medlem.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Så snart kontingenten er betalt, er du registrert som medlem hos oss. - name: Du hører fra kasserer om kontingenten -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Vi har mottatt innmeldingen din i Tomter Vel. Kasserer går gjennom den og sender deg informasjon om kontingenten. -name: Hva skjer nå som jeg har meldt meg inn? diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/dele-utstyr.yaml deleted file mode 100644 index 3834706..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/dele-utstyr.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Styret legger oppslaget ut, og tar kontakt med deg hvis noe er uklart. - name: Oppslaget kommer opp snart -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Takk for at du melder inn utstyr til deling. Styret legger det ut så naboene kan se det. -name: Hva skjer med det jeg har meldt inn? diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/endre-medlemskap.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/endre-medlemskap.yaml deleted file mode 100644 index bbb9afa..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/endre-medlemskap.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer går gjennom endringen og retter opp i registeret så snart de får tid. - name: Riktige opplysninger i registeret -- action: / - consequence: - - Tilbake - description: '' - name: Tilbake -description: Kasserer oppdaterer opplysningene deres i medlemsregisteret. -name: Er opplysningene mine oppdatert nå? diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/hjelpe-til.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/hjelpe-til.yaml deleted file mode 100644 index db5ab67..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/hjelpe-til.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Noen fra arrangementskomiteen tar kontakt med deg for å avtale hva du kan bidra med. - name: Arrangementskomiteen kontakter deg -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du vil hjelpe til! Arrangementskomiteen har fått beskjed og tar kontakt med deg. -name: Hva skjer nå som jeg har meldt meg? diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/horingsinnspill.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/horingsinnspill.yaml deleted file mode 100644 index 1ff609f..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/horingsinnspill.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Styret går gjennom innspillene før høringsfristen og samler dem i velets svar til kommunen. - name: Innspillet ditt blir med i høringssvaret -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for innspillet ditt. Vi har mottatt det og tar det med når styret skal svare på høringen. -name: Hva skjer med innspillet mitt nå? diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/kan-hjelpe.yaml deleted file mode 100644 index 0a70bf6..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/kan-hjelpe.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Nabohjelp legger deg inn på listen over naboer som kan stille opp. Du blir kontaktet når det er noen som trenger akkurat det du tilbyr. - name: Du er registrert som hjelper -- action: / - consequence: - - Tilbake - description: '' - name: Tilbake -description: Takk for at du sier fra at du kan hjelpe. Meldingen går til nabohjelp. -name: Hva skjer nå med det jeg har sendt inn? diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/komite.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/komite.yaml deleted file mode 100644 index 65a60fd..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/komite.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Styret finner ut hvilken komité som passer, og hører med deg før du settes opp. - name: Du hører fra styret -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du vil bidra i en komité. Styret ser gjennom henvendelser om komitéarbeid og tar kontakt med deg. -name: Hva skjer nå med ønsket mitt om å sitte i en komité? diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/trafikkfare.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/trafikkfare.yaml deleted file mode 100644 index c6152b5..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/trafikkfare.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Meldingen går til trafikkomiteen. De vurderer saken og tar den opp med kommunen eller veieier om det trengs. - name: Trafikkomiteen ser på saken -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du meldte fra om en trafikkfare. Trafikkomiteen leser meldingen og tar den videre. -name: Hva skjer med meldingen min nå? diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/trenger-hjelp.yaml deleted file mode 100644 index d1f2c8a..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/received/trenger-hjelp.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Så snart en nabo kan stille opp, tar de kontakt med deg. - name: En nabo tar kontakt -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Vi har fått beskjeden om at du trenger en hånd, og nabohjelp-komiteen ser på den. -name: Hva skjer nå? diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/styret/_section.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/styret/_section.yaml deleted file mode 100644 index 5a34160..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/styret/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: styret diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/styret/index.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/styret/index.yaml deleted file mode 100644 index 8973caf..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/styret/index.yaml +++ /dev/null @@ -1,80 +0,0 @@ -alternatives: -- action: /styret - consequence: - - Lagre - description: Her ser dere innspill fra beboere til saker kommunen har på høring, klare til å tas med i velets svar. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: innspill - kind: kv - transitions: - - from: open - label: Ta med i svaret - to: tatt_med - - from: open - label: Ikke ta med - to: ikke_tatt_med - name: Innspill til høringssvar -- action: /styret - consequence: - - Lagre - description: Her ser dere hvem som har meldt seg til en komité og venter på plass. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: komitesoknader - kind: kv - transitions: - - from: open - label: Gi plass i komité - to: plassert - - from: open - label: Avslå søknaden - to: avslatt - name: Søknader til komiteene -- action: /styret - consequence: - - Lagre - description: Her ser dere oppslag naboer vil dele om ting de låner ut eller trenger å låne. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: oppslag - kind: kv - transitions: - - from: open - label: Legg ut oppslaget - to: lagt_ut - - from: open - label: Ta ned oppslaget - to: tatt_ned - name: Oppslag om utstyr -- action: /styret - consequence: - - Lagre - description: Her ser dere farlige steder i trafikken som beboere har meldt inn. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: trafikkmeldinger - kind: kv - transitions: [] - name: Meldte trafikkfarer -description: Herfra følger styret opp høringsinnspill, komitésøknader, oppslag og trafikkmeldinger fra beboerne. -name: Hva venter på styret akkurat nå? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/trafikkomite/_section.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/trafikkomite/_section.yaml deleted file mode 100644 index bf946ea..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/trafikkomite/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: trafikkomite diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/trafikkomite/index.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/trafikkomite/index.yaml deleted file mode 100644 index 3dce273..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/questions/trafikkomite/index.yaml +++ /dev/null @@ -1,32 +0,0 @@ -alternatives: -- action: /trafikkomite - consequence: - - Lagre - description: Meldinger fra naboer om farlige steder i trafikken, fra nye tips til saker dere har tatt videre. - features: - - description: '' - name: '' - resource: - requires_group: trafikkomite - source: - bucket: trafikkmeldinger - kind: kv - transitions: - - from: open - label: Ta opp med kommunen - to: tatt_opp - - from: open - label: Avvis meldingen - to: avvist - - from: tatt_opp - label: Meld som ordnet - to: ordnet - - from: tatt_opp - label: Avvis saken - to: avvist - name: Trafikkfarer naboene har meldt inn -description: Her følger trafikkomiteen opp farer naboene har meldt fra om, fra nytt tips til saken er ordnet eller avvist. -name: Hvilke trafikkfarer må vi følge opp nå? -responsible: - contact: post@tomtervel.example - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/rate.json b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/rate.json deleted file mode 100644 index 554b19c..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/rate.json +++ /dev/null @@ -1,477 +0,0 @@ -{ - "anleggsfeil": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 18.526652452025587, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 1, - "next": 0, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 23.004264392324096, - "options": 2, - "overloaded": false, - "page": "/melde-fra", - "personas": 2, - "required_fields": 2, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "bli-medlem": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 18.526652452025587, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 26.747072599531613, - "options": 2, - "overloaded": false, - "page": "/medlem", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "which": 1 - } - } - ], - "steps": 2 - }, - "dele-utstyr": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 18.526652452025587, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 24.561813186813186, - "options": 3, - "overloaded": false, - "page": "/naboer", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "endre-medlemskap": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 18.526652452025587, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 30.068627450980394, - "options": 2, - "overloaded": false, - "page": "/medlem", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "hjelpe-til": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 18.526652452025587, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 1, - "next": 0, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 22.243478260869566, - "options": 3, - "overloaded": false, - "page": "/bidra", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "horingsinnspill": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 18.526652452025587, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 1 - } - }, - { - "control": { - "asked": 1, - "next": 0, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 24.353763440860217, - "options": 3, - "overloaded": false, - "page": "/bidra", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "kan-hjelpe": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 18.526652452025587, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 26.151515151515152, - "options": 3, - "overloaded": false, - "page": "/naboer", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "komite": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 18.526652452025587, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 1, - "next": 0, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 22.1, - "options": 3, - "overloaded": false, - "page": "/bidra", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "trafikkfare": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 18.526652452025587, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 2 - } - }, - { - "control": { - "asked": 2, - "next": 0, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 25.666666666666664, - "options": 2, - "overloaded": false, - "page": "/melde-fra", - "personas": 2, - "required_fields": 2, - "understanding": { - "asked": 2, - "next": 2, - "which": 1 - } - } - ], - "steps": 2 - }, - "trenger-hjelp": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 18.526652452025587, - "options": 4, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 0, - "next": null, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 27.37110016420361, - "options": 3, - "overloaded": false, - "page": "/naboer", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "utlegg": { - "pages": [ - { - "control": { - "asked": 1, - "next": 0, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 38.5, - "options": 1, - "overloaded": false, - "page": "/komiteer/utlegg", - "personas": 1, - "required_fields": 3, - "understanding": { - "asked": 1, - "next": 1, - "which": 1 - } - } - ], - "steps": 1 - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/rate.txt b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/rate.txt deleted file mode 100644 index 248abc5..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/rate.txt +++ /dev/null @@ -1,22 +0,0 @@ -need LIX which asked next gutted twin says page load -bli-medlem @/ 19 very easy 2/2 0/2 - 0/0/- ok 4 options, 0 required -bli-medlem @/medlem 27 very easy 1/2 2/2 2/2 0/0/0 ok 2 options, 3 required -endre-medlemskap @/ 19 very easy 1/2 0/2 - 0/0/- ok 4 options, 0 required -endre-medlemskap @/medlem 30 easy 2/2 2/2 2/2 0/0/0 ok 2 options, 3 required -trafikkfare @/ 19 very easy 2/2 0/2 - 0/0/- ok 4 options, 0 required -trafikkfare @/melde-fra 26 very easy 1/2 2/2 2/2 0/2/0 FAILED: asked 2 options, 2 required -anleggsfeil @/ 19 very easy 2/2 0/2 - 0/0/- ok 4 options, 0 required -anleggsfeil @/melde-fra 23 very easy 2/2 2/2 2/2 0/1/0 FAILED: asked 2 options, 2 required -horingsinnspill @/ 19 very easy 1/2 0/2 - 0/0/- ok 4 options, 0 required -horingsinnspill @/bidra 24 very easy 2/2 2/2 2/2 0/1/0 FAILED: asked 3 options, 3 required -hjelpe-til @/ 19 very easy 2/2 0/2 - 0/0/- ok 4 options, 0 required -hjelpe-til @/bidra 22 very easy 2/2 2/2 2/2 0/1/0 FAILED: asked 3 options, 3 required -komite @/ 19 very easy 2/2 0/2 - 0/0/- ok 4 options, 0 required -komite @/bidra 22 very easy 2/2 2/2 2/2 0/1/0 FAILED: asked 3 options, 3 required -trenger-hjelp @/ 19 very easy 1/2 0/2 - 0/0/- ok 4 options, 0 required -trenger-hjelp @/naboer 27 very easy 2/2 2/2 2/2 0/0/0 ok 3 options, 4 required -kan-hjelpe @/ 19 very easy 2/2 0/2 - 0/0/- ok 4 options, 0 required -kan-hjelpe @/naboer 26 very easy 2/2 2/2 2/2 0/0/0 ok 3 options, 4 required -dele-utstyr @/ 19 very easy 2/2 0/2 - 0/0/- ok 4 options, 0 required -dele-utstyr @/naboer 25 very easy 2/2 2/2 2/2 0/0/0 ok 3 options, 4 required -utlegg 38 easy 1/1 1/1 1/1 0/1/0 FAILED: asked 1 options, 3 required diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/score-full.txt b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/score-full.txt deleted file mode 100644 index 56f5d2f..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/score-full.txt +++ /dev/null @@ -1,11 +0,0 @@ -MISROUTE: ny-epost@/: picked "Vil du hjelpe eller få hjelp av naboer?" (0.95), the need is met by ["Vil du bli medlem eller endre medlemskapet?"] -MISROUTE: bru@/melde-fra: picked "Få gjort noe med en farlig vei" (0.95), the need is met by ["Få fikset det som er ødelagt"] -MISROUTE: blokker@/: picked "Har du sett noe som bør fikses?" (0.95), the need is met by ["Vil du bidra eller si din mening?"] -MISROUTE: vafler@/: picked "Vil du hjelpe eller få hjelp av naboer?" (0.95), the need is met by ["Vil du bidra eller si din mening?"] -MISROUTE: motorsag@/: picked "Har du sett noe som bør fikses?" (0.95), the need is met by ["Vil du bidra eller si din mening?"] -MISROUTE: planlegger@/bidra: picked "Få din mening med i velets høringssvar" (0.95), the need is met by ["Få en plass i komiteen som passer deg"] -MISROUTE: stige@/naboer: picked "Få en nabo til å stille opp" (0.95), the need is met by ["Del utstyr med naboene"] -MISROUTE: snomaking@/: picked "Har du sett noe som bør fikses?" (0.85), the need is met by ["Vil du hjelpe eller få hjelp av naboer?"] -MISROUTE: hjemmekontor@/naboer: picked "Få en nabo til å stille opp" (1.00), the need is met by ["Bli en nabo andre kan spørre"] -MISROUTE: pensjonert-elektriker@/naboer: picked "Få en nabo til å stille opp" (0.95), the need is met by ["Bli en nabo andre kan spørre"] -wording: 30/40 routed right (75%) diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/score-skim.txt b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/score-skim.txt deleted file mode 100644 index 83b4292..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/score-skim.txt +++ /dev/null @@ -1,13 +0,0 @@ -MISROUTE: ny-epost@/: picked "Har du sett noe som bør fikses?" (0.95), the need is met by ["Vil du bli medlem eller endre medlemskapet?"] -MISROUTE: busslomme@/melde-fra: picked "Få fikset det som er ødelagt" (0.85), the need is met by ["Få gjort noe med en farlig vei"] -MISROUTE: huske@/melde-fra: picked "Få gjort noe med en farlig vei" (0.95), the need is met by ["Få fikset det som er ødelagt"] -MISROUTE: bru@/: picked "Vil du bidra eller si din mening?" (0.95), the need is met by ["Har du sett noe som bør fikses?"] -MISROUTE: bru@/melde-fra: picked "Få gjort noe med en farlig vei" (0.95), the need is met by ["Få fikset det som er ødelagt"] -MISROUTE: blokker@/: picked "Har du sett noe som bør fikses?" (0.95), the need is met by ["Vil du bidra eller si din mening?"] -MISROUTE: vafler@/: picked "Vil du bli medlem eller endre medlemskapet?" (0.95), the need is met by ["Vil du bidra eller si din mening?"] -MISROUTE: motorsag@/: picked "Har du sett noe som bør fikses?" (0.95), the need is met by ["Vil du bidra eller si din mening?"] -MISROUTE: planlegger@/bidra: picked "Få din mening med i velets høringssvar" (0.95), the need is met by ["Få en plass i komiteen som passer deg"] -MISROUTE: tilhenger@/naboer: picked "Bli en nabo andre kan spørre" (0.95), the need is met by ["Del utstyr med naboene"] -MISROUTE: stige@/naboer: picked "Bli en nabo andre kan spørre" (0.95), the need is met by ["Del utstyr med naboene"] -MISROUTE: snomaking@/naboer: picked "Bli en nabo andre kan spørre" (0.95), the need is met by ["Få en nabo til å stille opp"] -wording: 28/40 routed right (70%) diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/site.yaml b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/site.yaml deleted file mode 100644 index 9bdc376..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/site.yaml +++ /dev/null @@ -1,2 +0,0 @@ -lang: nb -title: Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/tasks-full.jsonl b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/tasks-full.jsonl deleted file mode 100644 index 533406f..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/tasks-full.jsonl +++ /dev/null @@ -1,40 +0,0 @@ -{"id":"nyinnflyttet@/","persona":"nyinnflyttet","need":"bli-medlem","page":"/","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.","Vil du bidra eller si din mening?":"Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.","Vil du bli medlem eller endre medlemskapet?":"Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.","Vil du hjelpe eller få hjelp av naboer?":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer."}}},"expect":["Vil du bli medlem eller endre medlemskapet?"]} -{"id":"nyinnflyttet@/medlem","persona":"nyinnflyttet","need":"bli-medlem","page":"/medlem","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Meld deg inn i Tomter Vel":"Meld deg inn og betal kontingenten, så er du med.","Oppdater opplysningene dine":"Har du flyttet, byttet e-post eller vil melde deg ut? Si fra her."}}},"expect":["Meld deg inn i Tomter Vel"]} -{"id":"glemte-a-betale@/","persona":"glemte-a-betale","need":"bli-medlem","page":"/","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.","Vil du bidra eller si din mening?":"Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.","Vil du bli medlem eller endre medlemskapet?":"Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.","Vil du hjelpe eller få hjelp av naboer?":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer."}}},"expect":["Vil du bli medlem eller endre medlemskapet?"]} -{"id":"glemte-a-betale@/medlem","persona":"glemte-a-betale","need":"bli-medlem","page":"/medlem","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Meld deg inn i Tomter Vel":"Meld deg inn og betal kontingenten, så er du med.","Oppdater opplysningene dine":"Har du flyttet, byttet e-post eller vil melde deg ut? Si fra her."}}},"expect":["Meld deg inn i Tomter Vel"]} -{"id":"ny-epost@/","persona":"ny-epost","need":"endre-medlemskap","page":"/","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.","Vil du bidra eller si din mening?":"Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.","Vil du bli medlem eller endre medlemskapet?":"Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.","Vil du hjelpe eller få hjelp av naboer?":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer."}}},"expect":["Vil du bli medlem eller endre medlemskapet?"]} -{"id":"ny-epost@/medlem","persona":"ny-epost","need":"endre-medlemskap","page":"/medlem","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Meld deg inn i Tomter Vel":"Meld deg inn og betal kontingenten, så er du med.","Oppdater opplysningene dine":"Har du flyttet, byttet e-post eller vil melde deg ut? Si fra her."}}},"expect":["Oppdater opplysningene dine"]} -{"id":"flytter@/","persona":"flytter","need":"endre-medlemskap","page":"/","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.","Vil du bidra eller si din mening?":"Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.","Vil du bli medlem eller endre medlemskapet?":"Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.","Vil du hjelpe eller få hjelp av naboer?":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer."}}},"expect":["Vil du bli medlem eller endre medlemskapet?"]} -{"id":"flytter@/medlem","persona":"flytter","need":"endre-medlemskap","page":"/medlem","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Meld deg inn i Tomter Vel":"Meld deg inn og betal kontingenten, så er du med.","Oppdater opplysningene dine":"Har du flyttet, byttet e-post eller vil melde deg ut? Si fra her."}}},"expect":["Oppdater opplysningene dine"]} -{"id":"skolevei@/","persona":"skolevei","need":"trafikkfare","page":"/","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.","Vil du bidra eller si din mening?":"Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.","Vil du bli medlem eller endre medlemskapet?":"Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.","Vil du hjelpe eller få hjelp av naboer?":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer."}}},"expect":["Har du sett noe som bør fikses?"]} -{"id":"skolevei@/melde-fra","persona":"skolevei","need":"trafikkfare","page":"/melde-fra","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du sett?\". Which alternative do they choose?","criteria":{"Få fikset det som er ødelagt":"Er noe på lekeplassen eller stien ødelagt? Si ifra, så tar vi tak i det før noen skader seg.","Få gjort noe med en farlig vei":"Sett du et farlig sted i trafikken? Meld fra, så tar vi det opp med kommunen eller veieier."}}},"expect":["Få gjort noe med en farlig vei"]} -{"id":"busslomme@/","persona":"busslomme","need":"trafikkfare","page":"/","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.","Vil du bidra eller si din mening?":"Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.","Vil du bli medlem eller endre medlemskapet?":"Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.","Vil du hjelpe eller få hjelp av naboer?":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer."}}},"expect":["Har du sett noe som bør fikses?"]} -{"id":"busslomme@/melde-fra","persona":"busslomme","need":"trafikkfare","page":"/melde-fra","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du sett?\". Which alternative do they choose?","criteria":{"Få fikset det som er ødelagt":"Er noe på lekeplassen eller stien ødelagt? Si ifra, så tar vi tak i det før noen skader seg.","Få gjort noe med en farlig vei":"Sett du et farlig sted i trafikken? Meld fra, så tar vi det opp med kommunen eller veieier."}}},"expect":["Få gjort noe med en farlig vei"]} -{"id":"huske@/","persona":"huske","need":"anleggsfeil","page":"/","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.","Vil du bidra eller si din mening?":"Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.","Vil du bli medlem eller endre medlemskapet?":"Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.","Vil du hjelpe eller få hjelp av naboer?":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer."}}},"expect":["Har du sett noe som bør fikses?"]} -{"id":"huske@/melde-fra","persona":"huske","need":"anleggsfeil","page":"/melde-fra","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du sett?\". Which alternative do they choose?","criteria":{"Få fikset det som er ødelagt":"Er noe på lekeplassen eller stien ødelagt? Si ifra, så tar vi tak i det før noen skader seg.","Få gjort noe med en farlig vei":"Sett du et farlig sted i trafikken? Meld fra, så tar vi det opp med kommunen eller veieier."}}},"expect":["Få fikset det som er ødelagt"]} -{"id":"bru@/","persona":"bru","need":"anleggsfeil","page":"/","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.","Vil du bidra eller si din mening?":"Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.","Vil du bli medlem eller endre medlemskapet?":"Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.","Vil du hjelpe eller få hjelp av naboer?":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer."}}},"expect":["Har du sett noe som bør fikses?"]} -{"id":"bru@/melde-fra","persona":"bru","need":"anleggsfeil","page":"/melde-fra","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du sett?\". Which alternative do they choose?","criteria":{"Få fikset det som er ødelagt":"Er noe på lekeplassen eller stien ødelagt? Si ifra, så tar vi tak i det før noen skader seg.","Få gjort noe med en farlig vei":"Sett du et farlig sted i trafikken? Meld fra, så tar vi det opp med kommunen eller veieier."}}},"expect":["Få fikset det som er ødelagt"]} -{"id":"blokker@/","persona":"blokker","need":"horingsinnspill","page":"/","state":{"body":"Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.","Vil du bidra eller si din mening?":"Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.","Vil du bli medlem eller endre medlemskapet?":"Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.","Vil du hjelpe eller få hjelp av naboer?":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer."}}},"expect":["Vil du bidra eller si din mening?"]} -{"id":"blokker@/bidra","persona":"blokker","need":"horingsinnspill","page":"/bidra","state":{"body":"Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du lyst til å bidra med?\". Which alternative do they choose?","criteria":{"Få din mening med i velets høringssvar":"Har kommunen en sak på høring du mener noe om? Send oss innspillet, så tar vi det med i velets svar.","Få en plass i komiteen som passer deg":"Vi er sju komiteer som trenger folk. Si hvilken som passer deg, så tar vi kontakt.","Gi en hånd på neste arrangement eller dugnad":"Sett av litt tid på et arrangement eller en dugnad. Vi finner noe som passer deg."}}},"expect":["Få din mening med i velets høringssvar"]} -{"id":"togtider@/","persona":"togtider","need":"horingsinnspill","page":"/","state":{"body":"Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.","Vil du bidra eller si din mening?":"Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.","Vil du bli medlem eller endre medlemskapet?":"Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.","Vil du hjelpe eller få hjelp av naboer?":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer."}}},"expect":["Vil du bidra eller si din mening?"]} -{"id":"togtider@/bidra","persona":"togtider","need":"horingsinnspill","page":"/bidra","state":{"body":"Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du lyst til å bidra med?\". Which alternative do they choose?","criteria":{"Få din mening med i velets høringssvar":"Har kommunen en sak på høring du mener noe om? Send oss innspillet, så tar vi det med i velets svar.","Få en plass i komiteen som passer deg":"Vi er sju komiteer som trenger folk. Si hvilken som passer deg, så tar vi kontakt.","Gi en hånd på neste arrangement eller dugnad":"Sett av litt tid på et arrangement eller en dugnad. Vi finner noe som passer deg."}}},"expect":["Få din mening med i velets høringssvar"]} -{"id":"vafler@/","persona":"vafler","need":"hjelpe-til","page":"/","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.","Vil du bidra eller si din mening?":"Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.","Vil du bli medlem eller endre medlemskapet?":"Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.","Vil du hjelpe eller få hjelp av naboer?":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer."}}},"expect":["Vil du bidra eller si din mening?"]} -{"id":"vafler@/bidra","persona":"vafler","need":"hjelpe-til","page":"/bidra","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du lyst til å bidra med?\". Which alternative do they choose?","criteria":{"Få din mening med i velets høringssvar":"Har kommunen en sak på høring du mener noe om? Send oss innspillet, så tar vi det med i velets svar.","Få en plass i komiteen som passer deg":"Vi er sju komiteer som trenger folk. Si hvilken som passer deg, så tar vi kontakt.","Gi en hånd på neste arrangement eller dugnad":"Sett av litt tid på et arrangement eller en dugnad. Vi finner noe som passer deg."}}},"expect":["Gi en hånd på neste arrangement eller dugnad"]} -{"id":"motorsag@/","persona":"motorsag","need":"hjelpe-til","page":"/","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.","Vil du bidra eller si din mening?":"Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.","Vil du bli medlem eller endre medlemskapet?":"Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.","Vil du hjelpe eller få hjelp av naboer?":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer."}}},"expect":["Vil du bidra eller si din mening?"]} -{"id":"motorsag@/bidra","persona":"motorsag","need":"hjelpe-til","page":"/bidra","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du lyst til å bidra med?\". Which alternative do they choose?","criteria":{"Få din mening med i velets høringssvar":"Har kommunen en sak på høring du mener noe om? Send oss innspillet, så tar vi det med i velets svar.","Få en plass i komiteen som passer deg":"Vi er sju komiteer som trenger folk. Si hvilken som passer deg, så tar vi kontakt.","Gi en hånd på neste arrangement eller dugnad":"Sett av litt tid på et arrangement eller en dugnad. Vi finner noe som passer deg."}}},"expect":["Gi en hånd på neste arrangement eller dugnad"]} -{"id":"pendler@/","persona":"pendler","need":"komite","page":"/","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.","Vil du bidra eller si din mening?":"Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.","Vil du bli medlem eller endre medlemskapet?":"Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.","Vil du hjelpe eller få hjelp av naboer?":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer."}}},"expect":["Vil du bidra eller si din mening?"]} -{"id":"pendler@/bidra","persona":"pendler","need":"komite","page":"/bidra","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du lyst til å bidra med?\". Which alternative do they choose?","criteria":{"Få din mening med i velets høringssvar":"Har kommunen en sak på høring du mener noe om? Send oss innspillet, så tar vi det med i velets svar.","Få en plass i komiteen som passer deg":"Vi er sju komiteer som trenger folk. Si hvilken som passer deg, så tar vi kontakt.","Gi en hånd på neste arrangement eller dugnad":"Sett av litt tid på et arrangement eller en dugnad. Vi finner noe som passer deg."}}},"expect":["Få en plass i komiteen som passer deg"]} -{"id":"planlegger@/","persona":"planlegger","need":"komite","page":"/","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.","Vil du bidra eller si din mening?":"Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.","Vil du bli medlem eller endre medlemskapet?":"Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.","Vil du hjelpe eller få hjelp av naboer?":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer."}}},"expect":["Vil du bidra eller si din mening?"]} -{"id":"planlegger@/bidra","persona":"planlegger","need":"komite","page":"/bidra","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du lyst til å bidra med?\". Which alternative do they choose?","criteria":{"Få din mening med i velets høringssvar":"Har kommunen en sak på høring du mener noe om? Send oss innspillet, så tar vi det med i velets svar.","Få en plass i komiteen som passer deg":"Vi er sju komiteer som trenger folk. Si hvilken som passer deg, så tar vi kontakt.","Gi en hånd på neste arrangement eller dugnad":"Sett av litt tid på et arrangement eller en dugnad. Vi finner noe som passer deg."}}},"expect":["Få en plass i komiteen som passer deg"]} -{"id":"tilhenger@/","persona":"tilhenger","need":"dele-utstyr","page":"/","state":{"body":"Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.","Vil du bidra eller si din mening?":"Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.","Vil du bli medlem eller endre medlemskapet?":"Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.","Vil du hjelpe eller få hjelp av naboer?":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer."}}},"expect":["Vil du hjelpe eller få hjelp av naboer?"]} -{"id":"tilhenger@/naboer","persona":"tilhenger","need":"dele-utstyr","page":"/naboer","state":{"body":"Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en nabo, eller vil du være en?\". Which alternative do they choose?","criteria":{"Bli en nabo andre kan spørre":"Si fra om hva du kan bidra med, så tar nabohjelpa kontakt når det trengs.","Del utstyr med naboene":"Legg ut det du har til overs, eller si fra om noe du gjerne vil låne av naboene.","Få en nabo til å stille opp":"Trenger du en hånd med snømåking, handling eller skyss? Fortell hva du trenger, så finner vi en nabo."}}},"expect":["Del utstyr med naboene"]} -{"id":"stige@/","persona":"stige","need":"dele-utstyr","page":"/","state":{"body":"Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.","Vil du bidra eller si din mening?":"Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.","Vil du bli medlem eller endre medlemskapet?":"Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.","Vil du hjelpe eller få hjelp av naboer?":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer."}}},"expect":["Vil du hjelpe eller få hjelp av naboer?"]} -{"id":"stige@/naboer","persona":"stige","need":"dele-utstyr","page":"/naboer","state":{"body":"Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en nabo, eller vil du være en?\". Which alternative do they choose?","criteria":{"Bli en nabo andre kan spørre":"Si fra om hva du kan bidra med, så tar nabohjelpa kontakt når det trengs.","Del utstyr med naboene":"Legg ut det du har til overs, eller si fra om noe du gjerne vil låne av naboene.","Få en nabo til å stille opp":"Trenger du en hånd med snømåking, handling eller skyss? Fortell hva du trenger, så finner vi en nabo."}}},"expect":["Del utstyr med naboene"]} -{"id":"snomaking@/","persona":"snomaking","need":"trenger-hjelp","page":"/","state":{"body":"Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.","Vil du bidra eller si din mening?":"Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.","Vil du bli medlem eller endre medlemskapet?":"Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.","Vil du hjelpe eller få hjelp av naboer?":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer."}}},"expect":["Vil du hjelpe eller få hjelp av naboer?"]} -{"id":"snomaking@/naboer","persona":"snomaking","need":"trenger-hjelp","page":"/naboer","state":{"body":"Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en nabo, eller vil du være en?\". Which alternative do they choose?","criteria":{"Bli en nabo andre kan spørre":"Si fra om hva du kan bidra med, så tar nabohjelpa kontakt når det trengs.","Del utstyr med naboene":"Legg ut det du har til overs, eller si fra om noe du gjerne vil låne av naboene.","Få en nabo til å stille opp":"Trenger du en hånd med snømåking, handling eller skyss? Fortell hva du trenger, så finner vi en nabo."}}},"expect":["Få en nabo til å stille opp"]} -{"id":"nyoperert@/","persona":"nyoperert","need":"trenger-hjelp","page":"/","state":{"body":"Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.","Vil du bidra eller si din mening?":"Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.","Vil du bli medlem eller endre medlemskapet?":"Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.","Vil du hjelpe eller få hjelp av naboer?":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer."}}},"expect":["Vil du hjelpe eller få hjelp av naboer?"]} -{"id":"nyoperert@/naboer","persona":"nyoperert","need":"trenger-hjelp","page":"/naboer","state":{"body":"Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en nabo, eller vil du være en?\". Which alternative do they choose?","criteria":{"Bli en nabo andre kan spørre":"Si fra om hva du kan bidra med, så tar nabohjelpa kontakt når det trengs.","Del utstyr med naboene":"Legg ut det du har til overs, eller si fra om noe du gjerne vil låne av naboene.","Få en nabo til å stille opp":"Trenger du en hånd med snømåking, handling eller skyss? Fortell hva du trenger, så finner vi en nabo."}}},"expect":["Få en nabo til å stille opp"]} -{"id":"hjemmekontor@/","persona":"hjemmekontor","need":"kan-hjelpe","page":"/","state":{"body":"Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.","Vil du bidra eller si din mening?":"Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.","Vil du bli medlem eller endre medlemskapet?":"Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.","Vil du hjelpe eller få hjelp av naboer?":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer."}}},"expect":["Vil du hjelpe eller få hjelp av naboer?"]} -{"id":"hjemmekontor@/naboer","persona":"hjemmekontor","need":"kan-hjelpe","page":"/naboer","state":{"body":"Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en nabo, eller vil du være en?\". Which alternative do they choose?","criteria":{"Bli en nabo andre kan spørre":"Si fra om hva du kan bidra med, så tar nabohjelpa kontakt når det trengs.","Del utstyr med naboene":"Legg ut det du har til overs, eller si fra om noe du gjerne vil låne av naboene.","Få en nabo til å stille opp":"Trenger du en hånd med snømåking, handling eller skyss? Fortell hva du trenger, så finner vi en nabo."}}},"expect":["Bli en nabo andre kan spørre"]} -{"id":"pensjonert-elektriker@/","persona":"pensjonert-elektriker","need":"kan-hjelpe","page":"/","state":{"body":"Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett en trafikkfarlig plass eller noe ødelagt på lekeplassen eller stien? Meld fra her.","Vil du bidra eller si din mening?":"Si din mening om en høringssak, eller meld deg til en dugnad eller en komité.","Vil du bli medlem eller endre medlemskapet?":"Meld deg inn i Tomter Vel, eller endre opplysningene dine som medlem.","Vil du hjelpe eller få hjelp av naboer?":"Trenger du en hånd, kan du stille opp for andre, eller har du noe å låne ut? Her møtes naboer."}}},"expect":["Vil du hjelpe eller få hjelp av naboer?"]} -{"id":"pensjonert-elektriker@/naboer","persona":"pensjonert-elektriker","need":"kan-hjelpe","page":"/naboer","state":{"body":"Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en nabo, eller vil du være en?\". Which alternative do they choose?","criteria":{"Bli en nabo andre kan spørre":"Si fra om hva du kan bidra med, så tar nabohjelpa kontakt når det trengs.","Del utstyr med naboene":"Legg ut det du har til overs, eller si fra om noe du gjerne vil låne av naboene.","Få en nabo til å stille opp":"Trenger du en hånd med snømåking, handling eller skyss? Fortell hva du trenger, så finner vi en nabo."}}},"expect":["Bli en nabo andre kan spørre"]} diff --git a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/tasks-skim.jsonl b/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/tasks-skim.jsonl deleted file mode 100644 index 4ef63b3..0000000 --- a/vendor/trainer/runs/tomtervel-nabohjelp-2026-09-22/tasks-skim.jsonl +++ /dev/null @@ -1,40 +0,0 @@ -{"id":"nyinnflyttet@/","persona":"nyinnflyttet","need":"bli-medlem","page":"/","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett noe som bør fikses?","Vil du bidra eller si din mening?":"Vil du bidra eller si din mening?","Vil du bli medlem eller endre medlemskapet?":"Vil du bli medlem eller endre medlemskapet?","Vil du hjelpe eller få hjelp av naboer?":"Vil du hjelpe eller få hjelp av naboer?"}}},"expect":["Vil du bli medlem eller endre medlemskapet?"]} -{"id":"nyinnflyttet@/medlem","persona":"nyinnflyttet","need":"bli-medlem","page":"/medlem","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Meld deg inn i Tomter Vel":"Meld deg inn i Tomter Vel","Oppdater opplysningene dine":"Oppdater opplysningene dine"}}},"expect":["Meld deg inn i Tomter Vel"]} -{"id":"glemte-a-betale@/","persona":"glemte-a-betale","need":"bli-medlem","page":"/","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett noe som bør fikses?","Vil du bidra eller si din mening?":"Vil du bidra eller si din mening?","Vil du bli medlem eller endre medlemskapet?":"Vil du bli medlem eller endre medlemskapet?","Vil du hjelpe eller få hjelp av naboer?":"Vil du hjelpe eller få hjelp av naboer?"}}},"expect":["Vil du bli medlem eller endre medlemskapet?"]} -{"id":"glemte-a-betale@/medlem","persona":"glemte-a-betale","need":"bli-medlem","page":"/medlem","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Meld deg inn i Tomter Vel":"Meld deg inn i Tomter Vel","Oppdater opplysningene dine":"Oppdater opplysningene dine"}}},"expect":["Meld deg inn i Tomter Vel"]} -{"id":"ny-epost@/","persona":"ny-epost","need":"endre-medlemskap","page":"/","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett noe som bør fikses?","Vil du bidra eller si din mening?":"Vil du bidra eller si din mening?","Vil du bli medlem eller endre medlemskapet?":"Vil du bli medlem eller endre medlemskapet?","Vil du hjelpe eller få hjelp av naboer?":"Vil du hjelpe eller få hjelp av naboer?"}}},"expect":["Vil du bli medlem eller endre medlemskapet?"]} -{"id":"ny-epost@/medlem","persona":"ny-epost","need":"endre-medlemskap","page":"/medlem","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Meld deg inn i Tomter Vel":"Meld deg inn i Tomter Vel","Oppdater opplysningene dine":"Oppdater opplysningene dine"}}},"expect":["Oppdater opplysningene dine"]} -{"id":"flytter@/","persona":"flytter","need":"endre-medlemskap","page":"/","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett noe som bør fikses?","Vil du bidra eller si din mening?":"Vil du bidra eller si din mening?","Vil du bli medlem eller endre medlemskapet?":"Vil du bli medlem eller endre medlemskapet?","Vil du hjelpe eller få hjelp av naboer?":"Vil du hjelpe eller få hjelp av naboer?"}}},"expect":["Vil du bli medlem eller endre medlemskapet?"]} -{"id":"flytter@/medlem","persona":"flytter","need":"endre-medlemskap","page":"/medlem","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Meld deg inn i Tomter Vel":"Meld deg inn i Tomter Vel","Oppdater opplysningene dine":"Oppdater opplysningene dine"}}},"expect":["Oppdater opplysningene dine"]} -{"id":"skolevei@/","persona":"skolevei","need":"trafikkfare","page":"/","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett noe som bør fikses?","Vil du bidra eller si din mening?":"Vil du bidra eller si din mening?","Vil du bli medlem eller endre medlemskapet?":"Vil du bli medlem eller endre medlemskapet?","Vil du hjelpe eller få hjelp av naboer?":"Vil du hjelpe eller få hjelp av naboer?"}}},"expect":["Har du sett noe som bør fikses?"]} -{"id":"skolevei@/melde-fra","persona":"skolevei","need":"trafikkfare","page":"/melde-fra","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du sett?\". Which alternative do they choose?","criteria":{"Få fikset det som er ødelagt":"Få fikset det som er ødelagt","Få gjort noe med en farlig vei":"Få gjort noe med en farlig vei"}}},"expect":["Få gjort noe med en farlig vei"]} -{"id":"busslomme@/","persona":"busslomme","need":"trafikkfare","page":"/","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett noe som bør fikses?","Vil du bidra eller si din mening?":"Vil du bidra eller si din mening?","Vil du bli medlem eller endre medlemskapet?":"Vil du bli medlem eller endre medlemskapet?","Vil du hjelpe eller få hjelp av naboer?":"Vil du hjelpe eller få hjelp av naboer?"}}},"expect":["Har du sett noe som bør fikses?"]} -{"id":"busslomme@/melde-fra","persona":"busslomme","need":"trafikkfare","page":"/melde-fra","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du sett?\". Which alternative do they choose?","criteria":{"Få fikset det som er ødelagt":"Få fikset det som er ødelagt","Få gjort noe med en farlig vei":"Få gjort noe med en farlig vei"}}},"expect":["Få gjort noe med en farlig vei"]} -{"id":"huske@/","persona":"huske","need":"anleggsfeil","page":"/","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett noe som bør fikses?","Vil du bidra eller si din mening?":"Vil du bidra eller si din mening?","Vil du bli medlem eller endre medlemskapet?":"Vil du bli medlem eller endre medlemskapet?","Vil du hjelpe eller få hjelp av naboer?":"Vil du hjelpe eller få hjelp av naboer?"}}},"expect":["Har du sett noe som bør fikses?"]} -{"id":"huske@/melde-fra","persona":"huske","need":"anleggsfeil","page":"/melde-fra","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du sett?\". Which alternative do they choose?","criteria":{"Få fikset det som er ødelagt":"Få fikset det som er ødelagt","Få gjort noe med en farlig vei":"Få gjort noe med en farlig vei"}}},"expect":["Få fikset det som er ødelagt"]} -{"id":"bru@/","persona":"bru","need":"anleggsfeil","page":"/","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett noe som bør fikses?","Vil du bidra eller si din mening?":"Vil du bidra eller si din mening?","Vil du bli medlem eller endre medlemskapet?":"Vil du bli medlem eller endre medlemskapet?","Vil du hjelpe eller få hjelp av naboer?":"Vil du hjelpe eller få hjelp av naboer?"}}},"expect":["Har du sett noe som bør fikses?"]} -{"id":"bru@/melde-fra","persona":"bru","need":"anleggsfeil","page":"/melde-fra","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du sett?\". Which alternative do they choose?","criteria":{"Få fikset det som er ødelagt":"Få fikset det som er ødelagt","Få gjort noe med en farlig vei":"Få gjort noe med en farlig vei"}}},"expect":["Få fikset det som er ødelagt"]} -{"id":"blokker@/","persona":"blokker","need":"horingsinnspill","page":"/","state":{"body":"Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett noe som bør fikses?","Vil du bidra eller si din mening?":"Vil du bidra eller si din mening?","Vil du bli medlem eller endre medlemskapet?":"Vil du bli medlem eller endre medlemskapet?","Vil du hjelpe eller få hjelp av naboer?":"Vil du hjelpe eller få hjelp av naboer?"}}},"expect":["Vil du bidra eller si din mening?"]} -{"id":"blokker@/bidra","persona":"blokker","need":"horingsinnspill","page":"/bidra","state":{"body":"Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du lyst til å bidra med?\". Which alternative do they choose?","criteria":{"Få din mening med i velets høringssvar":"Få din mening med i velets høringssvar","Få en plass i komiteen som passer deg":"Få en plass i komiteen som passer deg","Gi en hånd på neste arrangement eller dugnad":"Gi en hånd på neste arrangement eller dugnad"}}},"expect":["Få din mening med i velets høringssvar"]} -{"id":"togtider@/","persona":"togtider","need":"horingsinnspill","page":"/","state":{"body":"Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett noe som bør fikses?","Vil du bidra eller si din mening?":"Vil du bidra eller si din mening?","Vil du bli medlem eller endre medlemskapet?":"Vil du bli medlem eller endre medlemskapet?","Vil du hjelpe eller få hjelp av naboer?":"Vil du hjelpe eller få hjelp av naboer?"}}},"expect":["Vil du bidra eller si din mening?"]} -{"id":"togtider@/bidra","persona":"togtider","need":"horingsinnspill","page":"/bidra","state":{"body":"Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du lyst til å bidra med?\". Which alternative do they choose?","criteria":{"Få din mening med i velets høringssvar":"Få din mening med i velets høringssvar","Få en plass i komiteen som passer deg":"Få en plass i komiteen som passer deg","Gi en hånd på neste arrangement eller dugnad":"Gi en hånd på neste arrangement eller dugnad"}}},"expect":["Få din mening med i velets høringssvar"]} -{"id":"vafler@/","persona":"vafler","need":"hjelpe-til","page":"/","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett noe som bør fikses?","Vil du bidra eller si din mening?":"Vil du bidra eller si din mening?","Vil du bli medlem eller endre medlemskapet?":"Vil du bli medlem eller endre medlemskapet?","Vil du hjelpe eller få hjelp av naboer?":"Vil du hjelpe eller få hjelp av naboer?"}}},"expect":["Vil du bidra eller si din mening?"]} -{"id":"vafler@/bidra","persona":"vafler","need":"hjelpe-til","page":"/bidra","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du lyst til å bidra med?\". Which alternative do they choose?","criteria":{"Få din mening med i velets høringssvar":"Få din mening med i velets høringssvar","Få en plass i komiteen som passer deg":"Få en plass i komiteen som passer deg","Gi en hånd på neste arrangement eller dugnad":"Gi en hånd på neste arrangement eller dugnad"}}},"expect":["Gi en hånd på neste arrangement eller dugnad"]} -{"id":"motorsag@/","persona":"motorsag","need":"hjelpe-til","page":"/","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett noe som bør fikses?","Vil du bidra eller si din mening?":"Vil du bidra eller si din mening?","Vil du bli medlem eller endre medlemskapet?":"Vil du bli medlem eller endre medlemskapet?","Vil du hjelpe eller få hjelp av naboer?":"Vil du hjelpe eller få hjelp av naboer?"}}},"expect":["Vil du bidra eller si din mening?"]} -{"id":"motorsag@/bidra","persona":"motorsag","need":"hjelpe-til","page":"/bidra","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du lyst til å bidra med?\". Which alternative do they choose?","criteria":{"Få din mening med i velets høringssvar":"Få din mening med i velets høringssvar","Få en plass i komiteen som passer deg":"Få en plass i komiteen som passer deg","Gi en hånd på neste arrangement eller dugnad":"Gi en hånd på neste arrangement eller dugnad"}}},"expect":["Gi en hånd på neste arrangement eller dugnad"]} -{"id":"pendler@/","persona":"pendler","need":"komite","page":"/","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett noe som bør fikses?","Vil du bidra eller si din mening?":"Vil du bidra eller si din mening?","Vil du bli medlem eller endre medlemskapet?":"Vil du bli medlem eller endre medlemskapet?","Vil du hjelpe eller få hjelp av naboer?":"Vil du hjelpe eller få hjelp av naboer?"}}},"expect":["Vil du bidra eller si din mening?"]} -{"id":"pendler@/bidra","persona":"pendler","need":"komite","page":"/bidra","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du lyst til å bidra med?\". Which alternative do they choose?","criteria":{"Få din mening med i velets høringssvar":"Få din mening med i velets høringssvar","Få en plass i komiteen som passer deg":"Få en plass i komiteen som passer deg","Gi en hånd på neste arrangement eller dugnad":"Gi en hånd på neste arrangement eller dugnad"}}},"expect":["Få en plass i komiteen som passer deg"]} -{"id":"planlegger@/","persona":"planlegger","need":"komite","page":"/","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett noe som bør fikses?","Vil du bidra eller si din mening?":"Vil du bidra eller si din mening?","Vil du bli medlem eller endre medlemskapet?":"Vil du bli medlem eller endre medlemskapet?","Vil du hjelpe eller få hjelp av naboer?":"Vil du hjelpe eller få hjelp av naboer?"}}},"expect":["Vil du bidra eller si din mening?"]} -{"id":"planlegger@/bidra","persona":"planlegger","need":"komite","page":"/bidra","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva har du lyst til å bidra med?\". Which alternative do they choose?","criteria":{"Få din mening med i velets høringssvar":"Få din mening med i velets høringssvar","Få en plass i komiteen som passer deg":"Få en plass i komiteen som passer deg","Gi en hånd på neste arrangement eller dugnad":"Gi en hånd på neste arrangement eller dugnad"}}},"expect":["Få en plass i komiteen som passer deg"]} -{"id":"tilhenger@/","persona":"tilhenger","need":"dele-utstyr","page":"/","state":{"body":"Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett noe som bør fikses?","Vil du bidra eller si din mening?":"Vil du bidra eller si din mening?","Vil du bli medlem eller endre medlemskapet?":"Vil du bli medlem eller endre medlemskapet?","Vil du hjelpe eller få hjelp av naboer?":"Vil du hjelpe eller få hjelp av naboer?"}}},"expect":["Vil du hjelpe eller få hjelp av naboer?"]} -{"id":"tilhenger@/naboer","persona":"tilhenger","need":"dele-utstyr","page":"/naboer","state":{"body":"Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en nabo, eller vil du være en?\". Which alternative do they choose?","criteria":{"Bli en nabo andre kan spørre":"Bli en nabo andre kan spørre","Del utstyr med naboene":"Del utstyr med naboene","Få en nabo til å stille opp":"Få en nabo til å stille opp"}}},"expect":["Del utstyr med naboene"]} -{"id":"stige@/","persona":"stige","need":"dele-utstyr","page":"/","state":{"body":"Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett noe som bør fikses?","Vil du bidra eller si din mening?":"Vil du bidra eller si din mening?","Vil du bli medlem eller endre medlemskapet?":"Vil du bli medlem eller endre medlemskapet?","Vil du hjelpe eller få hjelp av naboer?":"Vil du hjelpe eller få hjelp av naboer?"}}},"expect":["Vil du hjelpe eller få hjelp av naboer?"]} -{"id":"stige@/naboer","persona":"stige","need":"dele-utstyr","page":"/naboer","state":{"body":"Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en nabo, eller vil du være en?\". Which alternative do they choose?","criteria":{"Bli en nabo andre kan spørre":"Bli en nabo andre kan spørre","Del utstyr med naboene":"Del utstyr med naboene","Få en nabo til å stille opp":"Få en nabo til å stille opp"}}},"expect":["Del utstyr med naboene"]} -{"id":"snomaking@/","persona":"snomaking","need":"trenger-hjelp","page":"/","state":{"body":"Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett noe som bør fikses?","Vil du bidra eller si din mening?":"Vil du bidra eller si din mening?","Vil du bli medlem eller endre medlemskapet?":"Vil du bli medlem eller endre medlemskapet?","Vil du hjelpe eller få hjelp av naboer?":"Vil du hjelpe eller få hjelp av naboer?"}}},"expect":["Vil du hjelpe eller få hjelp av naboer?"]} -{"id":"snomaking@/naboer","persona":"snomaking","need":"trenger-hjelp","page":"/naboer","state":{"body":"Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en nabo, eller vil du være en?\". Which alternative do they choose?","criteria":{"Bli en nabo andre kan spørre":"Bli en nabo andre kan spørre","Del utstyr med naboene":"Del utstyr med naboene","Få en nabo til å stille opp":"Få en nabo til å stille opp"}}},"expect":["Få en nabo til å stille opp"]} -{"id":"nyoperert@/","persona":"nyoperert","need":"trenger-hjelp","page":"/","state":{"body":"Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett noe som bør fikses?","Vil du bidra eller si din mening?":"Vil du bidra eller si din mening?","Vil du bli medlem eller endre medlemskapet?":"Vil du bli medlem eller endre medlemskapet?","Vil du hjelpe eller få hjelp av naboer?":"Vil du hjelpe eller få hjelp av naboer?"}}},"expect":["Vil du hjelpe eller få hjelp av naboer?"]} -{"id":"nyoperert@/naboer","persona":"nyoperert","need":"trenger-hjelp","page":"/naboer","state":{"body":"Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en nabo, eller vil du være en?\". Which alternative do they choose?","criteria":{"Bli en nabo andre kan spørre":"Bli en nabo andre kan spørre","Del utstyr med naboene":"Del utstyr med naboene","Få en nabo til å stille opp":"Få en nabo til å stille opp"}}},"expect":["Få en nabo til å stille opp"]} -{"id":"hjemmekontor@/","persona":"hjemmekontor","need":"kan-hjelpe","page":"/","state":{"body":"Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett noe som bør fikses?","Vil du bidra eller si din mening?":"Vil du bidra eller si din mening?","Vil du bli medlem eller endre medlemskapet?":"Vil du bli medlem eller endre medlemskapet?","Vil du hjelpe eller få hjelp av naboer?":"Vil du hjelpe eller få hjelp av naboer?"}}},"expect":["Vil du hjelpe eller få hjelp av naboer?"]} -{"id":"hjemmekontor@/naboer","persona":"hjemmekontor","need":"kan-hjelpe","page":"/naboer","state":{"body":"Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en nabo, eller vil du være en?\". Which alternative do they choose?","criteria":{"Bli en nabo andre kan spørre":"Bli en nabo andre kan spørre","Del utstyr med naboene":"Del utstyr med naboene","Få en nabo til å stille opp":"Få en nabo til å stille opp"}}},"expect":["Bli en nabo andre kan spørre"]} -{"id":"pensjonert-elektriker@/","persona":"pensjonert-elektriker","need":"kan-hjelpe","page":"/","state":{"body":"Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du gjøre?\". Which alternative do they choose?","criteria":{"Har du sett noe som bør fikses?":"Har du sett noe som bør fikses?","Vil du bidra eller si din mening?":"Vil du bidra eller si din mening?","Vil du bli medlem eller endre medlemskapet?":"Vil du bli medlem eller endre medlemskapet?","Vil du hjelpe eller få hjelp av naboer?":"Vil du hjelpe eller få hjelp av naboer?"}}},"expect":["Vil du hjelpe eller få hjelp av naboer?"]} -{"id":"pensjonert-elektriker@/naboer","persona":"pensjonert-elektriker","need":"kan-hjelpe","page":"/naboer","state":{"body":"Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en nabo, eller vil du være en?\". Which alternative do they choose?","criteria":{"Bli en nabo andre kan spørre":"Bli en nabo andre kan spørre","Del utstyr med naboene":"Del utstyr med naboene","Få en nabo til å stille opp":"Få en nabo til å stille opp"}}},"expect":["Bli en nabo andre kan spørre"]} diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/README.md b/vendor/trainer/runs/tomtervel-opener-2026-09-23/README.md deleted file mode 100644 index ffc25eb..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/README.md +++ /dev/null @@ -1,82 +0,0 @@ -# Tomter Vel: the doors stay, the opener comes first, 2026-09-23 - -The flat front door (`runs/tomtervel-flat-2026-09-23`) scored worse -than the live doored site: ten offers on one page put the close pairs -next to each other. So the plan keeps its four doors and gains what -the flat build was for: the opener (two cards, membership and -neighbour help, each with a move of the person's own afterwards), the -look-around (the three public lists), the mails on the stages that -matter to the sender, and the member's own way out. Words lifted from -the live repo by card identity - the lift now follows a card across -pages - with the opener in Norwegian by hand (`opener-only.json`). - -Scored with the scorer that treats a card with no button as what the -page says, not as an option (iris after 2026-09-23). The first run -(`r1/`) lifted from the wrong checkout and had the scorer counting -opener picks as misroutes; it is kept for the record. - -| Front door | With descriptions | Headings only | -|---|---|---| -| Live, four doors (`tomtervel-cards-2026-09-23`) | 32 of 40 | 29 of 40 | -| Flat, ten offers (`tomtervel-flat-2026-09-23`) | 12 of 20 | 9 of 20 | -| Four doors with the opener, this run | 30 of 38 | 26 of 38 | - -Level with the live site within the visitor's noise, with everything -new on top. Merged to tomtervel/questions main the same evening. The -mails are the builder's fallbacks; a model has not reworded them. - -## Round 2: the mails, in Norwegian - -`build --llm-for aggregates.yaml` with Sonnet, every other word as -merged. Six mails, all in Norwegian, both links to the sender's own -move kept (the builder puts a lost link back). Readability level with -the fallbacks, LIX 7 to 33 against 13 to 20, and the text says what -happened: "Vi har funnet en nabo som kan hjelpe. De tar kontakt med -deg direkte." On vel.klingenbergbygg.no the same evening. The builder -now refuses a reply in the wrong language for the plan and keeps the -words it had. - -## Round 3: the doors reworded, and rejected - -Sonnet rewrote the four door cards (`words-r3.json`, `site-r3/`), -and the result was scored with descriptions across three seeds -against the live doors: 29, 25, 28 of 38 against 30, 29, 29. Worse, -outside the spread. "Få hjelp av naboer eller gi en hånd selv" takes -the volunteers as well as the neighbours, because "gi en hånd selv" -reads as volunteering. The live doors stay. What survives every round -is the same four: hearing input read as a report, a committee read as -a hearing, and volunteering read as neighbour help - which says the -doors' seams are the plan's, not the words'. - -## Round 4: the neighbour-help desk reworded, and rejected - -The first desk score said this desk got 2 of 4 buttons right. Sonnet -reworded its labels (`/tmp` only); the score got worse with both a -small and a strong picker, and the strong one showed why: told a case -"has just become ikke lost", it pressed "Meld ordnet" - it read the -accent-stripped state id as English. The scorer also offered every -button of the bucket where a row shows only its own state's. With the -row's buttons only, the live desk scores 3 of 4 and the vel 24 of 26 -over all desks. The labels stay as they were. - -## The rejected doors, judged rather than routed - -`prefer` between the live doors (A) and the rejected rewrite (B), -qwen3:8b, both orders: "clearer" goes to B on 5 of 10 needs and to A -on none; "friendlier" is no preference on all 10. So the rewrite -reads clearer to a judge and routes worse for a visitor: what a -reader calls clear and what sends a persona to the right card are -not the same measure, and routing is the one that matters. The -friendliness question never discriminated here, on any need; it may -be too weak for a small judge, or the two versions may be alike. - -## The friendliness judge, given a positive control - -Sonnet wrote a cold, bureaucratic twin of the front door's words -("Vedrørende medlemskap og endring av registrerte opplysninger", -`cold-front.json`, `site-cold/`). `prefer` live (A) against cold (B), -qwen3:8b, both orders: friendlier goes to A on 9 of 10 needs and to B -on none; clearer to A on 5 and B on none; LIX 23 against 36. The -judge can tell warmth apart when it is there to tell, so the "no -preference" between the live doors and the rejected rewrite stands: -those two were alike in tone and differed in routing. diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-full-seed1.jsonl b/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-full-seed1.jsonl deleted file mode 100644 index 57cd11a..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-full-seed1.jsonl +++ /dev/null @@ -1,38 +0,0 @@ -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"nyinnflyttet@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"nyinnflyttet@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"glemte-a-betale@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"glemte-a-betale@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"ny-epost@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"ny-epost@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":1.0,"id":"flytter@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"flytter@/medlem"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"skolevei@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"skolevei@/melde-fra"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"busslomme@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"busslomme@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"huske@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"huske@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"bru@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"bru@/melde-fra"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"blokker@/"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"togtider@/"} -{"choice":"Bli med og gjør en innsats","confidence":0.95,"id":"vafler@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"vafler@/bidra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"motorsag@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"motorsag@/bidra"} -{"choice":"Bli med og gjør en innsats","confidence":0.95,"id":"pendler@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"pendler@/bidra"} -{"choice":"Få din mening med i høringssvaret","confidence":1.0,"id":"planlegger@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"planlegger@/bidra"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"tilhenger@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"tilhenger@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"stige@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"stige@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"snomaking@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"snomaking@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"nyoperert@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"nyoperert@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"hjemmekontor@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"hjemmekontor@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"pensjonert-elektriker@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"pensjonert-elektriker@/naboer"} diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-full-seed2.jsonl b/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-full-seed2.jsonl deleted file mode 100644 index 338f629..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-full-seed2.jsonl +++ /dev/null @@ -1,38 +0,0 @@ -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"nyinnflyttet@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"nyinnflyttet@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"glemte-a-betale@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"glemte-a-betale@/medlem"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"ny-epost@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"ny-epost@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"flytter@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"flytter@/medlem"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"skolevei@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"skolevei@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"busslomme@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"busslomme@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"huske@/"} -{"choice":"Meld fra om noe ødelagt","confidence":1.0,"id":"huske@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"bru@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"bru@/melde-fra"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"blokker@/"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"togtider@/"} -{"choice":"Bli med og gjør en innsats","confidence":0.95,"id":"vafler@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"vafler@/bidra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"motorsag@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"motorsag@/bidra"} -{"choice":"Bli med og gjør en innsats","confidence":0.95,"id":"pendler@/"} -{"choice":"Sitt i en komité som betyr noe for deg","confidence":0.95,"id":"pendler@/bidra"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"planlegger@/"} -{"choice":"Sitt i en komité som betyr noe for deg","confidence":0.95,"id":"planlegger@/bidra"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"tilhenger@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"tilhenger@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"stige@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"stige@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"snomaking@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"snomaking@/naboer"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"nyoperert@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"nyoperert@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"hjemmekontor@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"hjemmekontor@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"pensjonert-elektriker@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"pensjonert-elektriker@/naboer"} diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-full-seed3.jsonl b/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-full-seed3.jsonl deleted file mode 100644 index 9d236b9..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-full-seed3.jsonl +++ /dev/null @@ -1,38 +0,0 @@ -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"nyinnflyttet@/"} -{"choice":"Bli medlem av Tomter Vel","confidence":0.95,"id":"nyinnflyttet@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"glemte-a-betale@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"glemte-a-betale@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"ny-epost@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"ny-epost@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"flytter@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"flytter@/medlem"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"skolevei@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"skolevei@/melde-fra"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"busslomme@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"busslomme@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"huske@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"huske@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"bru@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"bru@/melde-fra"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"blokker@/"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"togtider@/"} -{"choice":"Bli med og gjør en innsats","confidence":0.95,"id":"vafler@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"vafler@/bidra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"motorsag@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"motorsag@/bidra"} -{"choice":"Bli med og gjør en innsats","confidence":0.95,"id":"pendler@/"} -{"choice":"Sitt i en komité som betyr noe for deg","confidence":0.95,"id":"pendler@/bidra"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"planlegger@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"planlegger@/bidra"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"tilhenger@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"tilhenger@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"stige@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"stige@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"snomaking@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"snomaking@/naboer"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"nyoperert@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"nyoperert@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"hjemmekontor@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"hjemmekontor@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"pensjonert-elektriker@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"pensjonert-elektriker@/naboer"} diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-full.jsonl b/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-full.jsonl deleted file mode 100644 index f849675..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-full.jsonl +++ /dev/null @@ -1,38 +0,0 @@ -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"nyinnflyttet@/"} -{"choice":"Bli medlem av Tomter Vel","confidence":0.95,"id":"nyinnflyttet@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"glemte-a-betale@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"glemte-a-betale@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"ny-epost@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"ny-epost@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"flytter@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"flytter@/medlem"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"skolevei@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"skolevei@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"busslomme@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"busslomme@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"huske@/"} -{"choice":"Meld fra om noe ødelagt","confidence":1.0,"id":"huske@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"bru@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"bru@/melde-fra"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"blokker@/"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"togtider@/"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"vafler@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"vafler@/bidra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"motorsag@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"motorsag@/bidra"} -{"choice":"Bli med og gjør en innsats","confidence":0.95,"id":"pendler@/"} -{"choice":"Sitt i en komité som betyr noe for deg","confidence":0.95,"id":"pendler@/bidra"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"planlegger@/"} -{"choice":"Sitt i en komité som betyr noe for deg","confidence":0.95,"id":"planlegger@/bidra"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"tilhenger@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"tilhenger@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"stige@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"stige@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"snomaking@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"snomaking@/naboer"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"nyoperert@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"nyoperert@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"hjemmekontor@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"hjemmekontor@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":1.0,"id":"pensjonert-elektriker@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"pensjonert-elektriker@/naboer"} diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-r3-full-seed0.jsonl b/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-r3-full-seed0.jsonl deleted file mode 100644 index 7800a01..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-r3-full-seed0.jsonl +++ /dev/null @@ -1,38 +0,0 @@ -{"choice":"Bli medlem eller endre medlemskapet ditt","confidence":0.95,"id":"nyinnflyttet@/"} -{"choice":"Bli medlem av Tomter Vel","confidence":0.95,"id":"nyinnflyttet@/medlem"} -{"choice":"Bli medlem eller endre medlemskapet ditt","confidence":0.95,"id":"glemte-a-betale@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"glemte-a-betale@/medlem"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"ny-epost@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"ny-epost@/medlem"} -{"choice":"Bli medlem eller endre medlemskapet ditt","confidence":0.95,"id":"flytter@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"flytter@/medlem"} -{"choice":"Meld fra om trafikkfare eller ødelagt anlegg","confidence":0.95,"id":"skolevei@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"skolevei@/melde-fra"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"busslomme@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"busslomme@/melde-fra"} -{"choice":"Meld fra om trafikkfare eller ødelagt anlegg","confidence":0.95,"id":"huske@/"} -{"choice":"Meld fra om noe ødelagt","confidence":1.0,"id":"huske@/melde-fra"} -{"choice":"Meld fra om trafikkfare eller ødelagt anlegg","confidence":0.95,"id":"bru@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"bru@/melde-fra"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"blokker@/"} -{"choice":"Meld fra om trafikkfare eller ødelagt anlegg","confidence":0.95,"id":"togtider@/"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"vafler@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"vafler@/bidra"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"motorsag@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"motorsag@/bidra"} -{"choice":"Bidra på arrangement eller i en komité","confidence":0.95,"id":"pendler@/"} -{"choice":"Sitt i en komité som betyr noe for deg","confidence":0.95,"id":"pendler@/bidra"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"planlegger@/"} -{"choice":"Sitt i en komité som betyr noe for deg","confidence":0.95,"id":"planlegger@/bidra"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"tilhenger@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"tilhenger@/naboer"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"stige@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"stige@/naboer"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"snomaking@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"snomaking@/naboer"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"nyoperert@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"nyoperert@/naboer"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":1.0,"id":"hjemmekontor@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"hjemmekontor@/naboer"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":1.0,"id":"pensjonert-elektriker@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"pensjonert-elektriker@/naboer"} diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-r3-full-seed1.jsonl b/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-r3-full-seed1.jsonl deleted file mode 100644 index 06638e5..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-r3-full-seed1.jsonl +++ /dev/null @@ -1,38 +0,0 @@ -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"nyinnflyttet@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"nyinnflyttet@/medlem"} -{"choice":"Bli medlem eller endre medlemskapet ditt","confidence":0.95,"id":"glemte-a-betale@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"glemte-a-betale@/medlem"} -{"choice":"Meld fra om trafikkfare eller ødelagt anlegg","confidence":0.95,"id":"ny-epost@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":1.0,"id":"ny-epost@/medlem"} -{"choice":"Bli medlem eller endre medlemskapet ditt","confidence":1.0,"id":"flytter@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"flytter@/medlem"} -{"choice":"Meld fra om trafikkfare eller ødelagt anlegg","confidence":0.95,"id":"skolevei@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"skolevei@/melde-fra"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"busslomme@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"busslomme@/melde-fra"} -{"choice":"Meld fra om trafikkfare eller ødelagt anlegg","confidence":0.95,"id":"huske@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"huske@/melde-fra"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"bru@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"bru@/melde-fra"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"blokker@/"} -{"choice":"Meld fra om trafikkfare eller ødelagt anlegg","confidence":0.95,"id":"togtider@/"} -{"choice":"Bidra på arrangement eller i en komité","confidence":0.95,"id":"vafler@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"vafler@/bidra"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"motorsag@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"motorsag@/bidra"} -{"choice":"Bli medlem eller endre medlemskapet ditt","confidence":0.95,"id":"pendler@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.85,"id":"pendler@/bidra"} -{"choice":"Få din mening med i høringssvaret","confidence":1.0,"id":"planlegger@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"planlegger@/bidra"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"tilhenger@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"tilhenger@/naboer"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"stige@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"stige@/naboer"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"snomaking@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"snomaking@/naboer"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"nyoperert@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"nyoperert@/naboer"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"hjemmekontor@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"hjemmekontor@/naboer"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"pensjonert-elektriker@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"pensjonert-elektriker@/naboer"} diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-r3-full-seed2.jsonl b/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-r3-full-seed2.jsonl deleted file mode 100644 index 3fe1f6f..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-r3-full-seed2.jsonl +++ /dev/null @@ -1,38 +0,0 @@ -{"choice":"Meld fra om trafikkfare eller ødelagt anlegg","confidence":0.95,"id":"nyinnflyttet@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"nyinnflyttet@/medlem"} -{"choice":"Bli medlem eller endre medlemskapet ditt","confidence":0.95,"id":"glemte-a-betale@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"glemte-a-betale@/medlem"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"ny-epost@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":1.0,"id":"ny-epost@/medlem"} -{"choice":"Bli medlem eller endre medlemskapet ditt","confidence":0.95,"id":"flytter@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"flytter@/medlem"} -{"choice":"Meld fra om trafikkfare eller ødelagt anlegg","confidence":0.95,"id":"skolevei@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"skolevei@/melde-fra"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"busslomme@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"busslomme@/melde-fra"} -{"choice":"Meld fra om trafikkfare eller ødelagt anlegg","confidence":0.95,"id":"huske@/"} -{"choice":"Meld fra om noe ødelagt","confidence":1.0,"id":"huske@/melde-fra"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"bru@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"bru@/melde-fra"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"blokker@/"} -{"choice":"Meld fra om trafikkfare eller ødelagt anlegg","confidence":0.95,"id":"togtider@/"} -{"choice":"Bidra på arrangement eller i en komité","confidence":0.95,"id":"vafler@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"vafler@/bidra"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"motorsag@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"motorsag@/bidra"} -{"choice":"Bidra på arrangement eller i en komité","confidence":0.95,"id":"pendler@/"} -{"choice":"Sitt i en komité som betyr noe for deg","confidence":0.95,"id":"pendler@/bidra"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"planlegger@/"} -{"choice":"Sitt i en komité som betyr noe for deg","confidence":0.95,"id":"planlegger@/bidra"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"tilhenger@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"tilhenger@/naboer"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"stige@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"stige@/naboer"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"snomaking@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"snomaking@/naboer"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"nyoperert@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"nyoperert@/naboer"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"hjemmekontor@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"hjemmekontor@/naboer"} -{"choice":"Få hjelp av naboer eller gi en hånd selv","confidence":0.95,"id":"pensjonert-elektriker@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"pensjonert-elektriker@/naboer"} diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-skim-seed1.jsonl b/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-skim-seed1.jsonl deleted file mode 100644 index 4285832..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-skim-seed1.jsonl +++ /dev/null @@ -1,38 +0,0 @@ -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"nyinnflyttet@/"} -{"choice":"Bli medlem av Tomter Vel","confidence":0.95,"id":"nyinnflyttet@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"glemte-a-betale@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"glemte-a-betale@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"ny-epost@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"ny-epost@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":1.0,"id":"flytter@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"flytter@/medlem"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"skolevei@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"skolevei@/melde-fra"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"busslomme@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"busslomme@/melde-fra"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"huske@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"huske@/melde-fra"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"bru@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"bru@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"blokker@/"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"togtider@/"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"vafler@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"vafler@/bidra"} -{"choice":"Bli med og gjør en innsats","confidence":0.95,"id":"motorsag@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"motorsag@/bidra"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"pendler@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.85,"id":"pendler@/bidra"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"planlegger@/"} -{"choice":"Sitt i en komité som betyr noe for deg","confidence":0.85,"id":"planlegger@/bidra"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"tilhenger@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"tilhenger@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"stige@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"stige@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"snomaking@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"snomaking@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"nyoperert@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"nyoperert@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"hjemmekontor@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"hjemmekontor@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"pensjonert-elektriker@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"pensjonert-elektriker@/naboer"} diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-skim-seed2.jsonl b/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-skim-seed2.jsonl deleted file mode 100644 index cee1813..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-skim-seed2.jsonl +++ /dev/null @@ -1,38 +0,0 @@ -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"nyinnflyttet@/"} -{"choice":"Bli medlem av Tomter Vel","confidence":0.95,"id":"nyinnflyttet@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"glemte-a-betale@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"glemte-a-betale@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"ny-epost@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"ny-epost@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"flytter@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"flytter@/medlem"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"skolevei@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"skolevei@/melde-fra"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"busslomme@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"busslomme@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"huske@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"huske@/melde-fra"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"bru@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"bru@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"blokker@/"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"togtider@/"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"vafler@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"vafler@/bidra"} -{"choice":"Bli med og gjør en innsats","confidence":0.95,"id":"motorsag@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"motorsag@/bidra"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"pendler@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.85,"id":"pendler@/bidra"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"planlegger@/"} -{"choice":"Sitt i en komité som betyr noe for deg","confidence":0.95,"id":"planlegger@/bidra"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"tilhenger@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"tilhenger@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"stige@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"stige@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"snomaking@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"snomaking@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"nyoperert@/"} -{"choice":"Få en nabo til å stille opp","confidence":0.95,"id":"nyoperert@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"hjemmekontor@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"hjemmekontor@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"pensjonert-elektriker@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"pensjonert-elektriker@/naboer"} diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-skim-seed3.jsonl b/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-skim-seed3.jsonl deleted file mode 100644 index 357ae7b..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-skim-seed3.jsonl +++ /dev/null @@ -1,38 +0,0 @@ -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"nyinnflyttet@/"} -{"choice":"Bli medlem av Tomter Vel","confidence":0.95,"id":"nyinnflyttet@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"glemte-a-betale@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"glemte-a-betale@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"ny-epost@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"ny-epost@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"flytter@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"flytter@/medlem"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"skolevei@/"} -{"choice":"Meld fra om en trafikkfare","confidence":1.0,"id":"skolevei@/melde-fra"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"busslomme@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"busslomme@/melde-fra"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"huske@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"huske@/melde-fra"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"bru@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"bru@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"blokker@/"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"togtider@/"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"vafler@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"vafler@/bidra"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"motorsag@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"motorsag@/bidra"} -{"choice":"Bli med og gjør en innsats","confidence":0.95,"id":"pendler@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.85,"id":"pendler@/bidra"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"planlegger@/"} -{"choice":"Sitt i en komité som betyr noe for deg","confidence":0.85,"id":"planlegger@/bidra"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"tilhenger@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"tilhenger@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"stige@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"stige@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"snomaking@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"snomaking@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"nyoperert@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"nyoperert@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"hjemmekontor@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"hjemmekontor@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"pensjonert-elektriker@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"pensjonert-elektriker@/naboer"} diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-skim.jsonl b/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-skim.jsonl deleted file mode 100644 index 55d0a89..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/answers-skim.jsonl +++ /dev/null @@ -1,38 +0,0 @@ -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"nyinnflyttet@/"} -{"choice":"Bli medlem av Tomter Vel","confidence":0.95,"id":"nyinnflyttet@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"glemte-a-betale@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"glemte-a-betale@/medlem"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"ny-epost@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"ny-epost@/medlem"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"flytter@/"} -{"choice":"Oppdater eller avslutt medlemskapet","confidence":0.95,"id":"flytter@/medlem"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"skolevei@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"skolevei@/melde-fra"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"busslomme@/"} -{"choice":"Meld fra om en trafikkfare","confidence":0.95,"id":"busslomme@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"huske@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"huske@/melde-fra"} -{"choice":"Bli medlem eller endre opplysningene dine","confidence":0.95,"id":"bru@/"} -{"choice":"Meld fra om noe ødelagt","confidence":0.95,"id":"bru@/melde-fra"} -{"choice":"Meld fra om noe som bør fikses","confidence":0.95,"id":"blokker@/"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"togtider@/"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"vafler@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"vafler@/bidra"} -{"choice":"Bli med og gjør en innsats","confidence":0.95,"id":"motorsag@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.95,"id":"motorsag@/bidra"} -{"choice":"Bli med og gjør en innsats","confidence":0.95,"id":"pendler@/"} -{"choice":"Bli med på dugnad eller arrangement","confidence":0.85,"id":"pendler@/bidra"} -{"choice":"Få din mening med i høringssvaret","confidence":0.95,"id":"planlegger@/"} -{"choice":"Sitt i en komité som betyr noe for deg","confidence":0.95,"id":"planlegger@/bidra"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"tilhenger@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"tilhenger@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"stige@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"stige@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"snomaking@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"snomaking@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"nyoperert@/"} -{"choice":"Lån ut eller lån av naboen","confidence":0.95,"id":"nyoperert@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":0.95,"id":"hjemmekontor@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"hjemmekontor@/naboer"} -{"choice":"Få hjelp av naboer, eller gi en hånd selv","confidence":1.0,"id":"pensjonert-elektriker@/"} -{"choice":"Bli spurt når en nabo trenger en hånd","confidence":0.95,"id":"pensjonert-elektriker@/naboer"} diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/cold-front.json b/vendor/trainer/runs/tomtervel-opener-2026-09-23/cold-front.json deleted file mode 100644 index 4f64047..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/cold-front.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "questions/index.yaml": { - "question": "Hva omfatter Tomter Vels virksomhet, og hvilke tjenester kan det anmodes om her?", - "description": "Velforeningen for Tomter ble stiftet i 1947 og driftes på frivillig basis av lokalbefolkningen. Enhver henvendelse som fremsettes her, blir videreformidlet til komité eller styret for videre saksbehandling, og status i den enkelte sak kan følges av vedkommende selv.", - "opener": { - "heading": null, - "description": "Velforeningen for Tomter ble stiftet i 1947 og driftes på frivillig basis av lokalbefolkningen. Enhver henvendelse som fremsettes her, blir videreformidlet til komité eller styret for videre saksbehandling, og status i den enkelte sak kan følges av vedkommende selv." - }, - "doors": { - "bidra": { - "heading": "Vedrørende deltakelse og frivillig innsats", - "description": "Det foreligger behov for bemanning i forbindelse med 17. mai-arrangementet, dugnader samt komitéarbeid. Enhver bidragsyting, uavhengig av omfang, vil kunne mottas." - }, - "medlem": { - "heading": "Vedrørende medlemskap og endring av registrerte opplysninger", - "description": "Innmelding, innbetaling av kontingent samt melding om flytting, endret e-postadresse eller utmelding kan foretas her." - }, - "melde-fra": { - "heading": "Vedrørende melding om forhold som bør utbedres", - "description": "Dersom det er konstatert farlige forhold i trafikken, eller skader på lekeplass eller elvesti, bes dette meldt inn." - }, - "naboer": { - "heading": "Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand", - "description": "Ved behov for bistand til snømåking, innkjøp eller transport, eller dersom det kan tilbys bistand overfor andre, kan kontakt etableres her." - } - } - } -} diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/iris.log b/vendor/trainer/runs/tomtervel-opener-2026-09-23/iris.log deleted file mode 100644 index b4b648a..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/iris.log +++ /dev/null @@ -1,31 +0,0 @@ -OK: 32 question(s), 13 aggregate(s) valid -OK: access policy, 113 rule(s), validates -need "bli-medlem": / [Bli medlem eller endre opplysningene dine] -> /medlem [Bli medlem av Tomter Vel] -> "husstander" -need "endre-medlemskap": / [Bli medlem eller endre opplysningene dine] -> /medlem [Oppdater eller avslutt medlemskapet] -> "medlemsendringer" -need "trafikkfare": / [Meld fra om noe som bør fikses] -> /melde-fra [Meld fra om en trafikkfare] -> "trafikkmeldinger" -need "anleggsfeil": / [Meld fra om noe som bør fikses] -> /melde-fra [Meld fra om noe ødelagt] -> "anleggsfeil" -need "horingsinnspill": / [Få din mening med i høringssvaret] -> "innspill" -need "hjelpe-til": / [Bli med og gjør en innsats] -> /bidra [Bli med på dugnad eller arrangement] -> "frivillige" -need "komite": / [Bli med og gjør en innsats] -> /bidra [Sitt i en komité som betyr noe for deg] -> "komitesoknader" -need "trenger-hjelp": / [Få hjelp av naboer, eller gi en hånd selv] -> /naboer [Få en nabo til å stille opp] -> "hjelpebehov" -need "kan-hjelpe": / [Få hjelp av naboer, eller gi en hånd selv] -> /naboer [Bli spurt når en nabo trenger en hånd] -> "hjelpere" -need "dele-utstyr": / [Få hjelp av naboer, eller gi en hånd selv] -> /naboer [Lån ut eller lån av naboen] -> "oppslag" -need "utlegg": /komiteer/utlegg [Få pengene tilbake] -> "utlegg" -OK: 11 need(s) structurally met, 0 planned, 21 persona(s) -wrote the simulation model to model.json -wrote 38 wording task(s) to tasks-full.jsonl -OK: 32 question(s), 13 aggregate(s) valid -OK: access policy, 113 rule(s), validates -need "bli-medlem": / [Bli medlem eller endre opplysningene dine] -> /medlem [Bli medlem av Tomter Vel] -> "husstander" -need "endre-medlemskap": / [Bli medlem eller endre opplysningene dine] -> /medlem [Oppdater eller avslutt medlemskapet] -> "medlemsendringer" -need "trafikkfare": / [Meld fra om noe som bør fikses] -> /melde-fra [Meld fra om en trafikkfare] -> "trafikkmeldinger" -need "anleggsfeil": / [Meld fra om noe som bør fikses] -> /melde-fra [Meld fra om noe ødelagt] -> "anleggsfeil" -need "horingsinnspill": / [Få din mening med i høringssvaret] -> "innspill" -need "hjelpe-til": / [Bli med og gjør en innsats] -> /bidra [Bli med på dugnad eller arrangement] -> "frivillige" -need "komite": / [Bli med og gjør en innsats] -> /bidra [Sitt i en komité som betyr noe for deg] -> "komitesoknader" -need "trenger-hjelp": / [Få hjelp av naboer, eller gi en hånd selv] -> /naboer [Få en nabo til å stille opp] -> "hjelpebehov" -need "kan-hjelpe": / [Få hjelp av naboer, eller gi en hånd selv] -> /naboer [Bli spurt når en nabo trenger en hånd] -> "hjelpere" -need "dele-utstyr": / [Få hjelp av naboer, eller gi en hånd selv] -> /naboer [Lån ut eller lån av naboen] -> "oppslag" -need "utlegg": /komiteer/utlegg [Få pengene tilbake] -> "utlegg" -OK: 11 need(s) structurally met, 0 planned, 21 persona(s) -wrote 38 wording task(s) to tasks-skim.jsonl diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/model-cold.json b/vendor/trainer/runs/tomtervel-opener-2026-09-23/model-cold.json deleted file mode 100644 index 50eb3b9..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/model-cold.json +++ /dev/null @@ -1,1576 +0,0 @@ -{ - "needs": [ - { - "id": "bli-medlem", - "who": "en husstand i Tomter", - "wants": "å bli medlem og få betalt kontingenten", - "enters_as": null, - "lands_in": "husstander", - "handled_by": "kasserer", - "done_when": [ - "betalt", - "utmeldt" - ], - "success": [ - "betalt" - ], - "steps": [ - { - "page": "/", - "question": "Hva omfatter Tomter Vels virksomhet, og hvilke tjenester kan det anmodes om her?", - "context": "What we do: Velforeningen for Tomter ble stiftet i 1947 og driftes på frivillig basis av lokalbefolkningen. Enhver henvendelse som fremsettes her, blir videreformidlet til komité eller styret for videre saksbehandling, og status i den enkelte sak kan følges av vedkommende selv. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Vedrørende medlemskap og endring av registrerte opplysninger", - "description": "Innmelding, innbetaling av kontingent samt melding om flytting, endret e-postadresse eller utmelding kan foretas her." - }, - { - "name": "Vedrørende melding om forhold som bør utbedres", - "description": "Dersom det er konstatert farlige forhold i trafikken, eller skader på lekeplass eller elvesti, bes dette meldt inn." - }, - { - "name": "Vedrørende deltakelse og frivillig innsats", - "description": "Det foreligger behov for bemanning i forbindelse med 17. mai-arrangementet, dugnader samt komitéarbeid. Enhver bidragsyting, uavhengig av omfang, vil kunne mottas." - }, - { - "name": "Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand", - "description": "Ved behov for bistand til snømåking, innkjøp eller transport, eller dersom det kan tilbys bistand overfor andre, kan kontakt etableres her." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Vedrørende medlemskap og endring av registrerte opplysninger" - ], - "alternative": "Vedrørende medlemskap og endring av registrerte opplysninger", - "fields": [] - }, - { - "page": "/medlem", - "question": "Vil du bli medlem, eller endre medlemskapet ditt?", - "context": "", - "options": [ - { - "name": "Bli medlem av Tomter Vel", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet." - }, - { - "name": "Oppdater eller avslutt medlemskapet", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger." - } - ], - "expect": [ - "Bli medlem av Tomter Vel" - ], - "alternative": "Bli medlem av Tomter Vel", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "adresse", - "label": "Adresse", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "telefon", - "label": "Telefon", - "type": "tel", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "endre-medlemskap", - "who": "et medlem som har flyttet, byttet e-post eller vil melde seg ut", - "wants": "at velet har riktige opplysninger om dem", - "enters_as": null, - "lands_in": "medlemsendringer", - "handled_by": "kasserer", - "done_when": [ - "oppdatert" - ], - "success": [ - "oppdatert" - ], - "steps": [ - { - "page": "/", - "question": "Hva omfatter Tomter Vels virksomhet, og hvilke tjenester kan det anmodes om her?", - "context": "What we do: Velforeningen for Tomter ble stiftet i 1947 og driftes på frivillig basis av lokalbefolkningen. Enhver henvendelse som fremsettes her, blir videreformidlet til komité eller styret for videre saksbehandling, og status i den enkelte sak kan følges av vedkommende selv. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Vedrørende medlemskap og endring av registrerte opplysninger", - "description": "Innmelding, innbetaling av kontingent samt melding om flytting, endret e-postadresse eller utmelding kan foretas her." - }, - { - "name": "Vedrørende melding om forhold som bør utbedres", - "description": "Dersom det er konstatert farlige forhold i trafikken, eller skader på lekeplass eller elvesti, bes dette meldt inn." - }, - { - "name": "Vedrørende deltakelse og frivillig innsats", - "description": "Det foreligger behov for bemanning i forbindelse med 17. mai-arrangementet, dugnader samt komitéarbeid. Enhver bidragsyting, uavhengig av omfang, vil kunne mottas." - }, - { - "name": "Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand", - "description": "Ved behov for bistand til snømåking, innkjøp eller transport, eller dersom det kan tilbys bistand overfor andre, kan kontakt etableres her." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Vedrørende medlemskap og endring av registrerte opplysninger" - ], - "alternative": "Vedrørende medlemskap og endring av registrerte opplysninger", - "fields": [] - }, - { - "page": "/medlem", - "question": "Vil du bli medlem, eller endre medlemskapet ditt?", - "context": "", - "options": [ - { - "name": "Bli medlem av Tomter Vel", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet." - }, - { - "name": "Oppdater eller avslutt medlemskapet", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger." - } - ], - "expect": [ - "Oppdater eller avslutt medlemskapet" - ], - "alternative": "Oppdater eller avslutt medlemskapet", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "adresse", - "label": "Adresse", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "hva_er_nytt", - "label": "Hva vil du endre?", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "trafikkfare", - "who": "en som har sett et farlig sted i trafikken", - "wants": "at velet tar det opp med kommunen eller den som eier veien", - "enters_as": null, - "lands_in": "trafikkmeldinger", - "handled_by": "trafikk", - "done_when": [ - "ordnet", - "avvist" - ], - "success": [ - "ordnet" - ], - "steps": [ - { - "page": "/", - "question": "Hva omfatter Tomter Vels virksomhet, og hvilke tjenester kan det anmodes om her?", - "context": "What we do: Velforeningen for Tomter ble stiftet i 1947 og driftes på frivillig basis av lokalbefolkningen. Enhver henvendelse som fremsettes her, blir videreformidlet til komité eller styret for videre saksbehandling, og status i den enkelte sak kan følges av vedkommende selv. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Vedrørende medlemskap og endring av registrerte opplysninger", - "description": "Innmelding, innbetaling av kontingent samt melding om flytting, endret e-postadresse eller utmelding kan foretas her." - }, - { - "name": "Vedrørende melding om forhold som bør utbedres", - "description": "Dersom det er konstatert farlige forhold i trafikken, eller skader på lekeplass eller elvesti, bes dette meldt inn." - }, - { - "name": "Vedrørende deltakelse og frivillig innsats", - "description": "Det foreligger behov for bemanning i forbindelse med 17. mai-arrangementet, dugnader samt komitéarbeid. Enhver bidragsyting, uavhengig av omfang, vil kunne mottas." - }, - { - "name": "Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand", - "description": "Ved behov for bistand til snømåking, innkjøp eller transport, eller dersom det kan tilbys bistand overfor andre, kan kontakt etableres her." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Vedrørende melding om forhold som bør utbedres" - ], - "alternative": "Vedrørende melding om forhold som bør utbedres", - "fields": [] - }, - { - "page": "/melde-fra", - "question": "Hva vil du melde fra om?", - "context": "", - "options": [ - { - "name": "Meld fra om en trafikkfare", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre." - }, - { - "name": "Meld fra om noe ødelagt", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det." - } - ], - "expect": [ - "Meld fra om en trafikkfare" - ], - "alternative": "Meld fra om en trafikkfare", - "fields": [ - { - "name": "hvor", - "label": "Hvor var det", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "hva", - "label": "Hva så du", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "epost", - "label": "E-post (valgfritt)", - "type": "email", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "anleggsfeil", - "who": "en som ser at noe på lekeplassen eller stien er ødelagt", - "wants": "at det blir fikset før noen skader seg", - "enters_as": null, - "lands_in": "anleggsfeil", - "handled_by": "lekeplasser", - "done_when": [ - "utbedret" - ], - "success": [ - "utbedret" - ], - "steps": [ - { - "page": "/", - "question": "Hva omfatter Tomter Vels virksomhet, og hvilke tjenester kan det anmodes om her?", - "context": "What we do: Velforeningen for Tomter ble stiftet i 1947 og driftes på frivillig basis av lokalbefolkningen. Enhver henvendelse som fremsettes her, blir videreformidlet til komité eller styret for videre saksbehandling, og status i den enkelte sak kan følges av vedkommende selv. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Vedrørende medlemskap og endring av registrerte opplysninger", - "description": "Innmelding, innbetaling av kontingent samt melding om flytting, endret e-postadresse eller utmelding kan foretas her." - }, - { - "name": "Vedrørende melding om forhold som bør utbedres", - "description": "Dersom det er konstatert farlige forhold i trafikken, eller skader på lekeplass eller elvesti, bes dette meldt inn." - }, - { - "name": "Vedrørende deltakelse og frivillig innsats", - "description": "Det foreligger behov for bemanning i forbindelse med 17. mai-arrangementet, dugnader samt komitéarbeid. Enhver bidragsyting, uavhengig av omfang, vil kunne mottas." - }, - { - "name": "Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand", - "description": "Ved behov for bistand til snømåking, innkjøp eller transport, eller dersom det kan tilbys bistand overfor andre, kan kontakt etableres her." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Vedrørende melding om forhold som bør utbedres" - ], - "alternative": "Vedrørende melding om forhold som bør utbedres", - "fields": [] - }, - { - "page": "/melde-fra", - "question": "Hva vil du melde fra om?", - "context": "", - "options": [ - { - "name": "Meld fra om en trafikkfare", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre." - }, - { - "name": "Meld fra om noe ødelagt", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det." - } - ], - "expect": [ - "Meld fra om noe ødelagt" - ], - "alternative": "Meld fra om noe ødelagt", - "fields": [ - { - "name": "hvor", - "label": "Hvor er det", - "type": "select", - "optional": false, - "options": [ - "Lekeplassen", - "Elvestien", - "Skøytebanen", - "Et annet sted" - ] - }, - { - "name": "hva", - "label": "Hva er ødelagt", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "horingsinnspill", - "who": "en beboer som har en mening om en sak kommunen har på høring", - "wants": "at velet tar det med i sitt svar", - "enters_as": null, - "lands_in": "innspill", - "handled_by": "horingsinstans", - "done_when": [ - "tatt_med", - "ikke_tatt_med" - ], - "success": [ - "tatt_med" - ], - "steps": [ - { - "page": "/", - "question": "Hva omfatter Tomter Vels virksomhet, og hvilke tjenester kan det anmodes om her?", - "context": "What we do: Velforeningen for Tomter ble stiftet i 1947 og driftes på frivillig basis av lokalbefolkningen. Enhver henvendelse som fremsettes her, blir videreformidlet til komité eller styret for videre saksbehandling, og status i den enkelte sak kan følges av vedkommende selv. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Vedrørende medlemskap og endring av registrerte opplysninger", - "description": "Innmelding, innbetaling av kontingent samt melding om flytting, endret e-postadresse eller utmelding kan foretas her." - }, - { - "name": "Vedrørende melding om forhold som bør utbedres", - "description": "Dersom det er konstatert farlige forhold i trafikken, eller skader på lekeplass eller elvesti, bes dette meldt inn." - }, - { - "name": "Vedrørende deltakelse og frivillig innsats", - "description": "Det foreligger behov for bemanning i forbindelse med 17. mai-arrangementet, dugnader samt komitéarbeid. Enhver bidragsyting, uavhengig av omfang, vil kunne mottas." - }, - { - "name": "Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand", - "description": "Ved behov for bistand til snømåking, innkjøp eller transport, eller dersom det kan tilbys bistand overfor andre, kan kontakt etableres her." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Få din mening med i høringssvaret" - ], - "alternative": "Få din mening med i høringssvaret", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "sak", - "label": "Hvilken sak gjelder det?", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "innspill", - "label": "Hva mener du?", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "hjelpe-til", - "who": "en som vil hjelpe til på et arrangement eller en dugnad", - "wants": "å bli satt opp på noe som passer dem", - "enters_as": null, - "lands_in": "frivillige", - "handled_by": "arrangementer", - "done_when": [ - "satt_opp", - "takket_nei" - ], - "success": [ - "satt_opp" - ], - "steps": [ - { - "page": "/", - "question": "Hva omfatter Tomter Vels virksomhet, og hvilke tjenester kan det anmodes om her?", - "context": "What we do: Velforeningen for Tomter ble stiftet i 1947 og driftes på frivillig basis av lokalbefolkningen. Enhver henvendelse som fremsettes her, blir videreformidlet til komité eller styret for videre saksbehandling, og status i den enkelte sak kan følges av vedkommende selv. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Vedrørende medlemskap og endring av registrerte opplysninger", - "description": "Innmelding, innbetaling av kontingent samt melding om flytting, endret e-postadresse eller utmelding kan foretas her." - }, - { - "name": "Vedrørende melding om forhold som bør utbedres", - "description": "Dersom det er konstatert farlige forhold i trafikken, eller skader på lekeplass eller elvesti, bes dette meldt inn." - }, - { - "name": "Vedrørende deltakelse og frivillig innsats", - "description": "Det foreligger behov for bemanning i forbindelse med 17. mai-arrangementet, dugnader samt komitéarbeid. Enhver bidragsyting, uavhengig av omfang, vil kunne mottas." - }, - { - "name": "Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand", - "description": "Ved behov for bistand til snømåking, innkjøp eller transport, eller dersom det kan tilbys bistand overfor andre, kan kontakt etableres her." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Vedrørende deltakelse og frivillig innsats" - ], - "alternative": "Vedrørende deltakelse og frivillig innsats", - "fields": [] - }, - { - "page": "/bidra", - "question": "Vil du hjelpe til i nabolaget?", - "context": "", - "options": [ - { - "name": "Bli med på dugnad eller arrangement", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer." - }, - { - "name": "Sitt i en komité som betyr noe for deg", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i." - } - ], - "expect": [ - "Bli med på dugnad eller arrangement" - ], - "alternative": "Bli med på dugnad eller arrangement", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "telefon", - "label": "Telefon", - "type": "tel", - "optional": false, - "options": [] - }, - { - "name": "hva", - "label": "Hva kan du hjelpe til med?", - "type": "select", - "optional": false, - "options": [ - "17. mai", - "Juletregranstenning", - "Skøytedag", - "Dugnad på elvestien", - "Det som trengs" - ] - } - ] - } - ] - }, - { - "id": "komite", - "who": "en som vil sitte i en komité", - "wants": "en plass i den komiteen som driver med det de bryr seg om", - "enters_as": null, - "lands_in": "komitesoknader", - "handled_by": "styret", - "done_when": [ - "plassert", - "avslatt" - ], - "success": [ - "plassert" - ], - "steps": [ - { - "page": "/", - "question": "Hva omfatter Tomter Vels virksomhet, og hvilke tjenester kan det anmodes om her?", - "context": "What we do: Velforeningen for Tomter ble stiftet i 1947 og driftes på frivillig basis av lokalbefolkningen. Enhver henvendelse som fremsettes her, blir videreformidlet til komité eller styret for videre saksbehandling, og status i den enkelte sak kan følges av vedkommende selv. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Vedrørende medlemskap og endring av registrerte opplysninger", - "description": "Innmelding, innbetaling av kontingent samt melding om flytting, endret e-postadresse eller utmelding kan foretas her." - }, - { - "name": "Vedrørende melding om forhold som bør utbedres", - "description": "Dersom det er konstatert farlige forhold i trafikken, eller skader på lekeplass eller elvesti, bes dette meldt inn." - }, - { - "name": "Vedrørende deltakelse og frivillig innsats", - "description": "Det foreligger behov for bemanning i forbindelse med 17. mai-arrangementet, dugnader samt komitéarbeid. Enhver bidragsyting, uavhengig av omfang, vil kunne mottas." - }, - { - "name": "Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand", - "description": "Ved behov for bistand til snømåking, innkjøp eller transport, eller dersom det kan tilbys bistand overfor andre, kan kontakt etableres her." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Vedrørende deltakelse og frivillig innsats" - ], - "alternative": "Vedrørende deltakelse og frivillig innsats", - "fields": [] - }, - { - "page": "/bidra", - "question": "Vil du hjelpe til i nabolaget?", - "context": "", - "options": [ - { - "name": "Bli med på dugnad eller arrangement", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer." - }, - { - "name": "Sitt i en komité som betyr noe for deg", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i." - } - ], - "expect": [ - "Sitt i en komité som betyr noe for deg" - ], - "alternative": "Sitt i en komité som betyr noe for deg", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "epost", - "label": "E-post", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "komite", - "label": "Hvilken komité?", - "type": "select", - "optional": false, - "options": [ - "Arrangementer", - "Elvesti", - "Høringsinstans", - "Leke- og møteplasser", - "Miljøgate", - "Pendlerforhold", - "Trafikkforhold" - ] - } - ] - } - ] - }, - { - "id": "trenger-hjelp", - "who": "en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss", - "wants": "at en nabo stiller opp", - "enters_as": null, - "lands_in": "hjelpebehov", - "handled_by": "nabohjelp", - "done_when": [ - "ordnet", - "ikke_lost" - ], - "success": [ - "ordnet" - ], - "steps": [ - { - "page": "/", - "question": "Hva omfatter Tomter Vels virksomhet, og hvilke tjenester kan det anmodes om her?", - "context": "What we do: Velforeningen for Tomter ble stiftet i 1947 og driftes på frivillig basis av lokalbefolkningen. Enhver henvendelse som fremsettes her, blir videreformidlet til komité eller styret for videre saksbehandling, og status i den enkelte sak kan følges av vedkommende selv. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Vedrørende medlemskap og endring av registrerte opplysninger", - "description": "Innmelding, innbetaling av kontingent samt melding om flytting, endret e-postadresse eller utmelding kan foretas her." - }, - { - "name": "Vedrørende melding om forhold som bør utbedres", - "description": "Dersom det er konstatert farlige forhold i trafikken, eller skader på lekeplass eller elvesti, bes dette meldt inn." - }, - { - "name": "Vedrørende deltakelse og frivillig innsats", - "description": "Det foreligger behov for bemanning i forbindelse med 17. mai-arrangementet, dugnader samt komitéarbeid. Enhver bidragsyting, uavhengig av omfang, vil kunne mottas." - }, - { - "name": "Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand", - "description": "Ved behov for bistand til snømåking, innkjøp eller transport, eller dersom det kan tilbys bistand overfor andre, kan kontakt etableres her." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand" - ], - "alternative": "Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand", - "fields": [] - }, - { - "page": "/naboer", - "question": "Trenger du en hånd, eller kan du gi en?", - "context": "", - "options": [ - { - "name": "Få en nabo til å stille opp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp." - }, - { - "name": "Bli spurt når en nabo trenger en hånd", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer." - }, - { - "name": "Lån ut eller lån av naboen", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det." - } - ], - "expect": [ - "Få en nabo til å stille opp" - ], - "alternative": "Få en nabo til å stille opp", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "E-post", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "adresse", - "label": "Adresse", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "hva", - "label": "Hva trenger du hjelp til", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "telefon", - "label": "Telefon", - "type": "tel", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "kan-hjelpe", - "who": "en nabo som kan stille opp når noen trenger det", - "wants": "å bli spurt når det passer", - "enters_as": null, - "lands_in": "hjelpere", - "handled_by": "nabohjelp", - "done_when": [ - "registrert", - "trukket" - ], - "success": [ - "registrert" - ], - "steps": [ - { - "page": "/", - "question": "Hva omfatter Tomter Vels virksomhet, og hvilke tjenester kan det anmodes om her?", - "context": "What we do: Velforeningen for Tomter ble stiftet i 1947 og driftes på frivillig basis av lokalbefolkningen. Enhver henvendelse som fremsettes her, blir videreformidlet til komité eller styret for videre saksbehandling, og status i den enkelte sak kan følges av vedkommende selv. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Vedrørende medlemskap og endring av registrerte opplysninger", - "description": "Innmelding, innbetaling av kontingent samt melding om flytting, endret e-postadresse eller utmelding kan foretas her." - }, - { - "name": "Vedrørende melding om forhold som bør utbedres", - "description": "Dersom det er konstatert farlige forhold i trafikken, eller skader på lekeplass eller elvesti, bes dette meldt inn." - }, - { - "name": "Vedrørende deltakelse og frivillig innsats", - "description": "Det foreligger behov for bemanning i forbindelse med 17. mai-arrangementet, dugnader samt komitéarbeid. Enhver bidragsyting, uavhengig av omfang, vil kunne mottas." - }, - { - "name": "Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand", - "description": "Ved behov for bistand til snømåking, innkjøp eller transport, eller dersom det kan tilbys bistand overfor andre, kan kontakt etableres her." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand" - ], - "alternative": "Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand", - "fields": [] - }, - { - "page": "/naboer", - "question": "Trenger du en hånd, eller kan du gi en?", - "context": "", - "options": [ - { - "name": "Få en nabo til å stille opp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp." - }, - { - "name": "Bli spurt når en nabo trenger en hånd", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer." - }, - { - "name": "Lån ut eller lån av naboen", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det." - } - ], - "expect": [ - "Bli spurt når en nabo trenger en hånd" - ], - "alternative": "Bli spurt når en nabo trenger en hånd", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "E-post", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "telefon", - "label": "Telefon", - "type": "tel", - "optional": false, - "options": [] - }, - { - "name": "kan", - "label": "Hva kan du hjelpe med", - "type": "select", - "optional": false, - "options": [ - "Snømåking", - "Handling", - "Kjøring", - "Småfiks i huset", - "En prat og litt selskap", - "Det som trengs" - ] - } - ] - } - ] - }, - { - "id": "dele-utstyr", - "who": "en nabo som har noe å låne ut, eller trenger å låne noe", - "wants": "et oppslag som naboene ser", - "enters_as": null, - "lands_in": "oppslag", - "handled_by": "styret", - "done_when": [ - "lagt_ut", - "tatt_ned" - ], - "success": [ - "lagt_ut" - ], - "steps": [ - { - "page": "/", - "question": "Hva omfatter Tomter Vels virksomhet, og hvilke tjenester kan det anmodes om her?", - "context": "What we do: Velforeningen for Tomter ble stiftet i 1947 og driftes på frivillig basis av lokalbefolkningen. Enhver henvendelse som fremsettes her, blir videreformidlet til komité eller styret for videre saksbehandling, og status i den enkelte sak kan følges av vedkommende selv. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Vedrørende medlemskap og endring av registrerte opplysninger", - "description": "Innmelding, innbetaling av kontingent samt melding om flytting, endret e-postadresse eller utmelding kan foretas her." - }, - { - "name": "Vedrørende melding om forhold som bør utbedres", - "description": "Dersom det er konstatert farlige forhold i trafikken, eller skader på lekeplass eller elvesti, bes dette meldt inn." - }, - { - "name": "Vedrørende deltakelse og frivillig innsats", - "description": "Det foreligger behov for bemanning i forbindelse med 17. mai-arrangementet, dugnader samt komitéarbeid. Enhver bidragsyting, uavhengig av omfang, vil kunne mottas." - }, - { - "name": "Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand", - "description": "Ved behov for bistand til snømåking, innkjøp eller transport, eller dersom det kan tilbys bistand overfor andre, kan kontakt etableres her." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand" - ], - "alternative": "Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand", - "fields": [] - }, - { - "page": "/naboer", - "question": "Trenger du en hånd, eller kan du gi en?", - "context": "", - "options": [ - { - "name": "Få en nabo til å stille opp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp." - }, - { - "name": "Bli spurt når en nabo trenger en hånd", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer." - }, - { - "name": "Lån ut eller lån av naboen", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det." - } - ], - "expect": [ - "Lån ut eller lån av naboen" - ], - "alternative": "Lån ut eller lån av naboen", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "E-post", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "har_eller_trenger", - "label": "Har du eller trenger du", - "type": "select", - "optional": false, - "options": [ - "Jeg har noe å låne ut", - "Jeg trenger å låne noe" - ] - }, - { - "name": "hva", - "label": "Hva gjelder det", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "utlegg", - "who": "en i en komité som har lagt ut for noe", - "wants": "pengene tilbake", - "enters_as": "komiteer", - "lands_in": "utlegg", - "handled_by": "kasserer", - "done_when": [ - "utbetalt", - "avvist" - ], - "success": [ - "utbetalt" - ], - "steps": [ - { - "page": "/komiteer/utlegg", - "question": "Har du lagt ut penger for komiteen og vil ha dem tilbake?", - "context": "", - "options": [ - { - "name": "Få pengene tilbake", - "description": "Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten." - } - ], - "expect": [ - "Få pengene tilbake" - ], - "alternative": "Få pengene tilbake", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "belop", - "label": "Beløp", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "hva", - "label": "Hva gjaldt det", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - } - ], - "buckets": { - "husstander": { - "initial": "open", - "transitions": { - "open": [ - "betalt", - "utmeldt" - ] - }, - "words": { - "betalt": "betalt", - "open": "mottatt", - "utmeldt": "meldt ut" - }, - "desks": [ - { - "page": "/kasserer", - "group": "kasserer", - "moves": [ - { - "from": "open", - "to": "betalt", - "label": "Registrer betaling" - }, - { - "from": "open", - "to": "utmeldt", - "label": "Meld ut" - } - ] - } - ], - "self_moves": [ - "utmeldt" - ] - }, - "medlemsendringer": { - "initial": "open", - "transitions": { - "open": [ - "oppdatert" - ] - }, - "words": { - "open": "mottatt", - "oppdatert": "oppdatert" - }, - "desks": [ - { - "page": "/kasserer", - "group": "kasserer", - "moves": [ - { - "from": "open", - "to": "oppdatert", - "label": "Registrer endring" - } - ] - } - ], - "self_moves": [] - }, - "trafikkmeldinger": { - "initial": "open", - "transitions": { - "tatt_opp": [ - "ordnet", - "avvist" - ], - "open": [ - "tatt_opp", - "avvist" - ] - }, - "words": { - "avvist": "avvist", - "open": "mottatt", - "ordnet": "ordnet", - "tatt_opp": "tatt opp med kommunen" - }, - "desks": [ - { - "page": "/status/trafikkmeldinger", - "group": null, - "moves": [] - }, - { - "page": "/styret", - "group": "styret", - "moves": [] - }, - { - "page": "/trafikk", - "group": "trafikk", - "moves": [ - { - "from": "open", - "to": "tatt_opp", - "label": "Ta opp med kommunen" - }, - { - "from": "open", - "to": "avvist", - "label": "Avvis meldingen" - }, - { - "from": "tatt_opp", - "to": "ordnet", - "label": "Meld ordnet" - }, - { - "from": "tatt_opp", - "to": "avvist", - "label": "Avvis meldingen" - } - ] - } - ], - "self_moves": [] - }, - "anleggsfeil": { - "initial": "open", - "transitions": { - "tatt_tak_i": [ - "utbedret" - ], - "open": [ - "tatt_tak_i" - ] - }, - "words": { - "open": "mottatt", - "tatt_tak_i": "tatt tak i", - "utbedret": "utbedret" - }, - "desks": [ - { - "page": "/lekeplasser", - "group": "lekeplasser", - "moves": [ - { - "from": "open", - "to": "tatt_tak_i", - "label": "Ta tak i saken" - }, - { - "from": "tatt_tak_i", - "to": "utbedret", - "label": "Merk som utbedret" - } - ] - }, - { - "page": "/status/anleggsfeil", - "group": null, - "moves": [] - } - ], - "self_moves": [] - }, - "innspill": { - "initial": "open", - "transitions": { - "open": [ - "tatt_med", - "ikke_tatt_med" - ] - }, - "words": { - "ikke_tatt_med": "ikke tatt med", - "open": "mottatt", - "tatt_med": "tatt med i høringssvaret" - }, - "desks": [ - { - "page": "/horingsinstans", - "group": "horingsinstans", - "moves": [ - { - "from": "open", - "to": "tatt_med", - "label": "Tatt med i svaret" - }, - { - "from": "open", - "to": "ikke_tatt_med", - "label": "Ikke tatt med" - } - ] - }, - { - "page": "/styret", - "group": "styret", - "moves": [] - } - ], - "self_moves": [] - }, - "frivillige": { - "initial": "open", - "transitions": { - "kontaktet": [ - "satt_opp", - "takket_nei" - ], - "open": [ - "kontaktet", - "takket_nei" - ] - }, - "words": { - "kontaktet": "kontaktet", - "open": "mottatt", - "satt_opp": "satt opp", - "takket_nei": "takket nei" - }, - "desks": [ - { - "page": "/arrangementer", - "group": "arrangementer", - "moves": [ - { - "from": "kontaktet", - "to": "satt_opp", - "label": "Sett opp" - }, - { - "from": "kontaktet", - "to": "takket_nei", - "label": "Takket nei" - }, - { - "from": "open", - "to": "kontaktet", - "label": "Merk som kontaktet" - }, - { - "from": "open", - "to": "takket_nei", - "label": "Takket nei" - } - ] - } - ], - "self_moves": [] - }, - "komitesoknader": { - "initial": "open", - "transitions": { - "open": [ - "plassert", - "avslatt" - ] - }, - "words": { - "avslatt": "avslått", - "open": "mottatt", - "plassert": "plassert i en komité" - }, - "desks": [ - { - "page": "/styret", - "group": "styret", - "moves": [ - { - "from": "open", - "to": "plassert", - "label": "Sett i komité" - }, - { - "from": "open", - "to": "avslatt", - "label": "Avslå søknaden" - } - ] - } - ], - "self_moves": [] - }, - "hjelpebehov": { - "initial": "open", - "transitions": { - "formidlet": [ - "ordnet", - "ikke_lost" - ], - "open": [ - "formidlet", - "ikke_lost" - ] - }, - "words": { - "formidlet": "formidlet til en nabo", - "ikke_lost": "ikke løst", - "open": "mottatt", - "ordnet": "ordnet" - }, - "desks": [ - { - "page": "/nabohjelp", - "group": "nabohjelp", - "moves": [ - { - "from": "formidlet", - "to": "ordnet", - "label": "Meld ordnet" - }, - { - "from": "formidlet", - "to": "ikke_lost", - "label": "Meld ikke løst" - }, - { - "from": "open", - "to": "formidlet", - "label": "Koble til nabo" - }, - { - "from": "open", - "to": "ikke_lost", - "label": "Meld ikke løst" - } - ] - } - ], - "self_moves": [ - "ordnet" - ] - }, - "hjelpere": { - "initial": "open", - "transitions": { - "open": [ - "registrert", - "trukket" - ] - }, - "words": { - "open": "mottatt", - "registrert": "registrert som hjelper", - "trukket": "trukket" - }, - "desks": [ - { - "page": "/nabohjelp", - "group": "nabohjelp", - "moves": [ - { - "from": "open", - "to": "registrert", - "label": "Registrer som hjelper" - }, - { - "from": "open", - "to": "trukket", - "label": "Meld trukket" - } - ] - } - ], - "self_moves": [ - "trukket" - ] - }, - "oppslag": { - "initial": "open", - "transitions": { - "open": [ - "lagt_ut", - "tatt_ned" - ] - }, - "words": { - "lagt_ut": "lagt ut", - "open": "mottatt", - "tatt_ned": "tatt ned" - }, - "desks": [ - { - "page": "/status/oppslag", - "group": null, - "moves": [] - }, - { - "page": "/styret", - "group": "styret", - "moves": [ - { - "from": "open", - "to": "lagt_ut", - "label": "Legg ut oppslaget" - }, - { - "from": "open", - "to": "tatt_ned", - "label": "Ta ned oppslaget" - } - ] - } - ], - "self_moves": [ - "tatt_ned" - ] - }, - "utlegg": { - "initial": "open", - "transitions": { - "godkjent": [ - "utbetalt", - "avvist" - ], - "open": [ - "godkjent", - "avvist" - ] - }, - "words": { - "avvist": "avvist", - "godkjent": "godkjent", - "open": "mottatt", - "utbetalt": "utbetalt" - }, - "desks": [ - { - "page": "/kasserer", - "group": "kasserer", - "moves": [ - { - "from": "godkjent", - "to": "utbetalt", - "label": "Merk som utbetalt" - }, - { - "from": "godkjent", - "to": "avvist", - "label": "Avvis likevel" - }, - { - "from": "open", - "to": "godkjent", - "label": "Godkjenn utlegg" - }, - { - "from": "open", - "to": "avvist", - "label": "Avvis utlegg" - } - ] - } - ], - "self_moves": [] - } - }, - "personas": [ - { - "id": "nyinnflyttet", - "need": "bli-medlem", - "text": "Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?" - }, - { - "id": "glemte-a-betale", - "need": "bli-medlem", - "text": "Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?" - }, - { - "id": "ny-epost", - "need": "endre-medlemskap", - "text": "Vi har byttet e-postadresse og får ikke lenger noe fra dere." - }, - { - "id": "flytter", - "need": "endre-medlemskap", - "text": "Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista." - }, - { - "id": "skolevei", - "need": "trafikkfare", - "text": "Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går." - }, - { - "id": "busslomme", - "need": "trafikkfare", - "text": "Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy." - }, - { - "id": "huske", - "need": "anleggsfeil", - "text": "Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt." - }, - { - "id": "bru", - "need": "anleggsfeil", - "text": "Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom." - }, - { - "id": "blokker", - "need": "horingsinnspill", - "text": "Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?" - }, - { - "id": "togtider", - "need": "horingsinnspill", - "text": "Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det." - }, - { - "id": "vafler", - "need": "hjelpe-til", - "text": "Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk." - }, - { - "id": "motorsag", - "need": "hjelpe-til", - "text": "Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad." - }, - { - "id": "pendler", - "need": "komite", - "text": "Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det." - }, - { - "id": "planlegger", - "need": "komite", - "text": "Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring." - }, - { - "id": "tilhenger", - "need": "dele-utstyr", - "text": "Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp." - }, - { - "id": "stige", - "need": "dele-utstyr", - "text": "Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?" - }, - { - "id": "snomaking", - "need": "trenger-hjelp", - "text": "Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?" - }, - { - "id": "nyoperert", - "need": "trenger-hjelp", - "text": "Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?" - }, - { - "id": "hjemmekontor", - "need": "kan-hjelpe", - "text": "Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv." - }, - { - "id": "pensjonert-elektriker", - "need": "kan-hjelpe", - "text": "Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting." - }, - { - "id": "kvittering", - "need": "utlegg", - "text": "Jeg kjøpte pølser og kakao til skøytedagen for 1 840 kroner, her er kvitteringa, vil ha det igjen." - } - ] -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/model-r3.json b/vendor/trainer/runs/tomtervel-opener-2026-09-23/model-r3.json deleted file mode 100644 index 81db3d5..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/model-r3.json +++ /dev/null @@ -1,1529 +0,0 @@ -{ - "needs": [ - { - "id": "bli-medlem", - "who": "en husstand i Tomter", - "wants": "å bli medlem og få betalt kontingenten", - "enters_as": null, - "lands_in": "husstander", - "handled_by": "kasserer", - "done_when": [ - "betalt", - "utmeldt" - ], - "success": [ - "betalt" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "context": "Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Bli medlem eller endre medlemskapet ditt", - "description": "Meld deg inn, oppdater opplysningene dine eller meld deg ut." - }, - { - "name": "Meld fra om trafikkfare eller ødelagt anlegg", - "description": "Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien." - }, - { - "name": "Bidra på arrangement eller i en komité", - "description": "Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité." - }, - { - "name": "Få hjelp av naboer eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Bli medlem eller endre medlemskapet ditt" - ], - "alternative": "Bli medlem eller endre medlemskapet ditt", - "fields": [] - }, - { - "page": "/medlem", - "question": "Vil du bli medlem, eller endre medlemskapet ditt?", - "context": "", - "options": [ - { - "name": "Bli medlem av Tomter Vel", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet." - }, - { - "name": "Oppdater eller avslutt medlemskapet", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger." - } - ], - "expect": [ - "Bli medlem av Tomter Vel" - ], - "alternative": "Bli medlem av Tomter Vel", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "adresse", - "label": "Adresse", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "telefon", - "label": "Telefon", - "type": "tel", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "endre-medlemskap", - "who": "et medlem som har flyttet, byttet e-post eller vil melde seg ut", - "wants": "at velet har riktige opplysninger om dem", - "enters_as": null, - "lands_in": "medlemsendringer", - "handled_by": "kasserer", - "done_when": [ - "oppdatert" - ], - "success": [ - "oppdatert" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "context": "Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Bli medlem eller endre medlemskapet ditt", - "description": "Meld deg inn, oppdater opplysningene dine eller meld deg ut." - }, - { - "name": "Meld fra om trafikkfare eller ødelagt anlegg", - "description": "Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien." - }, - { - "name": "Bidra på arrangement eller i en komité", - "description": "Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité." - }, - { - "name": "Få hjelp av naboer eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Bli medlem eller endre medlemskapet ditt" - ], - "alternative": "Bli medlem eller endre medlemskapet ditt", - "fields": [] - }, - { - "page": "/medlem", - "question": "Vil du bli medlem, eller endre medlemskapet ditt?", - "context": "", - "options": [ - { - "name": "Bli medlem av Tomter Vel", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet." - }, - { - "name": "Oppdater eller avslutt medlemskapet", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger." - } - ], - "expect": [ - "Oppdater eller avslutt medlemskapet" - ], - "alternative": "Oppdater eller avslutt medlemskapet", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "adresse", - "label": "Adresse", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "hva_er_nytt", - "label": "Hva vil du endre?", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "trafikkfare", - "who": "en som har sett et farlig sted i trafikken", - "wants": "at velet tar det opp med kommunen eller den som eier veien", - "enters_as": null, - "lands_in": "trafikkmeldinger", - "handled_by": "trafikk", - "done_when": [ - "ordnet", - "avvist" - ], - "success": [ - "ordnet" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "context": "Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Bli medlem eller endre medlemskapet ditt", - "description": "Meld deg inn, oppdater opplysningene dine eller meld deg ut." - }, - { - "name": "Meld fra om trafikkfare eller ødelagt anlegg", - "description": "Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien." - }, - { - "name": "Bidra på arrangement eller i en komité", - "description": "Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité." - }, - { - "name": "Få hjelp av naboer eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Meld fra om trafikkfare eller ødelagt anlegg" - ], - "alternative": "Meld fra om trafikkfare eller ødelagt anlegg", - "fields": [] - }, - { - "page": "/melde-fra", - "question": "Hva vil du melde fra om?", - "context": "", - "options": [ - { - "name": "Meld fra om en trafikkfare", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre." - }, - { - "name": "Meld fra om noe ødelagt", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det." - } - ], - "expect": [ - "Meld fra om en trafikkfare" - ], - "alternative": "Meld fra om en trafikkfare", - "fields": [ - { - "name": "hvor", - "label": "Hvor var det", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "hva", - "label": "Hva så du", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "epost", - "label": "E-post (valgfritt)", - "type": "email", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "anleggsfeil", - "who": "en som ser at noe på lekeplassen eller stien er ødelagt", - "wants": "at det blir fikset før noen skader seg", - "enters_as": null, - "lands_in": "anleggsfeil", - "handled_by": "lekeplasser", - "done_when": [ - "utbedret" - ], - "success": [ - "utbedret" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "context": "Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Bli medlem eller endre medlemskapet ditt", - "description": "Meld deg inn, oppdater opplysningene dine eller meld deg ut." - }, - { - "name": "Meld fra om trafikkfare eller ødelagt anlegg", - "description": "Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien." - }, - { - "name": "Bidra på arrangement eller i en komité", - "description": "Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité." - }, - { - "name": "Få hjelp av naboer eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Meld fra om trafikkfare eller ødelagt anlegg" - ], - "alternative": "Meld fra om trafikkfare eller ødelagt anlegg", - "fields": [] - }, - { - "page": "/melde-fra", - "question": "Hva vil du melde fra om?", - "context": "", - "options": [ - { - "name": "Meld fra om en trafikkfare", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre." - }, - { - "name": "Meld fra om noe ødelagt", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det." - } - ], - "expect": [ - "Meld fra om noe ødelagt" - ], - "alternative": "Meld fra om noe ødelagt", - "fields": [ - { - "name": "hvor", - "label": "Hvor er det", - "type": "select", - "optional": false, - "options": [ - "Lekeplassen", - "Elvestien", - "Skøytebanen", - "Et annet sted" - ] - }, - { - "name": "hva", - "label": "Hva er ødelagt", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "horingsinnspill", - "who": "en beboer som har en mening om en sak kommunen har på høring", - "wants": "at velet tar det med i sitt svar", - "enters_as": null, - "lands_in": "innspill", - "handled_by": "horingsinstans", - "done_when": [ - "tatt_med", - "ikke_tatt_med" - ], - "success": [ - "tatt_med" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "context": "Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Bli medlem eller endre medlemskapet ditt", - "description": "Meld deg inn, oppdater opplysningene dine eller meld deg ut." - }, - { - "name": "Meld fra om trafikkfare eller ødelagt anlegg", - "description": "Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien." - }, - { - "name": "Bidra på arrangement eller i en komité", - "description": "Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité." - }, - { - "name": "Få hjelp av naboer eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Få din mening med i høringssvaret" - ], - "alternative": "Få din mening med i høringssvaret", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "sak", - "label": "Hvilken sak gjelder det?", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "innspill", - "label": "Hva mener du?", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "hjelpe-til", - "who": "en som vil hjelpe til på et arrangement eller en dugnad", - "wants": "å bli satt opp på noe som passer dem", - "enters_as": null, - "lands_in": "frivillige", - "handled_by": "arrangementer", - "done_when": [ - "satt_opp", - "takket_nei" - ], - "success": [ - "satt_opp" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "context": "Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Bli medlem eller endre medlemskapet ditt", - "description": "Meld deg inn, oppdater opplysningene dine eller meld deg ut." - }, - { - "name": "Meld fra om trafikkfare eller ødelagt anlegg", - "description": "Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien." - }, - { - "name": "Bidra på arrangement eller i en komité", - "description": "Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité." - }, - { - "name": "Få hjelp av naboer eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Bidra på arrangement eller i en komité" - ], - "alternative": "Bidra på arrangement eller i en komité", - "fields": [] - }, - { - "page": "/bidra", - "question": "Vil du hjelpe til i nabolaget?", - "context": "", - "options": [ - { - "name": "Bli med på dugnad eller arrangement", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer." - }, - { - "name": "Sitt i en komité som betyr noe for deg", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i." - } - ], - "expect": [ - "Bli med på dugnad eller arrangement" - ], - "alternative": "Bli med på dugnad eller arrangement", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "telefon", - "label": "Telefon", - "type": "tel", - "optional": false, - "options": [] - }, - { - "name": "hva", - "label": "Hva kan du hjelpe til med?", - "type": "select", - "optional": false, - "options": [ - "17. mai", - "Juletregranstenning", - "Skøytedag", - "Dugnad på elvestien", - "Det som trengs" - ] - } - ] - } - ] - }, - { - "id": "komite", - "who": "en som vil sitte i en komité", - "wants": "en plass i den komiteen som driver med det de bryr seg om", - "enters_as": null, - "lands_in": "komitesoknader", - "handled_by": "styret", - "done_when": [ - "plassert", - "avslatt" - ], - "success": [ - "plassert" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "context": "Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Bli medlem eller endre medlemskapet ditt", - "description": "Meld deg inn, oppdater opplysningene dine eller meld deg ut." - }, - { - "name": "Meld fra om trafikkfare eller ødelagt anlegg", - "description": "Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien." - }, - { - "name": "Bidra på arrangement eller i en komité", - "description": "Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité." - }, - { - "name": "Få hjelp av naboer eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Bidra på arrangement eller i en komité" - ], - "alternative": "Bidra på arrangement eller i en komité", - "fields": [] - }, - { - "page": "/bidra", - "question": "Vil du hjelpe til i nabolaget?", - "context": "", - "options": [ - { - "name": "Bli med på dugnad eller arrangement", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer." - }, - { - "name": "Sitt i en komité som betyr noe for deg", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i." - } - ], - "expect": [ - "Sitt i en komité som betyr noe for deg" - ], - "alternative": "Sitt i en komité som betyr noe for deg", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "epost", - "label": "E-post", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "komite", - "label": "Hvilken komité?", - "type": "select", - "optional": false, - "options": [ - "Arrangementer", - "Elvesti", - "Høringsinstans", - "Leke- og møteplasser", - "Miljøgate", - "Pendlerforhold", - "Trafikkforhold" - ] - } - ] - } - ] - }, - { - "id": "trenger-hjelp", - "who": "en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss", - "wants": "at en nabo stiller opp", - "enters_as": null, - "lands_in": "hjelpebehov", - "handled_by": "nabohjelp", - "done_when": [ - "ordnet", - "ikke_lost" - ], - "success": [ - "ordnet" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "context": "Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Bli medlem eller endre medlemskapet ditt", - "description": "Meld deg inn, oppdater opplysningene dine eller meld deg ut." - }, - { - "name": "Meld fra om trafikkfare eller ødelagt anlegg", - "description": "Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien." - }, - { - "name": "Bidra på arrangement eller i en komité", - "description": "Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité." - }, - { - "name": "Få hjelp av naboer eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Få hjelp av naboer eller gi en hånd selv" - ], - "alternative": "Få hjelp av naboer eller gi en hånd selv", - "fields": [] - }, - { - "page": "/naboer", - "question": "Trenger du en hånd, eller kan du gi en?", - "context": "", - "options": [ - { - "name": "Få en nabo til å stille opp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp." - }, - { - "name": "Bli spurt når en nabo trenger en hånd", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer." - }, - { - "name": "Lån ut eller lån av naboen", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det." - } - ], - "expect": [ - "Få en nabo til å stille opp" - ], - "alternative": "Få en nabo til å stille opp", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "E-post", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "adresse", - "label": "Adresse", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "hva", - "label": "Hva trenger du hjelp til", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "telefon", - "label": "Telefon", - "type": "tel", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "kan-hjelpe", - "who": "en nabo som kan stille opp når noen trenger det", - "wants": "å bli spurt når det passer", - "enters_as": null, - "lands_in": "hjelpere", - "handled_by": "nabohjelp", - "done_when": [ - "registrert", - "trukket" - ], - "success": [ - "registrert" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "context": "Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Bli medlem eller endre medlemskapet ditt", - "description": "Meld deg inn, oppdater opplysningene dine eller meld deg ut." - }, - { - "name": "Meld fra om trafikkfare eller ødelagt anlegg", - "description": "Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien." - }, - { - "name": "Bidra på arrangement eller i en komité", - "description": "Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité." - }, - { - "name": "Få hjelp av naboer eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Få hjelp av naboer eller gi en hånd selv" - ], - "alternative": "Få hjelp av naboer eller gi en hånd selv", - "fields": [] - }, - { - "page": "/naboer", - "question": "Trenger du en hånd, eller kan du gi en?", - "context": "", - "options": [ - { - "name": "Få en nabo til å stille opp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp." - }, - { - "name": "Bli spurt når en nabo trenger en hånd", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer." - }, - { - "name": "Lån ut eller lån av naboen", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det." - } - ], - "expect": [ - "Bli spurt når en nabo trenger en hånd" - ], - "alternative": "Bli spurt når en nabo trenger en hånd", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "E-post", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "telefon", - "label": "Telefon", - "type": "tel", - "optional": false, - "options": [] - }, - { - "name": "kan", - "label": "Hva kan du hjelpe med", - "type": "select", - "optional": false, - "options": [ - "Snømåking", - "Handling", - "Kjøring", - "Småfiks i huset", - "En prat og litt selskap", - "Det som trengs" - ] - } - ] - } - ] - }, - { - "id": "dele-utstyr", - "who": "en nabo som har noe å låne ut, eller trenger å låne noe", - "wants": "et oppslag som naboene ser", - "enters_as": null, - "lands_in": "oppslag", - "handled_by": "styret", - "done_when": [ - "lagt_ut", - "tatt_ned" - ], - "success": [ - "lagt_ut" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "context": "Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Bli medlem eller endre medlemskapet ditt", - "description": "Meld deg inn, oppdater opplysningene dine eller meld deg ut." - }, - { - "name": "Meld fra om trafikkfare eller ødelagt anlegg", - "description": "Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien." - }, - { - "name": "Bidra på arrangement eller i en komité", - "description": "Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité." - }, - { - "name": "Få hjelp av naboer eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Få hjelp av naboer eller gi en hånd selv" - ], - "alternative": "Få hjelp av naboer eller gi en hånd selv", - "fields": [] - }, - { - "page": "/naboer", - "question": "Trenger du en hånd, eller kan du gi en?", - "context": "", - "options": [ - { - "name": "Få en nabo til å stille opp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp." - }, - { - "name": "Bli spurt når en nabo trenger en hånd", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer." - }, - { - "name": "Lån ut eller lån av naboen", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det." - } - ], - "expect": [ - "Lån ut eller lån av naboen" - ], - "alternative": "Lån ut eller lån av naboen", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "E-post", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "har_eller_trenger", - "label": "Har du eller trenger du", - "type": "select", - "optional": false, - "options": [ - "Jeg har noe å låne ut", - "Jeg trenger å låne noe" - ] - }, - { - "name": "hva", - "label": "Hva gjelder det", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "utlegg", - "who": "en i en komité som har lagt ut for noe", - "wants": "pengene tilbake", - "enters_as": "komiteer", - "lands_in": "utlegg", - "handled_by": "kasserer", - "done_when": [ - "utbetalt", - "avvist" - ], - "success": [ - "utbetalt" - ], - "steps": [ - { - "page": "/komiteer/utlegg", - "question": "Har du lagt ut penger for komiteen og vil ha dem tilbake?", - "context": "", - "options": [ - { - "name": "Få pengene tilbake", - "description": "Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten." - } - ], - "expect": [ - "Få pengene tilbake" - ], - "alternative": "Få pengene tilbake", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "belop", - "label": "Beløp", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "hva", - "label": "Hva gjaldt det", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - } - ], - "buckets": { - "husstander": { - "initial": "open", - "transitions": { - "open": [ - "betalt", - "utmeldt" - ] - }, - "words": {}, - "desks": [ - { - "page": "/kasserer", - "group": "kasserer", - "moves": [ - { - "from": "open", - "to": "betalt", - "label": "Registrer betaling" - }, - { - "from": "open", - "to": "utmeldt", - "label": "Meld ut" - } - ] - } - ], - "self_moves": [ - "utmeldt" - ] - }, - "medlemsendringer": { - "initial": "open", - "transitions": { - "open": [ - "oppdatert" - ] - }, - "words": {}, - "desks": [ - { - "page": "/kasserer", - "group": "kasserer", - "moves": [ - { - "from": "open", - "to": "oppdatert", - "label": "Registrer endring" - } - ] - } - ], - "self_moves": [] - }, - "trafikkmeldinger": { - "initial": "open", - "transitions": { - "open": [ - "tatt_opp", - "avvist" - ], - "tatt_opp": [ - "ordnet", - "avvist" - ] - }, - "words": {}, - "desks": [ - { - "page": "/status/trafikkmeldinger", - "group": null, - "moves": [] - }, - { - "page": "/styret", - "group": "styret", - "moves": [] - }, - { - "page": "/trafikk", - "group": "trafikk", - "moves": [ - { - "from": "open", - "to": "tatt_opp", - "label": "Ta opp med kommunen" - }, - { - "from": "open", - "to": "avvist", - "label": "Avvis meldingen" - }, - { - "from": "tatt_opp", - "to": "ordnet", - "label": "Meld ordnet" - }, - { - "from": "tatt_opp", - "to": "avvist", - "label": "Avvis meldingen" - } - ] - } - ], - "self_moves": [] - }, - "anleggsfeil": { - "initial": "open", - "transitions": { - "open": [ - "tatt_tak_i" - ], - "tatt_tak_i": [ - "utbedret" - ] - }, - "words": {}, - "desks": [ - { - "page": "/lekeplasser", - "group": "lekeplasser", - "moves": [ - { - "from": "open", - "to": "tatt_tak_i", - "label": "Ta tak i saken" - }, - { - "from": "tatt_tak_i", - "to": "utbedret", - "label": "Merk som utbedret" - } - ] - }, - { - "page": "/status/anleggsfeil", - "group": null, - "moves": [] - } - ], - "self_moves": [] - }, - "innspill": { - "initial": "open", - "transitions": { - "open": [ - "tatt_med", - "ikke_tatt_med" - ] - }, - "words": {}, - "desks": [ - { - "page": "/horingsinstans", - "group": "horingsinstans", - "moves": [ - { - "from": "open", - "to": "tatt_med", - "label": "Tatt med i svaret" - }, - { - "from": "open", - "to": "ikke_tatt_med", - "label": "Ikke tatt med" - } - ] - }, - { - "page": "/styret", - "group": "styret", - "moves": [] - } - ], - "self_moves": [] - }, - "frivillige": { - "initial": "open", - "transitions": { - "kontaktet": [ - "satt_opp", - "takket_nei" - ], - "open": [ - "kontaktet", - "takket_nei" - ] - }, - "words": {}, - "desks": [ - { - "page": "/arrangementer", - "group": "arrangementer", - "moves": [ - { - "from": "kontaktet", - "to": "satt_opp", - "label": "Sett opp" - }, - { - "from": "kontaktet", - "to": "takket_nei", - "label": "Takket nei" - }, - { - "from": "open", - "to": "kontaktet", - "label": "Merk som kontaktet" - }, - { - "from": "open", - "to": "takket_nei", - "label": "Takket nei" - } - ] - } - ], - "self_moves": [] - }, - "komitesoknader": { - "initial": "open", - "transitions": { - "open": [ - "plassert", - "avslatt" - ] - }, - "words": {}, - "desks": [ - { - "page": "/styret", - "group": "styret", - "moves": [ - { - "from": "open", - "to": "plassert", - "label": "Sett i komité" - }, - { - "from": "open", - "to": "avslatt", - "label": "Avslå søknaden" - } - ] - } - ], - "self_moves": [] - }, - "hjelpebehov": { - "initial": "open", - "transitions": { - "open": [ - "formidlet", - "ikke_lost" - ], - "formidlet": [ - "ordnet", - "ikke_lost" - ] - }, - "words": {}, - "desks": [ - { - "page": "/nabohjelp", - "group": "nabohjelp", - "moves": [ - { - "from": "formidlet", - "to": "ordnet", - "label": "Meld ordnet" - }, - { - "from": "formidlet", - "to": "ikke_lost", - "label": "Meld ikke løst" - }, - { - "from": "open", - "to": "formidlet", - "label": "Koble til nabo" - }, - { - "from": "open", - "to": "ikke_lost", - "label": "Meld ikke løst" - } - ] - } - ], - "self_moves": [ - "ordnet" - ] - }, - "hjelpere": { - "initial": "open", - "transitions": { - "open": [ - "registrert", - "trukket" - ] - }, - "words": {}, - "desks": [ - { - "page": "/nabohjelp", - "group": "nabohjelp", - "moves": [ - { - "from": "open", - "to": "registrert", - "label": "Registrer som hjelper" - }, - { - "from": "open", - "to": "trukket", - "label": "Meld trukket" - } - ] - } - ], - "self_moves": [ - "trukket" - ] - }, - "oppslag": { - "initial": "open", - "transitions": { - "open": [ - "lagt_ut", - "tatt_ned" - ] - }, - "words": {}, - "desks": [ - { - "page": "/status/oppslag", - "group": null, - "moves": [] - }, - { - "page": "/styret", - "group": "styret", - "moves": [ - { - "from": "open", - "to": "lagt_ut", - "label": "Legg ut oppslaget" - }, - { - "from": "open", - "to": "tatt_ned", - "label": "Ta ned oppslaget" - } - ] - } - ], - "self_moves": [ - "tatt_ned" - ] - }, - "utlegg": { - "initial": "open", - "transitions": { - "open": [ - "godkjent", - "avvist" - ], - "godkjent": [ - "utbetalt", - "avvist" - ] - }, - "words": {}, - "desks": [ - { - "page": "/kasserer", - "group": "kasserer", - "moves": [ - { - "from": "godkjent", - "to": "utbetalt", - "label": "Merk som utbetalt" - }, - { - "from": "godkjent", - "to": "avvist", - "label": "Avvis likevel" - }, - { - "from": "open", - "to": "godkjent", - "label": "Godkjenn utlegg" - }, - { - "from": "open", - "to": "avvist", - "label": "Avvis utlegg" - } - ] - } - ], - "self_moves": [] - } - }, - "personas": [ - { - "id": "nyinnflyttet", - "need": "bli-medlem", - "text": "Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?" - }, - { - "id": "glemte-a-betale", - "need": "bli-medlem", - "text": "Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?" - }, - { - "id": "ny-epost", - "need": "endre-medlemskap", - "text": "Vi har byttet e-postadresse og får ikke lenger noe fra dere." - }, - { - "id": "flytter", - "need": "endre-medlemskap", - "text": "Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista." - }, - { - "id": "skolevei", - "need": "trafikkfare", - "text": "Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går." - }, - { - "id": "busslomme", - "need": "trafikkfare", - "text": "Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy." - }, - { - "id": "huske", - "need": "anleggsfeil", - "text": "Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt." - }, - { - "id": "bru", - "need": "anleggsfeil", - "text": "Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom." - }, - { - "id": "blokker", - "need": "horingsinnspill", - "text": "Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?" - }, - { - "id": "togtider", - "need": "horingsinnspill", - "text": "Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det." - }, - { - "id": "vafler", - "need": "hjelpe-til", - "text": "Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk." - }, - { - "id": "motorsag", - "need": "hjelpe-til", - "text": "Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad." - }, - { - "id": "pendler", - "need": "komite", - "text": "Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det." - }, - { - "id": "planlegger", - "need": "komite", - "text": "Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring." - }, - { - "id": "tilhenger", - "need": "dele-utstyr", - "text": "Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp." - }, - { - "id": "stige", - "need": "dele-utstyr", - "text": "Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?" - }, - { - "id": "snomaking", - "need": "trenger-hjelp", - "text": "Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?" - }, - { - "id": "nyoperert", - "need": "trenger-hjelp", - "text": "Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?" - }, - { - "id": "hjemmekontor", - "need": "kan-hjelpe", - "text": "Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv." - }, - { - "id": "pensjonert-elektriker", - "need": "kan-hjelpe", - "text": "Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting." - }, - { - "id": "kvittering", - "need": "utlegg", - "text": "Jeg kjøpte pølser og kakao til skøytedagen for 1 840 kroner, her er kvitteringa, vil ha det igjen." - } - ] -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/model.json b/vendor/trainer/runs/tomtervel-opener-2026-09-23/model.json deleted file mode 100644 index de60eb3..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/model.json +++ /dev/null @@ -1,1518 +0,0 @@ -{ - "needs": [ - { - "id": "bli-medlem", - "who": "en husstand i Tomter", - "wants": "å bli medlem og få betalt kontingenten", - "enters_as": null, - "lands_in": "husstander", - "handled_by": "kasserer", - "done_when": [ - "betalt", - "utmeldt" - ], - "success": [ - "betalt" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "context": "Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Bli medlem eller endre opplysningene dine", - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding." - }, - { - "name": "Meld fra om noe som bør fikses", - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed." - }, - { - "name": "Bli med og gjør en innsats", - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse." - }, - { - "name": "Få hjelp av naboer, eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Bli medlem eller endre opplysningene dine" - ], - "alternative": "Bli medlem eller endre opplysningene dine", - "fields": [] - }, - { - "page": "/medlem", - "question": "Vil du bli medlem, eller endre medlemskapet ditt?", - "context": "", - "options": [ - { - "name": "Bli medlem av Tomter Vel", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet." - }, - { - "name": "Oppdater eller avslutt medlemskapet", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger." - } - ], - "expect": [ - "Bli medlem av Tomter Vel" - ], - "alternative": "Bli medlem av Tomter Vel", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "adresse", - "label": "Adresse", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "telefon", - "label": "Telefon", - "type": "tel", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "endre-medlemskap", - "who": "et medlem som har flyttet, byttet e-post eller vil melde seg ut", - "wants": "at velet har riktige opplysninger om dem", - "enters_as": null, - "lands_in": "medlemsendringer", - "handled_by": "kasserer", - "done_when": [ - "oppdatert" - ], - "success": [ - "oppdatert" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "context": "Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Bli medlem eller endre opplysningene dine", - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding." - }, - { - "name": "Meld fra om noe som bør fikses", - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed." - }, - { - "name": "Bli med og gjør en innsats", - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse." - }, - { - "name": "Få hjelp av naboer, eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Bli medlem eller endre opplysningene dine" - ], - "alternative": "Bli medlem eller endre opplysningene dine", - "fields": [] - }, - { - "page": "/medlem", - "question": "Vil du bli medlem, eller endre medlemskapet ditt?", - "context": "", - "options": [ - { - "name": "Bli medlem av Tomter Vel", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet." - }, - { - "name": "Oppdater eller avslutt medlemskapet", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger." - } - ], - "expect": [ - "Oppdater eller avslutt medlemskapet" - ], - "alternative": "Oppdater eller avslutt medlemskapet", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "adresse", - "label": "Adresse", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "hva_er_nytt", - "label": "Hva vil du endre?", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "trafikkfare", - "who": "en som har sett et farlig sted i trafikken", - "wants": "at velet tar det opp med kommunen eller den som eier veien", - "enters_as": null, - "lands_in": "trafikkmeldinger", - "handled_by": "trafikk", - "done_when": [ - "ordnet", - "avvist" - ], - "success": [ - "ordnet" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "context": "Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Bli medlem eller endre opplysningene dine", - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding." - }, - { - "name": "Meld fra om noe som bør fikses", - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed." - }, - { - "name": "Bli med og gjør en innsats", - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse." - }, - { - "name": "Få hjelp av naboer, eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Meld fra om noe som bør fikses" - ], - "alternative": "Meld fra om noe som bør fikses", - "fields": [] - }, - { - "page": "/melde-fra", - "question": "Hva vil du melde fra om?", - "context": "", - "options": [ - { - "name": "Meld fra om en trafikkfare", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre." - }, - { - "name": "Meld fra om noe ødelagt", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det." - } - ], - "expect": [ - "Meld fra om en trafikkfare" - ], - "alternative": "Meld fra om en trafikkfare", - "fields": [ - { - "name": "hvor", - "label": "Hvor var det", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "hva", - "label": "Hva så du", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "epost", - "label": "E-post (valgfritt)", - "type": "email", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "anleggsfeil", - "who": "en som ser at noe på lekeplassen eller stien er ødelagt", - "wants": "at det blir fikset før noen skader seg", - "enters_as": null, - "lands_in": "anleggsfeil", - "handled_by": "lekeplasser", - "done_when": [ - "utbedret" - ], - "success": [ - "utbedret" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "context": "Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Bli medlem eller endre opplysningene dine", - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding." - }, - { - "name": "Meld fra om noe som bør fikses", - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed." - }, - { - "name": "Bli med og gjør en innsats", - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse." - }, - { - "name": "Få hjelp av naboer, eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Meld fra om noe som bør fikses" - ], - "alternative": "Meld fra om noe som bør fikses", - "fields": [] - }, - { - "page": "/melde-fra", - "question": "Hva vil du melde fra om?", - "context": "", - "options": [ - { - "name": "Meld fra om en trafikkfare", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre." - }, - { - "name": "Meld fra om noe ødelagt", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det." - } - ], - "expect": [ - "Meld fra om noe ødelagt" - ], - "alternative": "Meld fra om noe ødelagt", - "fields": [ - { - "name": "hvor", - "label": "Hvor er det", - "type": "select", - "optional": false, - "options": [ - "Lekeplassen", - "Elvestien", - "Skøytebanen", - "Et annet sted" - ] - }, - { - "name": "hva", - "label": "Hva er ødelagt", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "horingsinnspill", - "who": "en beboer som har en mening om en sak kommunen har på høring", - "wants": "at velet tar det med i sitt svar", - "enters_as": null, - "lands_in": "innspill", - "handled_by": "horingsinstans", - "done_when": [ - "tatt_med", - "ikke_tatt_med" - ], - "success": [ - "tatt_med" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "context": "Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Bli medlem eller endre opplysningene dine", - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding." - }, - { - "name": "Meld fra om noe som bør fikses", - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed." - }, - { - "name": "Bli med og gjør en innsats", - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse." - }, - { - "name": "Få hjelp av naboer, eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Få din mening med i høringssvaret" - ], - "alternative": "Få din mening med i høringssvaret", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "sak", - "label": "Hvilken sak gjelder det?", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "innspill", - "label": "Hva mener du?", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "hjelpe-til", - "who": "en som vil hjelpe til på et arrangement eller en dugnad", - "wants": "å bli satt opp på noe som passer dem", - "enters_as": null, - "lands_in": "frivillige", - "handled_by": "arrangementer", - "done_when": [ - "satt_opp", - "takket_nei" - ], - "success": [ - "satt_opp" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "context": "Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Bli medlem eller endre opplysningene dine", - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding." - }, - { - "name": "Meld fra om noe som bør fikses", - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed." - }, - { - "name": "Bli med og gjør en innsats", - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse." - }, - { - "name": "Få hjelp av naboer, eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Bli med og gjør en innsats" - ], - "alternative": "Bli med og gjør en innsats", - "fields": [] - }, - { - "page": "/bidra", - "question": "Vil du hjelpe til i nabolaget?", - "context": "", - "options": [ - { - "name": "Bli med på dugnad eller arrangement", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer." - }, - { - "name": "Sitt i en komité som betyr noe for deg", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i." - } - ], - "expect": [ - "Bli med på dugnad eller arrangement" - ], - "alternative": "Bli med på dugnad eller arrangement", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "telefon", - "label": "Telefon", - "type": "tel", - "optional": false, - "options": [] - }, - { - "name": "hva", - "label": "Hva kan du hjelpe til med?", - "type": "select", - "optional": false, - "options": [ - "17. mai", - "Juletregranstenning", - "Skøytedag", - "Dugnad på elvestien", - "Det som trengs" - ] - } - ] - } - ] - }, - { - "id": "komite", - "who": "en som vil sitte i en komité", - "wants": "en plass i den komiteen som driver med det de bryr seg om", - "enters_as": null, - "lands_in": "komitesoknader", - "handled_by": "styret", - "done_when": [ - "plassert", - "avslatt" - ], - "success": [ - "plassert" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "context": "Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Bli medlem eller endre opplysningene dine", - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding." - }, - { - "name": "Meld fra om noe som bør fikses", - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed." - }, - { - "name": "Bli med og gjør en innsats", - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse." - }, - { - "name": "Få hjelp av naboer, eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Bli med og gjør en innsats" - ], - "alternative": "Bli med og gjør en innsats", - "fields": [] - }, - { - "page": "/bidra", - "question": "Vil du hjelpe til i nabolaget?", - "context": "", - "options": [ - { - "name": "Bli med på dugnad eller arrangement", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer." - }, - { - "name": "Sitt i en komité som betyr noe for deg", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i." - } - ], - "expect": [ - "Sitt i en komité som betyr noe for deg" - ], - "alternative": "Sitt i en komité som betyr noe for deg", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "epost", - "label": "E-post", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "komite", - "label": "Hvilken komité?", - "type": "select", - "optional": false, - "options": [ - "Arrangementer", - "Elvesti", - "Høringsinstans", - "Leke- og møteplasser", - "Miljøgate", - "Pendlerforhold", - "Trafikkforhold" - ] - } - ] - } - ] - }, - { - "id": "trenger-hjelp", - "who": "en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss", - "wants": "at en nabo stiller opp", - "enters_as": null, - "lands_in": "hjelpebehov", - "handled_by": "nabohjelp", - "done_when": [ - "ordnet", - "ikke_lost" - ], - "success": [ - "ordnet" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "context": "Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Bli medlem eller endre opplysningene dine", - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding." - }, - { - "name": "Meld fra om noe som bør fikses", - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed." - }, - { - "name": "Bli med og gjør en innsats", - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse." - }, - { - "name": "Få hjelp av naboer, eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Få hjelp av naboer, eller gi en hånd selv" - ], - "alternative": "Få hjelp av naboer, eller gi en hånd selv", - "fields": [] - }, - { - "page": "/naboer", - "question": "Trenger du en hånd, eller kan du gi en?", - "context": "", - "options": [ - { - "name": "Få en nabo til å stille opp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp." - }, - { - "name": "Bli spurt når en nabo trenger en hånd", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer." - }, - { - "name": "Lån ut eller lån av naboen", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det." - } - ], - "expect": [ - "Få en nabo til å stille opp" - ], - "alternative": "Få en nabo til å stille opp", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "E-post", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "adresse", - "label": "Adresse", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "hva", - "label": "Hva trenger du hjelp til", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "telefon", - "label": "Telefon", - "type": "tel", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "kan-hjelpe", - "who": "en nabo som kan stille opp når noen trenger det", - "wants": "å bli spurt når det passer", - "enters_as": null, - "lands_in": "hjelpere", - "handled_by": "nabohjelp", - "done_when": [ - "registrert", - "trukket" - ], - "success": [ - "registrert" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "context": "Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Bli medlem eller endre opplysningene dine", - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding." - }, - { - "name": "Meld fra om noe som bør fikses", - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed." - }, - { - "name": "Bli med og gjør en innsats", - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse." - }, - { - "name": "Få hjelp av naboer, eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Få hjelp av naboer, eller gi en hånd selv" - ], - "alternative": "Få hjelp av naboer, eller gi en hånd selv", - "fields": [] - }, - { - "page": "/naboer", - "question": "Trenger du en hånd, eller kan du gi en?", - "context": "", - "options": [ - { - "name": "Få en nabo til å stille opp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp." - }, - { - "name": "Bli spurt når en nabo trenger en hånd", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer." - }, - { - "name": "Lån ut eller lån av naboen", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det." - } - ], - "expect": [ - "Bli spurt når en nabo trenger en hånd" - ], - "alternative": "Bli spurt når en nabo trenger en hånd", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "E-post", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "telefon", - "label": "Telefon", - "type": "tel", - "optional": false, - "options": [] - }, - { - "name": "kan", - "label": "Hva kan du hjelpe med", - "type": "select", - "optional": false, - "options": [ - "Snømåking", - "Handling", - "Kjøring", - "Småfiks i huset", - "En prat og litt selskap", - "Det som trengs" - ] - } - ] - } - ] - }, - { - "id": "dele-utstyr", - "who": "en nabo som har noe å låne ut, eller trenger å låne noe", - "wants": "et oppslag som naboene ser", - "enters_as": null, - "lands_in": "oppslag", - "handled_by": "styret", - "done_when": [ - "lagt_ut", - "tatt_ned" - ], - "success": [ - "lagt_ut" - ], - "steps": [ - { - "page": "/", - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "context": "Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)", - "options": [ - { - "name": "Bli medlem eller endre opplysningene dine", - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding." - }, - { - "name": "Meld fra om noe som bør fikses", - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed." - }, - { - "name": "Bli med og gjør en innsats", - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse." - }, - { - "name": "Få hjelp av naboer, eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere." - }, - { - "name": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar." - } - ], - "expect": [ - "Få hjelp av naboer, eller gi en hånd selv" - ], - "alternative": "Få hjelp av naboer, eller gi en hånd selv", - "fields": [] - }, - { - "page": "/naboer", - "question": "Trenger du en hånd, eller kan du gi en?", - "context": "", - "options": [ - { - "name": "Få en nabo til å stille opp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp." - }, - { - "name": "Bli spurt når en nabo trenger en hånd", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer." - }, - { - "name": "Lån ut eller lån av naboen", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det." - } - ], - "expect": [ - "Lån ut eller lån av naboen" - ], - "alternative": "Lån ut eller lån av naboen", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "E-post", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "har_eller_trenger", - "label": "Har du eller trenger du", - "type": "select", - "optional": false, - "options": [ - "Jeg har noe å låne ut", - "Jeg trenger å låne noe" - ] - }, - { - "name": "hva", - "label": "Hva gjelder det", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "utlegg", - "who": "en i en komité som har lagt ut for noe", - "wants": "pengene tilbake", - "enters_as": "komiteer", - "lands_in": "utlegg", - "handled_by": "kasserer", - "done_when": [ - "utbetalt", - "avvist" - ], - "success": [ - "utbetalt" - ], - "steps": [ - { - "page": "/komiteer/utlegg", - "question": "Har du lagt ut penger for komiteen og vil ha dem tilbake?", - "context": "", - "options": [ - { - "name": "Få pengene tilbake", - "description": "Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten." - } - ], - "expect": [ - "Få pengene tilbake" - ], - "alternative": "Få pengene tilbake", - "fields": [ - { - "name": "navn", - "label": "Navn", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "belop", - "label": "Beløp", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "hva", - "label": "Hva gjaldt det", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - } - ], - "buckets": { - "husstander": { - "initial": "open", - "transitions": { - "open": [ - "betalt", - "utmeldt" - ] - }, - "desks": [ - { - "page": "/kasserer", - "group": "kasserer", - "moves": [ - { - "from": "open", - "to": "betalt", - "label": "Registrer betaling" - }, - { - "from": "open", - "to": "utmeldt", - "label": "Meld ut" - } - ] - } - ], - "self_moves": [ - "utmeldt" - ] - }, - "medlemsendringer": { - "initial": "open", - "transitions": { - "open": [ - "oppdatert" - ] - }, - "desks": [ - { - "page": "/kasserer", - "group": "kasserer", - "moves": [ - { - "from": "open", - "to": "oppdatert", - "label": "Registrer endring" - } - ] - } - ], - "self_moves": [] - }, - "trafikkmeldinger": { - "initial": "open", - "transitions": { - "tatt_opp": [ - "ordnet", - "avvist" - ], - "open": [ - "tatt_opp", - "avvist" - ] - }, - "desks": [ - { - "page": "/status/trafikkmeldinger", - "group": null, - "moves": [] - }, - { - "page": "/styret", - "group": "styret", - "moves": [] - }, - { - "page": "/trafikk", - "group": "trafikk", - "moves": [ - { - "from": "open", - "to": "tatt_opp", - "label": "Ta opp med kommunen" - }, - { - "from": "open", - "to": "avvist", - "label": "Avvis meldingen" - }, - { - "from": "tatt_opp", - "to": "ordnet", - "label": "Meld ordnet" - }, - { - "from": "tatt_opp", - "to": "avvist", - "label": "Avvis meldingen" - } - ] - } - ], - "self_moves": [] - }, - "anleggsfeil": { - "initial": "open", - "transitions": { - "tatt_tak_i": [ - "utbedret" - ], - "open": [ - "tatt_tak_i" - ] - }, - "desks": [ - { - "page": "/lekeplasser", - "group": "lekeplasser", - "moves": [ - { - "from": "open", - "to": "tatt_tak_i", - "label": "Ta tak i saken" - }, - { - "from": "tatt_tak_i", - "to": "utbedret", - "label": "Merk som utbedret" - } - ] - }, - { - "page": "/status/anleggsfeil", - "group": null, - "moves": [] - } - ], - "self_moves": [] - }, - "innspill": { - "initial": "open", - "transitions": { - "open": [ - "tatt_med", - "ikke_tatt_med" - ] - }, - "desks": [ - { - "page": "/horingsinstans", - "group": "horingsinstans", - "moves": [ - { - "from": "open", - "to": "tatt_med", - "label": "Tatt med i svaret" - }, - { - "from": "open", - "to": "ikke_tatt_med", - "label": "Ikke tatt med" - } - ] - }, - { - "page": "/styret", - "group": "styret", - "moves": [] - } - ], - "self_moves": [] - }, - "frivillige": { - "initial": "open", - "transitions": { - "open": [ - "kontaktet", - "takket_nei" - ], - "kontaktet": [ - "satt_opp", - "takket_nei" - ] - }, - "desks": [ - { - "page": "/arrangementer", - "group": "arrangementer", - "moves": [ - { - "from": "kontaktet", - "to": "satt_opp", - "label": "Sett opp" - }, - { - "from": "kontaktet", - "to": "takket_nei", - "label": "Takket nei" - }, - { - "from": "open", - "to": "kontaktet", - "label": "Merk som kontaktet" - }, - { - "from": "open", - "to": "takket_nei", - "label": "Takket nei" - } - ] - } - ], - "self_moves": [] - }, - "komitesoknader": { - "initial": "open", - "transitions": { - "open": [ - "plassert", - "avslatt" - ] - }, - "desks": [ - { - "page": "/styret", - "group": "styret", - "moves": [ - { - "from": "open", - "to": "plassert", - "label": "Sett i komité" - }, - { - "from": "open", - "to": "avslatt", - "label": "Avslå søknaden" - } - ] - } - ], - "self_moves": [] - }, - "hjelpebehov": { - "initial": "open", - "transitions": { - "formidlet": [ - "ordnet", - "ikke_lost" - ], - "open": [ - "formidlet", - "ikke_lost" - ] - }, - "desks": [ - { - "page": "/nabohjelp", - "group": "nabohjelp", - "moves": [ - { - "from": "formidlet", - "to": "ordnet", - "label": "Meld ordnet" - }, - { - "from": "formidlet", - "to": "ikke_lost", - "label": "Meld ikke løst" - }, - { - "from": "open", - "to": "formidlet", - "label": "Koble til nabo" - }, - { - "from": "open", - "to": "ikke_lost", - "label": "Meld ikke løst" - } - ] - } - ], - "self_moves": [ - "ordnet" - ] - }, - "hjelpere": { - "initial": "open", - "transitions": { - "open": [ - "registrert", - "trukket" - ] - }, - "desks": [ - { - "page": "/nabohjelp", - "group": "nabohjelp", - "moves": [ - { - "from": "open", - "to": "registrert", - "label": "Registrer som hjelper" - }, - { - "from": "open", - "to": "trukket", - "label": "Meld trukket" - } - ] - } - ], - "self_moves": [ - "trukket" - ] - }, - "oppslag": { - "initial": "open", - "transitions": { - "open": [ - "lagt_ut", - "tatt_ned" - ] - }, - "desks": [ - { - "page": "/status/oppslag", - "group": null, - "moves": [] - }, - { - "page": "/styret", - "group": "styret", - "moves": [ - { - "from": "open", - "to": "lagt_ut", - "label": "Legg ut oppslaget" - }, - { - "from": "open", - "to": "tatt_ned", - "label": "Ta ned oppslaget" - } - ] - } - ], - "self_moves": [ - "tatt_ned" - ] - }, - "utlegg": { - "initial": "open", - "transitions": { - "godkjent": [ - "utbetalt", - "avvist" - ], - "open": [ - "godkjent", - "avvist" - ] - }, - "desks": [ - { - "page": "/kasserer", - "group": "kasserer", - "moves": [ - { - "from": "godkjent", - "to": "utbetalt", - "label": "Merk som utbetalt" - }, - { - "from": "godkjent", - "to": "avvist", - "label": "Avvis likevel" - }, - { - "from": "open", - "to": "godkjent", - "label": "Godkjenn utlegg" - }, - { - "from": "open", - "to": "avvist", - "label": "Avvis utlegg" - } - ] - } - ], - "self_moves": [] - } - }, - "personas": [ - { - "id": "nyinnflyttet", - "need": "bli-medlem", - "text": "Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?" - }, - { - "id": "glemte-a-betale", - "need": "bli-medlem", - "text": "Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?" - }, - { - "id": "ny-epost", - "need": "endre-medlemskap", - "text": "Vi har byttet e-postadresse og får ikke lenger noe fra dere." - }, - { - "id": "flytter", - "need": "endre-medlemskap", - "text": "Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista." - }, - { - "id": "skolevei", - "need": "trafikkfare", - "text": "Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går." - }, - { - "id": "busslomme", - "need": "trafikkfare", - "text": "Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy." - }, - { - "id": "huske", - "need": "anleggsfeil", - "text": "Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt." - }, - { - "id": "bru", - "need": "anleggsfeil", - "text": "Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom." - }, - { - "id": "blokker", - "need": "horingsinnspill", - "text": "Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?" - }, - { - "id": "togtider", - "need": "horingsinnspill", - "text": "Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det." - }, - { - "id": "vafler", - "need": "hjelpe-til", - "text": "Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk." - }, - { - "id": "motorsag", - "need": "hjelpe-til", - "text": "Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad." - }, - { - "id": "pendler", - "need": "komite", - "text": "Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det." - }, - { - "id": "planlegger", - "need": "komite", - "text": "Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring." - }, - { - "id": "tilhenger", - "need": "dele-utstyr", - "text": "Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp." - }, - { - "id": "stige", - "need": "dele-utstyr", - "text": "Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?" - }, - { - "id": "snomaking", - "need": "trenger-hjelp", - "text": "Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?" - }, - { - "id": "nyoperert", - "need": "trenger-hjelp", - "text": "Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?" - }, - { - "id": "hjemmekontor", - "need": "kan-hjelpe", - "text": "Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv." - }, - { - "id": "pensjonert-elektriker", - "need": "kan-hjelpe", - "text": "Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting." - }, - { - "id": "kvittering", - "need": "utlegg", - "text": "Jeg kjøpte pølser og kakao til skøytedagen for 1 840 kroner, her er kvitteringa, vil ha det igjen." - } - ] -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/opener-only.json b/vendor/trainer/runs/tomtervel-opener-2026-09-23/opener-only.json deleted file mode 100644 index 9a5a2a5..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/opener-only.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "questions/index.yaml": { - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "description": "Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står.", - "opener": { - "heading": "Dette gjør velet", - "description": "To ting først. Resten står lenger ned på siden.", - "features": { - "medlem": { - "heading": "Et vel som taler for Tomter, og et medlemskap du styrer selv", - "description": "Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil.", - "icon": "users" - }, - "nabo": { - "heading": "En nabo som stiller opp når du trenger det", - "description": "Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.", - "icon": "handshake" - } - } - }, - "shopping": { - "heading": "Se deg rundt først", - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.", - "items": { - "status-trafikkmeldinger": { - "heading": "Alle trafikkmeldinger", - "description": "Farlige steder naboene har meldt, og hva velet har gjort med dem.", - "icon": "list" - }, - "status-anleggsfeil": { - "heading": "Alt som er meldt ødelagt", - "description": "Lekeplassen og stien: det som er meldt, og det som er fikset.", - "icon": "list" - }, - "status-oppslag": { - "heading": "Oppslagstavla", - "description": "Det naboene har å låne ut, og det de trenger å låne.", - "icon": "list" - } - } - } - } -} diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/score.log b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/score.log deleted file mode 100644 index 9e7947c..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/score.log +++ /dev/null @@ -1,60 +0,0 @@ -== answer full -== answer skim -== score full -MISROUTE: glemte-a-betale@/medlem: picked "Oppdater eller avslutt medlemskapet" (0.95), the need is met by ["Bli medlem av Tomter Vel"] -MISROUTE: skolevei@/: picked "Se deg rundt først" (0.95), the need is met by ["Melde fra"] -MISROUTE: busslomme@/: picked "Dette gjør velet" (0.95), the need is met by ["Melde fra"] -MISROUTE: huske@/: picked "Dette gjør velet" (0.95), the need is met by ["Melde fra"] -MISROUTE: bru@/: picked "Naboer" (0.95), the need is met by ["Melde fra"] -MISROUTE: pendler@/: picked "Dette gjør velet" (0.95), the need is met by ["Bidra"] -MISROUTE: pendler@/bidra: picked "Bli med på dugnad eller arrangement" (0.95), the need is met by ["Sitt i en komité som betyr noe for deg"] -MISROUTE: planlegger@/: picked "Få din mening med i høringssvaret" (0.95), the need is met by ["Bidra"] -MISROUTE: planlegger@/bidra: picked "Bli med på dugnad eller arrangement" (0.95), the need is met by ["Sitt i en komité som betyr noe for deg"] -MISROUTE: hjemmekontor@/: picked "Dette gjør velet" (0.95), the need is met by ["Naboer"] -MISROUTE: hjemmekontor@/naboer: picked "Få en nabo til å stille opp" (0.95), the need is met by ["Bli spurt når en nabo trenger en hånd"] -MISROUTE: pensjonert-elektriker@/naboer: picked "Få en nabo til å stille opp" (0.95), the need is met by ["Bli spurt når en nabo trenger en hånd"] -wording: 26/38 routed right (68%) -== score skim -MISROUTE: nyinnflyttet@/: picked "Dette gjør velet" (0.95), the need is met by ["Medlem"] -MISROUTE: glemte-a-betale@/medlem: picked "Oppdater eller avslutt medlemskapet" (0.95), the need is met by ["Bli medlem av Tomter Vel"] -MISROUTE: ny-epost@/: picked "Se deg rundt først" (0.95), the need is met by ["Medlem"] -MISROUTE: skolevei@/: picked "Dette gjør velet" (0.95), the need is met by ["Melde fra"] -MISROUTE: busslomme@/: picked "Se deg rundt først" (0.85), the need is met by ["Melde fra"] -MISROUTE: huske@/: picked "Se deg rundt først" (0.95), the need is met by ["Melde fra"] -MISROUTE: bru@/: picked "Dette gjør velet" (0.95), the need is met by ["Melde fra"] -MISROUTE: bru@/melde-fra: picked "Meld fra om en trafikkfare" (0.85), the need is met by ["Meld fra om noe ødelagt"] -MISROUTE: blokker@/: picked "Melde fra" (0.95), the need is met by ["Få din mening med i høringssvaret"] -MISROUTE: vafler@/: picked "Se deg rundt først" (0.85), the need is met by ["Bidra"] -MISROUTE: motorsag@/: picked "Dette gjør velet" (0.85), the need is met by ["Bidra"] -MISROUTE: pendler@/: picked "Dette gjør velet" (0.85), the need is met by ["Bidra"] -MISROUTE: pendler@/bidra: picked "Bli med på dugnad eller arrangement" (0.95), the need is met by ["Sitt i en komité som betyr noe for deg"] -MISROUTE: snomaking@/: picked "Melde fra" (0.95), the need is met by ["Naboer"] -MISROUTE: snomaking@/naboer: picked "Bli spurt når en nabo trenger en hånd" (0.95), the need is met by ["Få en nabo til å stille opp"] -MISROUTE: nyoperert@/: picked "Melde fra" (0.95), the need is met by ["Naboer"] -MISROUTE: nyoperert@/naboer: picked "Bli spurt når en nabo trenger en hånd" (0.95), the need is met by ["Få en nabo til å stille opp"] -MISROUTE: hjemmekontor@/: picked "Melde fra" (0.85), the need is met by ["Naboer"] -MISROUTE: pensjonert-elektriker@/: picked "Bidra" (0.95), the need is met by ["Naboer"] -wording: 19/38 routed right (50%) -== rate -need LIX which where asked next gutted twin says page load -bli-medlem @/ 22 very easy 1/2 2/2 2/2 - 0/0/0/- ok 7 options, 0 required - SPLIT -bli-medlem @/medlem 40 easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 3 required -endre-medlemskap @/ 22 very easy 2/2 2/2 2/2 - 0/0/0/- ok 7 options, 0 required - SPLIT -endre-medlemskap @/medlem 35 easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 3 required -trafikkfare @/ 22 very easy 1/2 2/2 2/2 - 0/0/0/- ok 7 options, 0 required - SPLIT -trafikkfare @/melde-fra 32 easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 2 required -anleggsfeil @/ 22 very easy 2/2 2/2 2/2 - 0/0/0/- ok 7 options, 0 required - SPLIT -anleggsfeil @/melde-fra 25 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 2 required -horingsinnspill 23 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 7 options, 3 required - SPLIT -hjelpe-til @/ 22 very easy 2/2 2/2 2/2 - 0/0/0/- ok 7 options, 0 required - SPLIT -hjelpe-til @/bidra 27 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 3 required -komite @/ 22 very easy 2/2 2/2 2/2 - 0/0/0/- ok 7 options, 0 required - SPLIT -komite @/bidra 22 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 3 required -trenger-hjelp @/ 22 very easy 1/2 2/2 2/2 - 0/0/0/- ok 7 options, 0 required - SPLIT -trenger-hjelp @/naboer 21 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 3 options, 4 required -kan-hjelpe @/ 22 very easy 2/2 2/2 2/2 - 0/0/0/- ok 7 options, 0 required - SPLIT -kan-hjelpe @/naboer 24 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 3 options, 4 required -dele-utstyr @/ 22 very easy 2/2 2/2 2/2 - 0/0/0/- ok 7 options, 0 required - SPLIT -dele-utstyr @/naboer 23 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 3 options, 4 required -utlegg 36 easy 1/1 1/1 1/1 1/1 0/0/0/0 ok 1 options, 3 required -== done diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/aggregates.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/aggregates.yaml deleted file mode 100644 index a5e8b49..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/aggregates.yaml +++ /dev/null @@ -1,220 +0,0 @@ -aggregates: -- bucket: anleggsfeil - initial: open - states: - open: - event: received - tatt_tak_i: - event: tatt_tak_i - utbedret: - event: utbedret - transitions: - open: - - tatt_tak_i - tatt_tak_i: - - utbedret -- bucket: frivillige - initial: open - states: - kontaktet: - event: kontaktet - open: - event: received - satt_opp: - event: satt_opp - takket_nei: - event: takket_nei - transitions: - kontaktet: - - satt_opp - - takket_nei - open: - - kontaktet - - takket_nei -- bucket: hjelpebehov - initial: open - states: - formidlet: - event: formidlet - mail: - body: |- - Hei {navn}, - - Det du sendte om at en nabo stiller opp er nå formidlet. - - Det du kan gjøre nå: {site}/decide/trenger-hjelp?chain={chain}&email={email} - - Styret i Tomter Vel på post@tomtervel.no - subject: 'Tomter Vel: Formidlet' - to: submitter - ikke_lost: - event: ikke_lost - open: - event: received - mail: - body: |- - Hei {navn}, - - Vi har mottatt det du sendte om at en nabo stiller opp. - - Styret i Tomter Vel på post@tomtervel.no - subject: 'Tomter Vel: Open' - to: submitter - ordnet: - event: ordnet - mail: - body: |- - Hei {navn}, - - Det du sendte om at en nabo stiller opp er nå ordnet. - - Styret i Tomter Vel på post@tomtervel.no - subject: 'Tomter Vel: Ordnet' - to: submitter - transitions: - formidlet: - - ordnet - - ikke_lost - open: - - formidlet - - ikke_lost -- bucket: hjelpere - initial: open - states: - open: - event: received - registrert: - event: registrert - trukket: - event: trukket - transitions: - open: - - registrert - - trukket -- bucket: husstander - initial: open - states: - betalt: - event: betalt - mail: - body: |- - Hei {navn}, - - Det du sendte om å bli medlem og få betalt kontingenten er nå betalt. - - Styret i Tomter Vel på post@tomtervel.no - subject: 'Tomter Vel: Betalt' - to: submitter - open: - event: received - mail: - body: |- - Hei {navn}, - - Vi har mottatt det du sendte om å bli medlem og få betalt kontingenten. - - Det du kan gjøre nå: {site}/decide/bli-medlem?chain={chain}&email={email} - - Styret i Tomter Vel på post@tomtervel.no - subject: 'Tomter Vel: Open' - to: submitter - utmeldt: - event: utmeldt - transitions: - open: - - betalt - - utmeldt -- bucket: innspill - initial: open - states: - ikke_tatt_med: - event: ikke_tatt_med - open: - event: received - tatt_med: - event: tatt_med - transitions: - open: - - tatt_med - - ikke_tatt_med -- bucket: komitesoknader - initial: open - states: - avslatt: - event: avslatt - open: - event: received - plassert: - event: plassert - transitions: - open: - - plassert - - avslatt -- bucket: medlemsendringer - initial: open - states: - open: - event: received - oppdatert: - event: oppdatert - transitions: - open: - - oppdatert -- bucket: oppslag - initial: open - states: - lagt_ut: - event: lagt_ut - mail: - body: |- - Hei {navn}, - - Det du sendte om et oppslag som naboene ser er nå lagt ut. - - Styret i Tomter Vel på post@tomtervel.no - subject: 'Tomter Vel: Lagt ut' - to: submitter - open: - event: received - tatt_ned: - event: tatt_ned - transitions: - open: - - lagt_ut - - tatt_ned -- bucket: trafikkmeldinger - initial: open - states: - avvist: - event: avvist - open: - event: received - ordnet: - event: ordnet - tatt_opp: - event: tatt_opp - transitions: - open: - - tatt_opp - - avvist - tatt_opp: - - ordnet - - avvist -- bucket: utlegg - initial: open - states: - avvist: - event: avvist - godkjent: - event: godkjent - open: - event: received - utbetalt: - event: utbetalt - transitions: - godkjent: - - utbetalt - - avvist - open: - - godkjent - - avvist diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/needs.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/needs.yaml deleted file mode 100644 index cfa1af2..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/needs.yaml +++ /dev/null @@ -1,265 +0,0 @@ -needs: -- done_when: - - betalt - - utmeldt - enters: / - handled_by: kasserer - id: bli-medlem - lands_in: husstander - max_fields: 3 - max_steps: 2 - stages: - - open - - betalt - - utmeldt - success: - - betalt - via: Medlem - wants: å bli medlem og få betalt kontingenten - who: en husstand i Tomter -- done_when: - - oppdatert - enters: / - handled_by: kasserer - id: endre-medlemskap - lands_in: medlemsendringer - max_fields: 3 - max_steps: 2 - stages: - - open - - oppdatert - success: - - oppdatert - via: Medlem - wants: at velet har riktige opplysninger om dem - who: et medlem som har flyttet, byttet e-post eller vil melde seg ut -- done_when: - - ordnet - - avvist - enters: / - handled_by: trafikk - id: trafikkfare - lands_in: trafikkmeldinger - max_fields: 2 - max_steps: 2 - stages: - - open - - tatt_opp - - ordnet - - avvist - success: - - ordnet - via: Melde fra - wants: at velet tar det opp med kommunen eller den som eier veien - who: en som har sett et farlig sted i trafikken -- done_when: - - utbedret - enters: / - handled_by: lekeplasser - id: anleggsfeil - lands_in: anleggsfeil - max_fields: 2 - max_steps: 2 - stages: - - open - - tatt_tak_i - - utbedret - success: - - utbedret - via: Melde fra - wants: at det blir fikset før noen skader seg - who: en som ser at noe på lekeplassen eller stien er ødelagt -- done_when: - - tatt_med - - ikke_tatt_med - enters: / - handled_by: horingsinstans - id: horingsinnspill - lands_in: innspill - max_fields: 3 - max_steps: 1 - stages: - - open - - tatt_med - - ikke_tatt_med - success: - - tatt_med - via: Få din mening med i høringssvaret - wants: at velet tar det med i sitt svar - who: en beboer som har en mening om en sak kommunen har på høring -- done_when: - - satt_opp - - takket_nei - enters: / - handled_by: arrangementer - id: hjelpe-til - lands_in: frivillige - max_fields: 3 - max_steps: 2 - stages: - - open - - kontaktet - - satt_opp - - takket_nei - success: - - satt_opp - via: Bidra - wants: å bli satt opp på noe som passer dem - who: en som vil hjelpe til på et arrangement eller en dugnad -- done_when: - - plassert - - avslatt - enters: / - handled_by: styret - id: komite - lands_in: komitesoknader - max_fields: 3 - max_steps: 2 - stages: - - open - - plassert - - avslatt - success: - - plassert - via: Bidra - wants: en plass i den komiteen som driver med det de bryr seg om - who: en som vil sitte i en komité -- done_when: - - ordnet - - ikke_lost - enters: / - handled_by: nabohjelp - id: trenger-hjelp - lands_in: hjelpebehov - max_fields: 4 - max_steps: 2 - stages: - - open - - formidlet - - ordnet - - ikke_lost - success: - - ordnet - via: Naboer - wants: at en nabo stiller opp - who: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss -- done_when: - - registrert - - trukket - enters: / - handled_by: nabohjelp - id: kan-hjelpe - lands_in: hjelpere - max_fields: 4 - max_steps: 2 - stages: - - open - - registrert - - trukket - success: - - registrert - via: Naboer - wants: å bli spurt når det passer - who: en nabo som kan stille opp når noen trenger det -- done_when: - - lagt_ut - - tatt_ned - enters: / - handled_by: styret - id: dele-utstyr - lands_in: oppslag - max_fields: 4 - max_steps: 2 - stages: - - open - - lagt_ut - - tatt_ned - success: - - lagt_ut - via: Naboer - wants: et oppslag som naboene ser - who: en nabo som har noe å låne ut, eller trenger å låne noe -- done_when: - - utbetalt - - avvist - enters: /komiteer/utlegg - enters_as: komiteer - handled_by: kasserer - id: utlegg - lands_in: utlegg - max_fields: 3 - max_steps: 1 - stages: - - open - - godkjent - - utbetalt - - avvist - success: - - utbetalt - via: Få pengene tilbake - wants: pengene tilbake - who: en i en komité som har lagt ut for noe -personas: -- id: nyinnflyttet - need: bli-medlem - text: Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det? -- id: glemte-a-betale - need: bli-medlem - text: Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem? -- id: ny-epost - need: endre-medlemskap - text: Vi har byttet e-postadresse og får ikke lenger noe fra dere. -- id: flytter - need: endre-medlemskap - text: Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista. -- id: skolevei - need: trafikkfare - text: Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går. -- id: busslomme - need: trafikkfare - text: Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy. -- id: huske - need: anleggsfeil - text: Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt. -- id: bru - need: anleggsfeil - text: Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom. -- id: blokker - need: horingsinnspill - text: Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra? -- id: togtider - need: horingsinnspill - text: Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det. -- id: vafler - need: hjelpe-til - text: Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk. -- id: motorsag - need: hjelpe-til - text: Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad. -- id: pendler - need: komite - text: Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det. -- id: planlegger - need: komite - text: Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring. -- id: tilhenger - need: dele-utstyr - text: Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp. -- id: stige - need: dele-utstyr - text: Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har? -- id: snomaking - need: trenger-hjelp - text: Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør? -- id: nyoperert - need: trenger-hjelp - text: Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg? -- id: hjemmekontor - need: kan-hjelpe - text: Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv. -- id: pensjonert-elektriker - need: kan-hjelpe - text: Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting. -- id: kvittering - need: utlegg - text: Jeg kjøpte pølser og kakao til skøytedagen for 1 840 kroner, her er kvitteringa, vil ha det igjen. diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/arrangementer/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/arrangementer/_section.yaml deleted file mode 100644 index 94afa0f..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/arrangementer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: arrangementer diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/arrangementer/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/arrangementer/index.yaml deleted file mode 100644 index 13a990e..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/arrangementer/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -alternatives: -- action: /arrangementer - consequence: - - Lagre - description: Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem. - features: - - description: '' - name: '' - resource: - requires_group: arrangementer - source: - bucket: frivillige - kind: kv - transitions: - - from: kontaktet - label: Sett opp - to: satt_opp - - from: kontaktet - label: Takket nei - to: takket_nei - - from: open - label: Merk som kontaktet - to: kontaktet - - from: open - label: Takket nei - to: takket_nei - name: Frivillige til arrangementer og dugnad -- action: /arrangementer - consequence: - - Inviter - description: De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: arrangementer - name: Inviter noen inn i Arrangementer -- action: /arrangementer - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: arrangementer - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer. -name: Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/bidra/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/bidra/index.yaml deleted file mode 100644 index 210b6dc..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/bidra/index.yaml +++ /dev/null @@ -1,82 +0,0 @@ -alternatives: -- action: /received/hjelpe-til - consequence: - - Meld meg på - description: 17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer. - encouragements: - - Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg. - features: - - description: Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit. - icon: lucide:clipboard-list - name: Hva skjer videre - - description: Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem leser dette - - description: Fortell kort hva du kan hjelpe til med. - icon: lucide:hand-helping - name: Meld deg som hjelper - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: Telefon - name: telefon - placeholder: 912 34 567 - type: tel - - label: Hva kan du hjelpe til med? - multiple: true - name: hva - options: - - 17. mai - - Juletregranstenning - - Skøytedag - - Dugnad på elvestien - - Det som trengs - type: select - name: Bli med på dugnad eller arrangement - record_as: frivillige -- action: /received/komite - consequence: - - Meld interesse - description: Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i. - encouragements: - - Det tar bare et minutt, og noen fra styret svarer deg. - features: - - description: Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå. - icon: lucide:clipboard-list - name: Hva skjer videre - - description: Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:handshake - name: Hvem leser dette - - description: Skriv hvilken komité du er interessert i. - icon: lucide:users - name: Meld deg til en komité - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: epost - placeholder: kari@eksempel.no - type: email - - label: Hvilken komité? - multiple: true - name: komite - options: - - Arrangementer - - Elvesti - - Høringsinstans - - Leke- og møteplasser - - Miljøgate - - Pendlerforhold - - Trafikkforhold - type: select - name: Sitt i en komité som betyr noe for deg - record_as: komitesoknader -description: For noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité. -name: What do you need? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/decide/bli-medlem.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/decide/bli-medlem.yaml deleted file mode 100644 index d7dad96..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/decide/bli-medlem.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: '' - name: Utmeldt - self_transition: - bucket: husstander - label: Utmeldt - to: utmeldt -description: '' -name: What would you like to do? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/decide/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/decide/dele-utstyr.yaml deleted file mode 100644 index dfece00..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/decide/dele-utstyr.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Oppslaget fjernes fra siden, så ingen flere spør om å låne det. - name: Meld at utstyret er tatt ned - self_transition: - bucket: oppslag - label: Ta ned oppslaget - to: tatt_ned -description: Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån. -name: Skal oppslaget om utstyret fortsatt stå ute? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/decide/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/decide/kan-hjelpe.yaml deleted file mode 100644 index 2598b32..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/decide/kan-hjelpe.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre. - name: Ta en pause fra nabohjelpen - self_transition: - bucket: hjelpere - label: Trekk meg - to: trukket -description: Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå. -name: Vil du fortsatt kunne bli spurt om å hjelpe en nabo? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/decide/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/decide/trenger-hjelp.yaml deleted file mode 100644 index 7aad76e..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/decide/trenger-hjelp.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Da vet vi at naboen har fått hjelpen sin, og saken lukkes. - name: Meld fra at hjelpen er gitt - self_transition: - bucket: hjelpebehov - label: Merk som ordnet - to: ordnet -description: Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet. -name: Har naboen fått hjelpen de trengte? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/horingsinstans/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/horingsinstans/_section.yaml deleted file mode 100644 index ad97e31..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/horingsinstans/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: horingsinstans diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/horingsinstans/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/horingsinstans/index.yaml deleted file mode 100644 index b5c4abb..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/horingsinstans/index.yaml +++ /dev/null @@ -1,59 +0,0 @@ -alternatives: -- action: /horingsinstans - consequence: - - Send svar - description: Her ligger innspill fra beboere til saker kommunen har på høring. - features: - - description: '' - name: '' - resource: - requires_group: horingsinstans - source: - bucket: innspill - kind: kv - transitions: - - from: open - label: Tatt med i svaret - to: tatt_med - - from: open - label: Ikke tatt med - to: ikke_tatt_med - name: Innspill til høringssvar -- action: /horingsinstans - consequence: - - Inviter - description: De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: horingsinstans - name: Inviter noen inn i Høringsinstans -- action: /horingsinstans - consequence: - - Send svar - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: horingsinstans - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her samler du innspillene og ser hva som er tatt med i velets høringssvar. -name: Hva sier vi i høringssvaret? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/index.yaml deleted file mode 100644 index 5ba7958..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/index.yaml +++ /dev/null @@ -1,78 +0,0 @@ -alternatives: -- description: To ting først. Resten står lenger ned på siden. - features: - - description: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. - icon: lucide:users - name: Et vel som taler for Tomter, og et medlemskap du styrer selv - - description: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet. - icon: lucide:handshake - name: En nabo som stiller opp når du trenger det - name: Dette gjør velet -- description: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. - features: - - description: 'Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil)' - icon: lucide:list - name: Alt som er meldt ødelagt - - description: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) - icon: lucide:list - name: Oppslagstavla - - description: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger) - icon: lucide:list - name: Alle trafikkmeldinger - name: Se deg rundt først -- action: /medlem - consequence: - - Continue - description: For en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding. - name: Medlem -- action: /melde-fra - consequence: - - Continue - description: For noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien. - name: Melde fra -- action: /bidra - consequence: - - Continue - description: For noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité. - name: Bidra -- action: /naboer - consequence: - - Continue - description: For en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut. - name: Naboer -- action: /received/horingsinnspill - consequence: - - Send innspill - description: Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar. - encouragements: - - Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen. - features: - - description: Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen. - icon: lucide:route - name: Hva skjer videre - - description: Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no. - icon: lucide:users - name: Hvem leser dette - - description: Fortell hvilken sak det gjelder og hva du mener. - icon: lucide:megaphone - name: Send et høringsinnspill - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: Hvilken sak gjelder det? - name: sak - placeholder: Reguleringsplan for Tomterveien - type: text - - label: Hva mener du? - name: innspill - placeholder: Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen. - type: textarea - name: Få din mening med i høringssvaret - record_as: innspill -description: Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står. -name: Hva gjør Tomter Vel, og hva kan du få her? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/kasserer/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/kasserer/_section.yaml deleted file mode 100644 index 2f8af2f..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/kasserer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: kasserer diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/kasserer/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/kasserer/index.yaml deleted file mode 100644 index 8dda085..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/kasserer/index.yaml +++ /dev/null @@ -1,102 +0,0 @@ -alternatives: -- action: /kasserer - consequence: - - Lagre - description: Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: husstander - kind: kv - transitions: - - from: open - label: Registrer betaling - to: betalt - - from: open - label: Meld ut - to: utmeldt - name: Nye medlemmer som venter på registrering -- action: /kasserer - consequence: - - Lagre - description: Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: medlemsendringer - kind: kv - transitions: - - from: open - label: Registrer endring - to: oppdatert - name: Endringer som venter på å bli registrert -- action: /kasserer - consequence: - - Lagre - description: Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: utlegg - kind: kv - transitions: - - from: godkjent - label: Merk som utbetalt - to: utbetalt - - from: godkjent - label: Avvis likevel - to: avvist - - from: open - label: Godkjenn utlegg - to: godkjent - - from: open - label: Avvis utlegg - to: avvist - name: Utlegg som venter på deg -- action: /kasserer - consequence: - - Inviter - description: De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: kasserer - name: Inviter noen inn i kassereren -- action: /kasserer - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer. -name: Hva venter på meg som kasserer akkurat nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/komiteer/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/komiteer/_section.yaml deleted file mode 100644 index 57e3295..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/komiteer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: komiteer diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/komiteer/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/komiteer/index.yaml deleted file mode 100644 index ccf6e5e..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/komiteer/index.yaml +++ /dev/null @@ -1,44 +0,0 @@ -alternatives: -- action: /komiteer/utlegg - consequence: - - Send utlegg - description: Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake. - name: Få tilbake det du har lagt ut -- action: /komiteer - consequence: - - Inviter - description: De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: komiteer - name: Inviter noen inn i komiteene -- action: /komiteer - consequence: - - Confirm - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: komiteer - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp. -name: Hva står ubehandlet i komiteen din nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/komiteer/utlegg-sent.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/komiteer/utlegg-sent.yaml deleted file mode 100644 index e347ad3..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/komiteer/utlegg-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga. - name: Pengene kommer på konto -- action: /komiteer - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Utlegget er sendt til kasserer. Du får beskjed når det er sjekket. -name: Hva skjer med utlegget mitt nå? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/komiteer/utlegg.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/komiteer/utlegg.yaml deleted file mode 100644 index 5d94ad3..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/komiteer/utlegg.yaml +++ /dev/null @@ -1,38 +0,0 @@ -alternatives: -- action: /komiteer/utlegg-sent - consequence: - - Send inn - description: Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten. - encouragements: - - Legg ved bilag om du har det, så går det raskere. - features: - - description: Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor. - icon: lucide:wallet - name: Fra krav til utbetaling - - description: Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster. - icon: lucide:coins - name: Kasserer ser dette - - description: Ha kvittering eller bilag klart før du fyller ut. - icon: lucide:receipt - name: Krav om refusjon - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: Beløp - name: belop - placeholder: 450 kr - type: text - - label: Hva gjaldt det - name: hva - placeholder: Kaffe og kjeks til dugnaden - type: textarea - name: Få pengene tilbake - record_as: utlegg -description: Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake. -followup: false -name: Har du lagt ut penger for komiteen og vil ha dem tilbake? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/lekeplasser/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/lekeplasser/_section.yaml deleted file mode 100644 index 1652221..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/lekeplasser/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: lekeplasser diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/lekeplasser/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/lekeplasser/index.yaml deleted file mode 100644 index 215a9bc..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/lekeplasser/index.yaml +++ /dev/null @@ -1,59 +0,0 @@ -alternatives: -- action: /lekeplasser - consequence: - - Lagre - description: Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses. - features: - - description: '' - name: '' - resource: - requires_group: lekeplasser - source: - bucket: anleggsfeil - kind: kv - transitions: - - from: open - label: Ta tak i saken - to: tatt_tak_i - - from: tatt_tak_i - label: Merk som utbedret - to: utbedret - name: Det som er meldt inn av skader -- action: /lekeplasser - consequence: - - Inviter - description: De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: lekeplasser - name: Inviter noen inn i Leke- og møteplasser -- action: /lekeplasser - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: lekeplasser - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset. -name: Hva må fikses på lekeplassene og stien nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/medlem/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/medlem/index.yaml deleted file mode 100644 index 731e235..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/medlem/index.yaml +++ /dev/null @@ -1,72 +0,0 @@ -alternatives: -- action: /received/bli-medlem - consequence: - - Bli medlem - description: Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet. - encouragements: - - Kasserer sender deg kontingenten på e-post rett etterpå. - features: - - description: Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem. - icon: lucide:coins - name: Etter innmelding - - description: Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden. - icon: lucide:user - name: Hvem svarer deg - - description: Ha adressen i Tomter og en e-post du bruker klar. - icon: lucide:user-plus - name: Meld deg inn - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: Adresse - name: adresse - placeholder: Tomterveien 12 - type: text - - label: Email - name: email - type: email - - label: Telefon - name: telefon - optional: true - placeholder: 123 45 678 - type: tel - name: Bli medlem av Tomter Vel - record_as: husstander -- action: /received/endre-medlemskap - consequence: - - Send endring - description: Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger. - encouragements: - - Det tar bare et par minutter, og kasserer ordner resten. - features: - - description: Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om. - icon: lucide:refresh-cw - name: Etter du sender inn - - description: Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden. - icon: lucide:user - name: Hvem svarer deg - - description: Skriv navnet ditt og hva som er nytt. - icon: lucide:pencil - name: Endre medlemskap - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: Adresse - name: adresse - placeholder: Ny adresse i Tomter - type: text - - label: Hva vil du endre? - name: hva_er_nytt - placeholder: Ny e-post, ny adresse, eller ønske om utmelding - type: textarea - name: Oppdater eller avslutt medlemskapet - record_as: medlemsendringer -description: For en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding. -name: What do you need? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/melde-fra/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/melde-fra/index.yaml deleted file mode 100644 index 6bd7c8b..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/melde-fra/index.yaml +++ /dev/null @@ -1,69 +0,0 @@ -alternatives: -- action: /received/trafikkfare - consequence: - - Send inn - description: Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre. - encouragements: - - Bare noen linjer om hva og hvor er nok til at vi kan følge opp. - features: - - description: Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist. - icon: lucide:route - name: Hva skjer videre - - description: Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no. - icon: lucide:car - name: Hvem leser dette - - description: Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer. - icon: lucide:alert-triangle - name: Meld trafikkfare - requirements: - - label: Hvor var det - name: hvor - placeholder: Krysset Tomterveien / Elvestien - type: text - - label: Hva så du - name: hva - placeholder: Dårlig sikt i krysset, biler kjører fort - type: textarea - - label: E-post (valgfritt) - name: epost - optional: true - placeholder: ola.nordmann@epost.no - type: email - name: Meld fra om en trafikkfare - record_as: trafikkmeldinger -- action: /received/anleggsfeil - consequence: - - Send inn - description: Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det. - encouragements: - - Det holder med noen ord om hva du så og hvor. - features: - - description: Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet. - icon: lucide:wrench - name: Hva skjer videre - - description: Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no. - icon: lucide:hammer - name: Hvem leser dette - - description: Fortell hva som er ødelagt og omtrent hvor det er. - icon: lucide:construction - name: Meld anleggsfeil - requirements: - - label: Hvor er det - name: hvor - options: - - Lekeplassen - - Elvestien - - Skøytebanen - - Et annet sted - type: select - - label: Hva er ødelagt - name: hva - placeholder: Løs planke på gjerdet ved husken - type: textarea - name: Meld fra om noe ødelagt - record_as: anleggsfeil -description: For noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien. -name: What do you need? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/naboer/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/naboer/index.yaml deleted file mode 100644 index ca8827c..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/naboer/index.yaml +++ /dev/null @@ -1,125 +0,0 @@ -alternatives: -- action: /received/trenger-hjelp - consequence: - - Be om hjelp - description: Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp. - encouragements: - - Vi finner en nabo som kan stille opp så fort som mulig. - features: - - description: Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed. - icon: lucide:hand-helping - name: Fra melding til hjelp - - description: Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem ser dette - - description: Skriv kort hva du trenger hjelp til. - icon: lucide:heart-handshake - name: Be om en hånd - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: email - placeholder: kari@eksempel.no - type: email - - label: Adresse - name: adresse - placeholder: Tomterveien 12 - type: text - - label: Hva trenger du hjelp til - name: hva - placeholder: Måke snø på trappa, handle inn litt mat - type: textarea - - label: Telefon - name: telefon - optional: true - placeholder: 123 45 678 - type: tel - name: Få en nabo til å stille opp - record_as: hjelpebehov -- action: /received/kan-hjelpe - consequence: - - Meld deg - description: Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer. - encouragements: - - Du blir bare kontaktet når noe passer for deg. - features: - - description: Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra. - icon: lucide:user-check - name: Fra påmelding til spørsmål - - description: Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no. - icon: lucide:heart-handshake - name: Hvem ser dette - - description: Fortell kort hva du kan bidra med. - icon: lucide:hand-helping - name: Meld deg som hjelper - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: email - placeholder: kari@eksempel.no - type: email - - label: Telefon - name: telefon - placeholder: 123 45 678 - type: tel - - label: Hva kan du hjelpe med - multiple: true - name: kan - options: - - Snømåking - - Handling - - Kjøring - - Småfiks i huset - - En prat og litt selskap - - Det som trengs - type: select - name: Bli spurt når en nabo trenger en hånd - record_as: hjelpere -- action: /received/dele-utstyr - consequence: - - Legg ut oppslag - description: Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det. - encouragements: - - Vi legger det ut så naboene kan se det. - features: - - description: Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen. - icon: lucide:clipboard-list - name: Fra oppslag til avtale - - description: Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem ser dette - - description: Skriv kort hva det gjelder, så folk skjønner det med en gang. - icon: lucide:package - name: Lån eller utlån - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: E-post - name: email - placeholder: ola@eksempel.no - type: email - - label: Har du eller trenger du - name: har_eller_trenger - options: - - Jeg har noe å låne ut - - Jeg trenger å låne noe - type: select - - label: Hva gjelder det - name: hva - placeholder: Hengerfeste til bil, tilhenger, stige - type: textarea - name: Lån ut eller lån av naboen - record_as: oppslag -description: For en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut. -name: What do you need? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/nabohjelp/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/nabohjelp/_section.yaml deleted file mode 100644 index 5b3a2ad..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/nabohjelp/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: nabohjelp diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/nabohjelp/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/nabohjelp/index.yaml deleted file mode 100644 index ab4db6b..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/nabohjelp/index.yaml +++ /dev/null @@ -1,85 +0,0 @@ -alternatives: -- action: /nabohjelp - consequence: - - Lagre - description: Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: hjelpebehov - kind: kv - transitions: - - from: formidlet - label: Meld ordnet - to: ordnet - - from: formidlet - label: Meld ikke løst - to: ikke_lost - - from: open - label: Koble til nabo - to: formidlet - - from: open - label: Meld ikke løst - to: ikke_lost - name: Naboer som trenger en hånd -- action: /nabohjelp - consequence: - - Lagre - description: Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: hjelpere - kind: kv - transitions: - - from: open - label: Registrer som hjelper - to: registrert - - from: open - label: Meld trukket - to: trukket - name: Naboer som kan stille opp -- action: /nabohjelp - consequence: - - Inviter - description: De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: nabohjelp - name: Inviter noen inn i nabohjelpen -- action: /nabohjelp - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her kobler du naboer som trenger hjelp med dem som kan stille opp. -name: Hvem trenger hjelp, og hvem kan stille opp? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/anleggsfeil.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/anleggsfeil.yaml deleted file mode 100644 index 09d4976..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/anleggsfeil.yaml +++ /dev/null @@ -1,15 +0,0 @@ -alternatives: -- description: Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg. - name: Komiteen tar tak i det -- action: /status/anleggsfeil - consequence: - - Se meldte feil - description: Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet. - name: Se andre meldte feil -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt. -name: Hva skjer med meldingen min nå? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/bli-medlem.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/bli-medlem.yaml deleted file mode 100644 index 533f8a6..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/bli-medlem.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten. - name: Kasserer sender deg betalingsinfo -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert. -name: Hva skjer etter at jeg har meldt meg inn? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/dele-utstyr.yaml deleted file mode 100644 index 761313b..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/dele-utstyr.yaml +++ /dev/null @@ -1,15 +0,0 @@ -alternatives: -- description: En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne. - name: Styret legger det ut for deg -- action: /status/oppslag - consequence: - - Se hva naboer deler - description: Se hva andre i Tomter har lagt ut til utlån akkurat nå. - name: Se alt naboene deler -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan. -name: Hva skjer med det jeg har lagt ut? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/endre-medlemskap.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/endre-medlemskap.yaml deleted file mode 100644 index c58d676..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/endre-medlemskap.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg. - name: Kasserer retter opp opplysningene -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut. -name: Hva skjer nå med det jeg meldte inn? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/hjelpe-til.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/hjelpe-til.yaml deleted file mode 100644 index 3c61af4..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/hjelpe-til.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden. - name: Komiteen tar kontakt -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg. -name: Hva skjer nå som jeg har meldt meg? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/horingsinnspill.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/horingsinnspill.yaml deleted file mode 100644 index bf87c92..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/horingsinnspill.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med. - name: Innspillet ditt inn i vurderingen -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Innspillet ditt er sendt til høringsinstansen i velet. -name: Hva skjer med det jeg har sagt om saken? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/kan-hjelpe.yaml deleted file mode 100644 index 0ac67b5..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/kan-hjelpe.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte. - name: Du blir kontaktet ved behov -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe. -name: Hva skjer nå som jeg har registrert meg? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/komite.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/komite.yaml deleted file mode 100644 index a36dfda..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/komite.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer. - name: Vi finner riktig komité til deg -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg. -name: Hva skjer nå som jeg har meldt interesse for en komité? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/trafikkfare.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/trafikkfare.yaml deleted file mode 100644 index 82da494..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/trafikkfare.yaml +++ /dev/null @@ -1,15 +0,0 @@ -alternatives: -- description: Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs. - name: Trafikkomiteen tar den videre -- action: /status/trafikkmeldinger - consequence: - - Se andre trafikkfarer - description: Se hva andre har meldt inn, og status på sakene. - name: Andre meldte trafikkfarer -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Meldingen din om trafikkfaren er sendt til komiteen for trafikk. -name: Hva skjer med meldingen min nå? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/trenger-hjelp.yaml deleted file mode 100644 index beec6e5..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/received/trenger-hjelp.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer. - name: Vi finner en nabo til deg -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp. -name: Hva skjer nå som jeg har bedt om hjelp? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/status/anleggsfeil/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/status/anleggsfeil/index.yaml deleted file mode 100644 index 805a464..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/status/anleggsfeil/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- description: Alle meldinger er åpne for alle å se. - features: - - description: '' - name: '' - resource: - jq: '.[] | .responses |= {hva: .hva, hvor: .hvor}' - public: true - source: - bucket: anleggsfeil - kind: kv - name: Status på meldte anleggsfeil -- action: / - consequence: - - Tilbake til meldinger - description: '' - name: Tilbake til meldinger -description: Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet. -name: Hva skjer med det jeg har meldt fra om? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/status/oppslag/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/status/oppslag/index.yaml deleted file mode 100644 index cf172af..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/status/oppslag/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- description: Åpen liste – navn og detaljer vises ikke. - features: - - description: '' - name: '' - resource: - jq: '.[] | .responses |= {har_eller_trenger: .har_eller_trenger, hva: .hva}' - public: true - source: - bucket: oppslag - kind: kv - name: Oversikt over det som er meldt inn -- action: / - consequence: - - Tilbake - description: '' - name: Tilbake -description: Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet. -name: Hva er sendt inn, og hvor langt har det kommet? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/status/trafikkmeldinger/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/status/trafikkmeldinger/index.yaml deleted file mode 100644 index 7444f44..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/status/trafikkmeldinger/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- description: Alle meldinger som er sendt inn, og hvor de står nå. - features: - - description: '' - name: '' - resource: - jq: '.[] | .responses |= {hva: .hva, hvor: .hvor}' - public: true - source: - bucket: trafikkmeldinger - kind: kv - name: Trafikkmeldinger og status -- action: / - consequence: - - Tilbake - description: '' - name: Tilbake -description: Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet. -name: Er det meldt fra om noe farlig i trafikken der jeg bor? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/styret/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/styret/_section.yaml deleted file mode 100644 index 5a34160..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/styret/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: styret diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/styret/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/styret/index.yaml deleted file mode 100644 index 1a27364..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/styret/index.yaml +++ /dev/null @@ -1,219 +0,0 @@ -alternatives: -- action: /styret - consequence: - - Lagre - description: Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: innspill - kind: kv - transitions: [] - name: Høringsinnspill fra beboerne -- action: /styret - consequence: - - Lagre - description: Her ligger alle som har meldt seg til en komité og venter på en plass. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: komitesoknader - kind: kv - transitions: - - from: open - label: Sett i komité - to: plassert - - from: open - label: Avslå søknaden - to: avslatt - name: Søknader til komiteene -- action: /styret - consequence: - - Lagre - description: Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: oppslag - kind: kv - transitions: - - from: open - label: Legg ut oppslaget - to: lagt_ut - - from: open - label: Ta ned oppslaget - to: tatt_ned - name: Utstyr til utlån blant naboer -- action: /styret - consequence: - - Lagre - description: Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: trafikkmeldinger - kind: kv - transitions: [] - name: Meldinger om trafikkfarer -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: arrangementer - name: Inviter noen inn i Arrangementer -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: horingsinstans - name: Inviter noen inn i Høringsinstans -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: kasserer - name: Inviter noen inn i kassereren -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: komiteer - name: Inviter noen inn i komiteene -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: lekeplasser - name: Inviter noen inn i Leke- og møteplasser -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: nabohjelp - name: Inviter noen inn i nabohjelpen -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: styret - name: Inviter noen inn i styret -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: trafikk - name: Inviter noen inn i Trafikkforhold -- action: /styret - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: 'Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.' -name: Hva venter på styret akkurat nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/trafikk/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/trafikk/_section.yaml deleted file mode 100644 index dbe5246..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/trafikk/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: trafikk diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/trafikk/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/trafikk/index.yaml deleted file mode 100644 index d14490e..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/questions/trafikk/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -alternatives: -- action: /trafikk - consequence: - - Lagre - description: Farlige steder i trafikken som naboer har meldt inn. - features: - - description: '' - name: '' - resource: - requires_group: trafikk - source: - bucket: trafikkmeldinger - kind: kv - transitions: - - from: open - label: Ta opp med kommunen - to: tatt_opp - - from: open - label: Avvis meldingen - to: avvist - - from: tatt_opp - label: Meld ordnet - to: ordnet - - from: tatt_opp - label: Avvis meldingen - to: avvist - name: Farlige steder i trafikken -- action: /trafikk - consequence: - - Inviter - description: De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: trafikk - name: Inviter noen inn i Trafikkforhold -- action: /trafikk - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: trafikk - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier. -name: Hvilke trafikkfarer må følges opp? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/site.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/site.yaml deleted file mode 100644 index c2ac781..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/site.yaml +++ /dev/null @@ -1,5 +0,0 @@ -lang: no -mail: - from: Tomter Vel - reply_to: post@tomtervel.no -title: Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/words.json b/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/words.json deleted file mode 100644 index 8a95a20..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/r1/site/words.json +++ /dev/null @@ -1,953 +0,0 @@ -{ - "aggregates.yaml": { - "hjelpebehov": { - "formidlet": { - "body": "Hei {navn},\n\nDet du sendte om at en nabo stiller opp er nå formidlet.\n\nDet du kan gjøre nå: {site}/decide/trenger-hjelp?chain={chain}&email={email}\n\nStyret i Tomter Vel på post@tomtervel.no", - "subject": "Tomter Vel: Formidlet" - }, - "open": { - "body": "Hei {navn},\n\nVi har mottatt det du sendte om at en nabo stiller opp.\n\nStyret i Tomter Vel på post@tomtervel.no", - "subject": "Tomter Vel: Open" - }, - "ordnet": { - "body": "Hei {navn},\n\nDet du sendte om at en nabo stiller opp er nå ordnet.\n\nStyret i Tomter Vel på post@tomtervel.no", - "subject": "Tomter Vel: Ordnet" - } - }, - "husstander": { - "betalt": { - "body": "Hei {navn},\n\nDet du sendte om å bli medlem og få betalt kontingenten er nå betalt.\n\nStyret i Tomter Vel på post@tomtervel.no", - "subject": "Tomter Vel: Betalt" - }, - "open": { - "body": "Hei {navn},\n\nVi har mottatt det du sendte om å bli medlem og få betalt kontingenten.\n\nDet du kan gjøre nå: {site}/decide/bli-medlem?chain={chain}&email={email}\n\nStyret i Tomter Vel på post@tomtervel.no", - "subject": "Tomter Vel: Open" - } - }, - "oppslag": { - "lagt_ut": { - "body": "Hei {navn},\n\nDet du sendte om et oppslag som naboene ser er nå lagt ut.\n\nStyret i Tomter Vel på post@tomtervel.no", - "subject": "Tomter Vel: Lagt ut" - } - } - }, - "questions/arrangementer/index.yaml": { - "buckets": { - "frivillige": { - "description": "Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem.", - "heading": "Frivillige til arrangementer og dugnad", - "moves": { - "kontaktet->satt_opp": "Sett opp", - "kontaktet->takket_nei": "Takket nei", - "open->kontaktet": "Merk som kontaktet", - "open->takket_nei": "Takket nei" - } - } - }, - "confirm": "Lagre", - "description": "Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "arrangementer": { - "button": "Inviter", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Arrangementer", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp?" - }, - "questions/bidra/index.yaml": { - "description": "For noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité.", - "needs": { - "hjelpe-til": { - "button": "Meld meg på", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.", - "encouragement": "Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg.", - "form_description": "Fortell kort hva du kan hjelpe til med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli med på dugnad eller arrangement", - "hints": { - "hva": "", - "navn": "Kari Nordmann", - "telefon": "912 34 567" - }, - "icon": "hand-helping", - "labels": { - "hva": "Hva kan du hjelpe til med?", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit.", - "road_icon": "lucide:clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - }, - "komite": { - "button": "Meld interesse", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i.", - "encouragement": "Det tar bare et minutt, og noen fra styret svarer deg.", - "form_description": "Skriv hvilken komité du er interessert i.", - "form_title": "Meld deg til en komité", - "heading": "Sitt i en komité som betyr noe for deg", - "hints": { - "epost": "kari@eksempel.no", - "komite": "", - "navn": "Kari Nordmann" - }, - "icon": "users", - "labels": { - "epost": "E-post", - "komite": "Hvilken komité?", - "navn": "Navn" - }, - "road_description": "Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå.", - "road_icon": "lucide:clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:handshake", - "who_title": "Hvem leser dette" - } - }, - "question": "What do you need?" - }, - "questions/decide/bli-medlem.yaml": { - "description": "", - "moves": { - "utmeldt": { - "button": "Utmeldt", - "description": "", - "heading": "Utmeldt" - } - }, - "question": "What would you like to do?" - }, - "questions/decide/dele-utstyr.yaml": { - "description": "Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån.", - "moves": { - "tatt_ned": { - "button": "Ta ned oppslaget", - "description": "Oppslaget fjernes fra siden, så ingen flere spør om å låne det.", - "heading": "Meld at utstyret er tatt ned" - } - }, - "question": "Skal oppslaget om utstyret fortsatt stå ute?" - }, - "questions/decide/kan-hjelpe.yaml": { - "description": "Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå.", - "moves": { - "trukket": { - "button": "Trekk meg", - "description": "Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre.", - "heading": "Ta en pause fra nabohjelpen" - } - }, - "question": "Vil du fortsatt kunne bli spurt om å hjelpe en nabo?" - }, - "questions/decide/trenger-hjelp.yaml": { - "description": "Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet.", - "moves": { - "ordnet": { - "button": "Merk som ordnet", - "description": "Da vet vi at naboen har fått hjelpen sin, og saken lukkes.", - "heading": "Meld fra at hjelpen er gitt" - } - }, - "question": "Har naboen fått hjelpen de trengte?" - }, - "questions/horingsinstans/index.yaml": { - "buckets": { - "innspill": { - "description": "Her ligger innspill fra beboere til saker kommunen har på høring.", - "heading": "Innspill til høringssvar", - "moves": { - "open->ikke_tatt_med": "Ikke tatt med", - "open->tatt_med": "Tatt med i svaret" - } - } - }, - "confirm": "Send svar", - "description": "Her samler du innspillene og ser hva som er tatt med i velets høringssvar.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "horingsinstans": { - "button": "Inviter", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Høringsinstans", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva sier vi i høringssvaret?" - }, - "questions/index.yaml": { - "description": "Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står.", - "doors": { - "bidra": { - "button": "Continue", - "description": "For noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité.", - "for_whom": "", - "heading": "Bidra", - "icon": "" - }, - "medlem": { - "button": "Continue", - "description": "For en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding.", - "for_whom": "", - "heading": "Medlem", - "icon": "" - }, - "melde-fra": { - "button": "Continue", - "description": "For noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien.", - "for_whom": "", - "heading": "Melde fra", - "icon": "" - }, - "naboer": { - "button": "Continue", - "description": "For en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut.", - "for_whom": "", - "heading": "Naboer", - "icon": "" - } - }, - "needs": { - "horingsinnspill": { - "button": "Send innspill", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "encouragement": "Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen.", - "form_description": "Fortell hvilken sak det gjelder og hva du mener.", - "form_title": "Send et høringsinnspill", - "heading": "Få din mening med i høringssvaret", - "hints": { - "innspill": "Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen.", - "navn": "Kari Nordmann", - "sak": "Reguleringsplan for Tomterveien" - }, - "icon": "megaphone", - "labels": { - "innspill": "Hva mener du?", - "navn": "Navn", - "sak": "Hvilken sak gjelder det?" - }, - "road_description": "Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - } - }, - "opener": { - "description": "To ting først. Resten står lenger ned på siden.", - "features": { - "medlem": { - "description": "Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil.", - "heading": "Et vel som taler for Tomter, og et medlemskap du styrer selv", - "icon": "users" - }, - "nabo": { - "description": "Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.", - "heading": "En nabo som stiller opp når du trenger det", - "icon": "handshake" - } - }, - "heading": "Dette gjør velet" - }, - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "shopping": { - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.", - "heading": "Se deg rundt først", - "items": { - "status-anleggsfeil": { - "description": "Lekeplassen og stien: det som er meldt, og det som er fikset.", - "heading": "Alt som er meldt ødelagt", - "icon": "list" - }, - "status-oppslag": { - "description": "Det naboene har å låne ut, og det de trenger å låne.", - "heading": "Oppslagstavla", - "icon": "list" - }, - "status-trafikkmeldinger": { - "description": "Farlige steder naboene har meldt, og hva velet har gjort med dem.", - "heading": "Alle trafikkmeldinger", - "icon": "list" - } - } - } - }, - "questions/kasserer/index.yaml": { - "buckets": { - "husstander": { - "description": "Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem.", - "heading": "Nye medlemmer som venter på registrering", - "moves": { - "open->betalt": "Registrer betaling", - "open->utmeldt": "Meld ut" - } - }, - "medlemsendringer": { - "description": "Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert.", - "heading": "Endringer som venter på å bli registrert", - "moves": { - "open->oppdatert": "Registrer endring" - } - }, - "utlegg": { - "description": "Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling.", - "heading": "Utlegg som venter på deg", - "moves": { - "godkjent->avvist": "Avvis likevel", - "godkjent->utbetalt": "Merk som utbetalt", - "open->avvist": "Avvis utlegg", - "open->godkjent": "Godkjenn utlegg" - } - } - }, - "confirm": "Lagre", - "description": "Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "kasserer": { - "button": "Inviter", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i kassereren", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva venter på meg som kasserer akkurat nå?" - }, - "questions/komiteer/index.yaml": { - "buckets": {}, - "confirm": "Confirm", - "description": "Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "komiteer": { - "button": "Inviter", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i komiteene", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": { - "utlegg": { - "button": "Send utlegg", - "description": "Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake.", - "heading": "Få tilbake det du har lagt ut" - } - }, - "question": "Hva står ubehandlet i komiteen din nå?" - }, - "questions/komiteer/utlegg-sent.yaml": { - "back": "Til forsiden", - "description": "Utlegget er sendt til kasserer. Du får beskjed når det er sjekket.", - "next_description": "Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga.", - "next_heading": "Pengene kommer på konto", - "question": "Hva skjer med utlegget mitt nå?" - }, - "questions/komiteer/utlegg.yaml": { - "button": "Send inn", - "description": "Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten.", - "encouragement": "Legg ved bilag om du har det, så går det raskere.", - "form_description": "Ha kvittering eller bilag klart før du fyller ut.", - "form_title": "Krav om refusjon", - "heading": "Få pengene tilbake", - "hints": { - "belop": "450 kr", - "hva": "Kaffe og kjeks til dugnaden", - "navn": "Kari Nordmann" - }, - "icon": "receipt", - "labels": { - "belop": "Beløp", - "hva": "Hva gjaldt det", - "navn": "Navn" - }, - "page_description": "Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake.", - "question": "Har du lagt ut penger for komiteen og vil ha dem tilbake?", - "road_description": "Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor.", - "road_icon": "lucide:wallet", - "road_title": "Fra krav til utbetaling", - "who_description": "Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster.", - "who_icon": "lucide:coins", - "who_title": "Kasserer ser dette" - }, - "questions/lekeplasser/index.yaml": { - "buckets": { - "anleggsfeil": { - "description": "Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses.", - "heading": "Det som er meldt inn av skader", - "moves": { - "open->tatt_tak_i": "Ta tak i saken", - "tatt_tak_i->utbedret": "Merk som utbedret" - } - } - }, - "confirm": "Lagre", - "description": "Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "lekeplasser": { - "button": "Inviter", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Leke- og møteplasser", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva må fikses på lekeplassene og stien nå?" - }, - "questions/medlem/index.yaml": { - "description": "For en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding.", - "needs": { - "bli-medlem": { - "button": "Bli medlem", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.", - "encouragement": "Kasserer sender deg kontingenten på e-post rett etterpå.", - "form_description": "Ha adressen i Tomter og en e-post du bruker klar.", - "form_title": "Meld deg inn", - "heading": "Bli medlem av Tomter Vel", - "hints": { - "adresse": "Tomterveien 12", - "email": "", - "navn": "Ola Nordmann", - "telefon": "123 45 678" - }, - "icon": "user-plus", - "labels": { - "adresse": "Adresse", - "email": "Email", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem.", - "road_icon": "lucide:coins", - "road_title": "Etter innmelding", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "who_title": "Hvem svarer deg" - }, - "endre-medlemskap": { - "button": "Send endring", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.", - "encouragement": "Det tar bare et par minutter, og kasserer ordner resten.", - "form_description": "Skriv navnet ditt og hva som er nytt.", - "form_title": "Endre medlemskap", - "heading": "Oppdater eller avslutt medlemskapet", - "hints": { - "adresse": "Ny adresse i Tomter", - "hva_er_nytt": "Ny e-post, ny adresse, eller ønske om utmelding", - "navn": "Ola Nordmann" - }, - "icon": "pencil", - "labels": { - "adresse": "Adresse", - "hva_er_nytt": "Hva vil du endre?", - "navn": "Navn" - }, - "road_description": "Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om.", - "road_icon": "lucide:refresh-cw", - "road_title": "Etter du sender inn", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "who_title": "Hvem svarer deg" - } - }, - "question": "What do you need?" - }, - "questions/melde-fra/index.yaml": { - "description": "For noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien.", - "needs": { - "anleggsfeil": { - "button": "Send inn", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.", - "encouragement": "Det holder med noen ord om hva du så og hvor.", - "form_description": "Fortell hva som er ødelagt og omtrent hvor det er.", - "form_title": "Meld anleggsfeil", - "heading": "Meld fra om noe ødelagt", - "hints": { - "hva": "Løs planke på gjerdet ved husken", - "hvor": "" - }, - "icon": "construction", - "labels": { - "hva": "Hva er ødelagt", - "hvor": "Hvor er det" - }, - "road_description": "Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet.", - "road_icon": "lucide:wrench", - "road_title": "Hva skjer videre", - "who_description": "Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:hammer", - "who_title": "Hvem leser dette" - }, - "trafikkfare": { - "button": "Send inn", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.", - "encouragement": "Bare noen linjer om hva og hvor er nok til at vi kan følge opp.", - "form_description": "Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer.", - "form_title": "Meld trafikkfare", - "heading": "Meld fra om en trafikkfare", - "hints": { - "epost": "ola.nordmann@epost.no", - "hva": "Dårlig sikt i krysset, biler kjører fort", - "hvor": "Krysset Tomterveien / Elvestien" - }, - "icon": "alert-triangle", - "labels": { - "epost": "E-post (valgfritt)", - "hva": "Hva så du", - "hvor": "Hvor var det" - }, - "road_description": "Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:car", - "who_title": "Hvem leser dette" - } - }, - "question": "What do you need?" - }, - "questions/naboer/index.yaml": { - "description": "For en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut.", - "needs": { - "dele-utstyr": { - "button": "Legg ut oppslag", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.", - "encouragement": "Vi legger det ut så naboene kan se det.", - "form_description": "Skriv kort hva det gjelder, så folk skjønner det med en gang.", - "form_title": "Lån eller utlån", - "heading": "Lån ut eller lån av naboen", - "hints": { - "email": "ola@eksempel.no", - "har_eller_trenger": "", - "hva": "Hengerfeste til bil, tilhenger, stige", - "navn": "Ola Nordmann" - }, - "icon": "package", - "labels": { - "email": "E-post", - "har_eller_trenger": "Har du eller trenger du", - "hva": "Hva gjelder det", - "navn": "Navn" - }, - "road_description": "Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen.", - "road_icon": "lucide:clipboard-list", - "road_title": "Fra oppslag til avtale", - "who_description": "Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem ser dette" - }, - "kan-hjelpe": { - "button": "Meld deg", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.", - "encouragement": "Du blir bare kontaktet når noe passer for deg.", - "form_description": "Fortell kort hva du kan bidra med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli spurt når en nabo trenger en hånd", - "hints": { - "email": "kari@eksempel.no", - "kan": "", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "hand-helping", - "labels": { - "email": "E-post", - "kan": "Hva kan du hjelpe med", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra.", - "road_icon": "lucide:user-check", - "road_title": "Fra påmelding til spørsmål", - "who_description": "Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no.", - "who_icon": "lucide:heart-handshake", - "who_title": "Hvem ser dette" - }, - "trenger-hjelp": { - "button": "Be om hjelp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.", - "encouragement": "Vi finner en nabo som kan stille opp så fort som mulig.", - "form_description": "Skriv kort hva du trenger hjelp til.", - "form_title": "Be om en hånd", - "heading": "Få en nabo til å stille opp", - "hints": { - "adresse": "Tomterveien 12", - "email": "kari@eksempel.no", - "hva": "Måke snø på trappa, handle inn litt mat", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "heart-handshake", - "labels": { - "adresse": "Adresse", - "email": "E-post", - "hva": "Hva trenger du hjelp til", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed.", - "road_icon": "lucide:hand-helping", - "road_title": "Fra melding til hjelp", - "who_description": "Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem ser dette" - } - }, - "question": "What do you need?" - }, - "questions/nabohjelp/index.yaml": { - "buckets": { - "hjelpebehov": { - "description": "Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe.", - "heading": "Naboer som trenger en hånd", - "moves": { - "formidlet->ikke_lost": "Meld ikke løst", - "formidlet->ordnet": "Meld ordnet", - "open->formidlet": "Koble til nabo", - "open->ikke_lost": "Meld ikke løst" - } - }, - "hjelpere": { - "description": "Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem.", - "heading": "Naboer som kan stille opp", - "moves": { - "open->registrert": "Registrer som hjelper", - "open->trukket": "Meld trukket" - } - } - }, - "confirm": "Lagre", - "description": "Her kobler du naboer som trenger hjelp med dem som kan stille opp.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "nabohjelp": { - "button": "Inviter", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i nabohjelpen", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvem trenger hjelp, og hvem kan stille opp?" - }, - "questions/received/anleggsfeil.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt.", - "next_description": "Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg.", - "next_heading": "Komiteen tar tak i det", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se meldte feil", - "description": "Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet.", - "heading": "Se andre meldte feil" - } - }, - "questions/received/bli-medlem.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert.", - "next_description": "Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten.", - "next_heading": "Kasserer sender deg betalingsinfo", - "question": "Hva skjer etter at jeg har meldt meg inn?" - }, - "questions/received/dele-utstyr.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan.", - "next_description": "En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne.", - "next_heading": "Styret legger det ut for deg", - "question": "Hva skjer med det jeg har lagt ut?", - "see_all": { - "button": "Se hva naboer deler", - "description": "Se hva andre i Tomter har lagt ut til utlån akkurat nå.", - "heading": "Se alt naboene deler" - } - }, - "questions/received/endre-medlemskap.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut.", - "next_description": "Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg.", - "next_heading": "Kasserer retter opp opplysningene", - "question": "Hva skjer nå med det jeg meldte inn?" - }, - "questions/received/hjelpe-til.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg.", - "next_description": "Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden.", - "next_heading": "Komiteen tar kontakt", - "question": "Hva skjer nå som jeg har meldt meg?" - }, - "questions/received/horingsinnspill.yaml": { - "back": "Tilbake til forsiden", - "description": "Innspillet ditt er sendt til høringsinstansen i velet.", - "next_description": "De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med.", - "next_heading": "Innspillet ditt inn i vurderingen", - "question": "Hva skjer med det jeg har sagt om saken?" - }, - "questions/received/kan-hjelpe.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe.", - "next_description": "Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte.", - "next_heading": "Du blir kontaktet ved behov", - "question": "Hva skjer nå som jeg har registrert meg?" - }, - "questions/received/komite.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg.", - "next_description": "Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer.", - "next_heading": "Vi finner riktig komité til deg", - "question": "Hva skjer nå som jeg har meldt interesse for en komité?" - }, - "questions/received/trafikkfare.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din om trafikkfaren er sendt til komiteen for trafikk.", - "next_description": "Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs.", - "next_heading": "Trafikkomiteen tar den videre", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se andre trafikkfarer", - "description": "Se hva andre har meldt inn, og status på sakene.", - "heading": "Andre meldte trafikkfarer" - } - }, - "questions/received/trenger-hjelp.yaml": { - "back": "Til forsiden", - "description": "Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp.", - "next_description": "Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer.", - "next_heading": "Vi finner en nabo til deg", - "question": "Hva skjer nå som jeg har bedt om hjelp?" - }, - "questions/status/anleggsfeil/index.yaml": { - "back": "Tilbake til meldinger", - "description": "Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet.", - "heading": "Status på meldte anleggsfeil", - "list_description": "Alle meldinger er åpne for alle å se.", - "question": "Hva skjer med det jeg har meldt fra om?" - }, - "questions/status/oppslag/index.yaml": { - "back": "Tilbake", - "description": "Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet.", - "heading": "Oversikt over det som er meldt inn", - "list_description": "Åpen liste – navn og detaljer vises ikke.", - "question": "Hva er sendt inn, og hvor langt har det kommet?" - }, - "questions/status/trafikkmeldinger/index.yaml": { - "back": "Tilbake", - "description": "Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet.", - "heading": "Trafikkmeldinger og status", - "list_description": "Alle meldinger som er sendt inn, og hvor de står nå.", - "question": "Er det meldt fra om noe farlig i trafikken der jeg bor?" - }, - "questions/styret/index.yaml": { - "buckets": { - "innspill": { - "description": "Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar.", - "heading": "Høringsinnspill fra beboerne", - "moves": {} - }, - "komitesoknader": { - "description": "Her ligger alle som har meldt seg til en komité og venter på en plass.", - "heading": "Søknader til komiteene", - "moves": { - "open->avslatt": "Avslå søknaden", - "open->plassert": "Sett i komité" - } - }, - "oppslag": { - "description": "Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut.", - "heading": "Utstyr til utlån blant naboer", - "moves": { - "open->lagt_ut": "Legg ut oppslaget", - "open->tatt_ned": "Ta ned oppslaget" - } - }, - "trafikkmeldinger": { - "description": "Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier.", - "heading": "Meldinger om trafikkfarer", - "moves": {} - } - }, - "confirm": "Lagre", - "description": "Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "arrangementer": { - "button": "Inviter", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Arrangementer", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "horingsinstans": { - "button": "Inviter", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Høringsinstans", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "kasserer": { - "button": "Inviter", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i kassereren", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "komiteer": { - "button": "Inviter", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i komiteene", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "lekeplasser": { - "button": "Inviter", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Leke- og møteplasser", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "nabohjelp": { - "button": "Inviter", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i nabohjelpen", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "styret": { - "button": "Inviter", - "description": "De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i styret", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "trafikk": { - "button": "Inviter", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Trafikkforhold", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva venter på styret akkurat nå?" - }, - "questions/trafikk/index.yaml": { - "buckets": { - "trafikkmeldinger": { - "description": "Farlige steder i trafikken som naboer har meldt inn.", - "heading": "Farlige steder i trafikken", - "moves": { - "open->avvist": "Avvis meldingen", - "open->tatt_opp": "Ta opp med kommunen", - "tatt_opp->avvist": "Avvis meldingen", - "tatt_opp->ordnet": "Meld ordnet" - } - } - }, - "confirm": "Lagre", - "description": "Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "trafikk": { - "button": "Inviter", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Trafikkforhold", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvilke trafikkfarer må følges opp?" - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/rated/rate.json b/vendor/trainer/runs/tomtervel-opener-2026-09-23/rated/rate.json deleted file mode 100644 index 38d7deb..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/rated/rate.json +++ /dev/null @@ -1,497 +0,0 @@ -{ - "anleggsfeil": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 25.166666666666668, - "options": 5, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 24.74264705882353, - "options": 2, - "overloaded": false, - "page": "/melde-fra", - "personas": 2, - "required_fields": 2, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "bli-medlem": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 25.166666666666668, - "options": 5, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 40.0, - "options": 2, - "overloaded": false, - "page": "/medlem", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 1 - } - } - ], - "steps": 2 - }, - "dele-utstyr": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 25.166666666666668, - "options": 5, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 23.359472588480223, - "options": 3, - "overloaded": false, - "page": "/naboer", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "endre-medlemskap": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 25.166666666666668, - "options": 5, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 35.306306306306304, - "options": 2, - "overloaded": false, - "page": "/medlem", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "hjelpe-til": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 25.166666666666668, - "options": 5, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 27.804347826086957, - "options": 2, - "overloaded": false, - "page": "/bidra", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 0 - } - } - ], - "steps": 2 - }, - "horingsinnspill": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 26.20879120879121, - "options": 5, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "kan-hjelpe": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 25.166666666666668, - "options": 5, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 1, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 24.504761904761907, - "options": 3, - "overloaded": false, - "page": "/naboer", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "komite": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 25.166666666666668, - "options": 5, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 1, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 23.465206185567013, - "options": 2, - "overloaded": false, - "page": "/bidra", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 1 - } - } - ], - "steps": 2 - }, - "trafikkfare": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 25.166666666666668, - "options": 5, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 32.047619047619044, - "options": 2, - "overloaded": false, - "page": "/melde-fra", - "personas": 2, - "required_fields": 2, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "trenger-hjelp": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 25.166666666666668, - "options": 5, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 1, - "which": 0 - }, - "control_ok": false, - "followup_shown": true, - "lix": 21.909090909090907, - "options": 3, - "overloaded": false, - "page": "/naboer", - "personas": 2, - "required_fields": 4, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "utlegg": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 36.333333333333336, - "options": 1, - "overloaded": false, - "page": "/komiteer/utlegg", - "personas": 1, - "required_fields": 3, - "understanding": { - "asked": 1, - "next": 1, - "where": 1, - "which": 1 - } - } - ], - "steps": 1 - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/score.log b/vendor/trainer/runs/tomtervel-opener-2026-09-23/score.log deleted file mode 100644 index 47cdbd7..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/score.log +++ /dev/null @@ -1,49 +0,0 @@ -== answer full -== answer skim -== score full -MISROUTE: glemte-a-betale@/medlem: picked "Oppdater eller avslutt medlemskapet" (0.95), the need is met by ["Bli medlem av Tomter Vel"] -MISROUTE: busslomme@/melde-fra: picked "Meld fra om noe ødelagt" (0.95), the need is met by ["Meld fra om en trafikkfare"] -MISROUTE: togtider@/: picked "Meld fra om noe som bør fikses" (0.95), the need is met by ["Få din mening med i høringssvaret"] -MISROUTE: vafler@/: picked "Få hjelp av naboer, eller gi en hånd selv" (0.95), the need is met by ["Bli med og gjør en innsats"] -MISROUTE: motorsag@/: picked "Meld fra om noe som bør fikses" (0.95), the need is met by ["Bli med og gjør en innsats"] -MISROUTE: planlegger@/: picked "Få din mening med i høringssvaret" (0.95), the need is met by ["Bli med og gjør en innsats"] -MISROUTE: nyoperert@/: picked "Meld fra om noe som bør fikses" (0.95), the need is met by ["Få hjelp av naboer, eller gi en hånd selv"] -MISROUTE: hjemmekontor@/naboer: picked "Få en nabo til å stille opp" (0.95), the need is met by ["Bli spurt når en nabo trenger en hånd"] -wording: 30/38 routed right (79%) -== score skim -MISROUTE: glemte-a-betale@/medlem: picked "Oppdater eller avslutt medlemskapet" (0.95), the need is met by ["Bli medlem av Tomter Vel"] -MISROUTE: ny-epost@/: picked "Få hjelp av naboer, eller gi en hånd selv" (0.95), the need is met by ["Bli medlem eller endre opplysningene dine"] -MISROUTE: skolevei@/: picked "Få hjelp av naboer, eller gi en hånd selv" (0.95), the need is met by ["Meld fra om noe som bør fikses"] -MISROUTE: busslomme@/: picked "Få hjelp av naboer, eller gi en hånd selv" (0.95), the need is met by ["Meld fra om noe som bør fikses"] -MISROUTE: bru@/: picked "Bli medlem eller endre opplysningene dine" (0.95), the need is met by ["Meld fra om noe som bør fikses"] -MISROUTE: blokker@/: picked "Meld fra om noe som bør fikses" (0.95), the need is met by ["Få din mening med i høringssvaret"] -MISROUTE: togtider@/: picked "Få hjelp av naboer, eller gi en hånd selv" (0.95), the need is met by ["Få din mening med i høringssvaret"] -MISROUTE: vafler@/: picked "Få hjelp av naboer, eller gi en hånd selv" (0.95), the need is met by ["Bli med og gjør en innsats"] -MISROUTE: pendler@/bidra: picked "Bli med på dugnad eller arrangement" (0.85), the need is met by ["Sitt i en komité som betyr noe for deg"] -MISROUTE: planlegger@/: picked "Få din mening med i høringssvaret" (0.95), the need is met by ["Bli med og gjør en innsats"] -MISROUTE: snomaking@/naboer: picked "Bli spurt når en nabo trenger en hånd" (0.95), the need is met by ["Få en nabo til å stille opp"] -MISROUTE: nyoperert@/naboer: picked "Lån ut eller lån av naboen" (0.95), the need is met by ["Få en nabo til å stille opp"] -wording: 26/38 routed right (68%) -== rate -need LIX which where asked next gutted twin says page load -bli-medlem @/ 25 very easy 1/2 2/2 2/2 - 0/0/0/- ok 5 options, 0 required -bli-medlem @/medlem 40 takes effort 1/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 3 required -endre-medlemskap @/ 25 very easy 2/2 2/2 2/2 - 0/0/0/- ok 5 options, 0 required -endre-medlemskap @/medlem 35 easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 3 required -trafikkfare @/ 25 very easy 1/2 2/2 2/2 - 0/0/0/- ok 5 options, 0 required -trafikkfare @/melde-fra 32 easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 2 required -anleggsfeil @/ 25 very easy 2/2 2/2 2/2 - 0/0/0/- ok 5 options, 0 required -anleggsfeil @/melde-fra 25 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 2 required -horingsinnspill 26 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 5 options, 3 required -hjelpe-til @/ 25 very easy 1/2 2/2 2/2 - 0/0/0/- ok 5 options, 0 required -hjelpe-til @/bidra 28 very easy 0/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 3 required -komite @/ 25 very easy 2/2 2/2 2/2 - 0/0/0/- ok 5 options, 0 required -komite @/bidra 23 very easy 1/2 2/2 2/2 2/2 0/1/0/0 FAILED: where 2 options, 3 required -trenger-hjelp @/ 25 very easy 1/2 2/2 2/2 - 0/0/0/- ok 5 options, 0 required -trenger-hjelp @/naboer 22 very easy 2/2 2/2 2/2 2/2 0/1/0/0 FAILED: where 3 options, 4 required -kan-hjelpe @/ 25 very easy 2/2 2/2 2/2 - 0/0/0/- ok 5 options, 0 required -kan-hjelpe @/naboer 25 very easy 2/2 2/2 2/2 2/2 0/1/0/0 FAILED: where 3 options, 4 required -dele-utstyr @/ 25 very easy 2/2 2/2 2/2 - 0/0/0/- ok 5 options, 0 required -dele-utstyr @/naboer 23 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 3 options, 4 required -utlegg 36 easy 1/1 1/1 1/1 1/1 0/0/0/0 ok 1 options, 3 required -== done diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/score.sh b/vendor/trainer/runs/tomtervel-opener-2026-09-23/score.sh deleted file mode 100755 index b7ef331..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/score.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/sh -# Score the built uhhm site: routing by a blind visitor (qwen3:8b), one -# task per call, with and without descriptions; then rate the cards. -set -eu -cd "$(dirname "$0")" -IRIS=/var/local/cargo-target/release/iris -T=/var/local/cargo-target/release/portal-trainer -LLM="MODEL=qwen3:8b ../../engines/ollama.sh" -$IRIS check --path site/questions --needs-tasks tasks-full.jsonl --needs-sim model.json > iris.log 2>&1 -$IRIS check --path site/questions --needs-tasks tasks-skim.jsonl --skim >> iris.log 2>&1 -echo "== answer full"; $T answer --tasks tasks-full.jsonl --repo site --llm "$LLM" > answers-full.jsonl -echo "== answer skim"; $T answer --tasks tasks-skim.jsonl --repo site --llm "$LLM" > answers-skim.jsonl -echo "== score full"; $IRIS check --path site/questions --needs-tasks tasks-full.jsonl --needs-score answers-full.jsonl 2>&1 | grep -E "MISROUTE|HESITANT|UNANSWERED|wording:" -echo "== score skim"; $IRIS check --path site/questions --needs-tasks tasks-skim.jsonl --skim --needs-score answers-skim.jsonl 2>&1 | grep -E "MISROUTE|HESITANT|UNANSWERED|wording:" -echo "== rate"; $T rate --model model.json --out rated --repo site --llm "$LLM" 2>&1 | tail -40 -echo "== done" diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/aggregates.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/aggregates.yaml deleted file mode 100644 index 87955c7..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/aggregates.yaml +++ /dev/null @@ -1,192 +0,0 @@ -aggregates: -- bucket: anleggsfeil - initial: open - states: - open: - event: received - tatt_tak_i: - event: tatt_tak_i - utbedret: - event: utbedret - transitions: - open: - - tatt_tak_i - tatt_tak_i: - - utbedret -- bucket: frivillige - initial: open - states: - kontaktet: - event: kontaktet - open: - event: received - satt_opp: - event: satt_opp - takket_nei: - event: takket_nei - transitions: - kontaktet: - - satt_opp - - takket_nei - open: - - kontaktet - - takket_nei -- bucket: hjelpebehov - initial: open - states: - formidlet: - event: formidlet - mail: - body: |- - Vi har funnet en nabo som kan hjelpe. De tar kontakt med deg direkte. - - Det du kan gjøre nå: {site}/decide/trenger-hjelp?chain={chain}&email={email} - subject: En nabo er koblet på - to: submitter - ikke_lost: - event: ikke_lost - open: - event: received - mail: - body: Vi har mottatt det du trenger hjelp til, og ser etter en nabo som kan stille opp. Du hører fra oss så snart vi har funnet noen. - subject: Vi leter etter en nabo til deg - to: submitter - ordnet: - event: ordnet - mail: - body: Godt å høre at det ordnet seg. Takk for at du sa fra, og lykke til videre. - subject: Bra det løste seg - to: submitter - transitions: - formidlet: - - ordnet - - ikke_lost - open: - - formidlet - - ikke_lost -- bucket: hjelpere - initial: open - states: - open: - event: received - registrert: - event: registrert - trukket: - event: trukket - transitions: - open: - - registrert - - trukket -- bucket: husstander - initial: open - states: - betalt: - event: betalt - mail: - body: Kontingenten er registrert betalt. Du er nå medlem av Tomter Vel - velkommen med! - subject: Medlemskapet er i orden - to: submitter - open: - event: received - mail: - body: |- - Takk for at du vil bli medlem. Du får en betalingsoppfordring med kontonummer og beløp så snart kasserer har sett på saken. - - Det du kan gjøre nå: {site}/decide/bli-medlem?chain={chain}&email={email} - subject: Nesten i mål som medlem - to: submitter - utmeldt: - event: utmeldt - transitions: - open: - - betalt - - utmeldt -- bucket: innspill - initial: open - states: - ikke_tatt_med: - event: ikke_tatt_med - open: - event: received - tatt_med: - event: tatt_med - transitions: - open: - - tatt_med - - ikke_tatt_med -- bucket: komitesoknader - initial: open - states: - avslatt: - event: avslatt - open: - event: received - plassert: - event: plassert - transitions: - open: - - plassert - - avslatt -- bucket: medlemsendringer - initial: open - states: - open: - event: received - oppdatert: - event: oppdatert - transitions: - open: - - oppdatert -- bucket: oppslag - initial: open - states: - lagt_ut: - event: lagt_ut - mail: - body: Oppslaget ditt er lagt ut, og naboene kan nå se det. - subject: Oppslaget er synlig for naboene - to: submitter - open: - event: received - tatt_ned: - event: tatt_ned - transitions: - open: - - lagt_ut - - tatt_ned -- bucket: trafikkmeldinger - initial: open - states: - avvist: - event: avvist - open: - event: received - ordnet: - event: ordnet - tatt_opp: - event: tatt_opp - transitions: - open: - - tatt_opp - - avvist - tatt_opp: - - ordnet - - avvist -- bucket: utlegg - initial: open - states: - avvist: - event: avvist - godkjent: - event: godkjent - open: - event: received - utbetalt: - event: utbetalt - transitions: - godkjent: - - utbetalt - - avvist - open: - - godkjent - - avvist diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/needs.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/needs.yaml deleted file mode 100644 index 8fc2317..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/needs.yaml +++ /dev/null @@ -1,312 +0,0 @@ -needs: -- done_when: - - betalt - - utmeldt - enters: / - handled_by: kasserer - id: bli-medlem - lands_in: husstander - max_fields: 3 - max_steps: 2 - stage_words: - betalt: betalt - open: mottatt - utmeldt: meldt ut - stages: - - open - - betalt - - utmeldt - success: - - betalt - via: Vedrørende medlemskap og endring av registrerte opplysninger - wants: å bli medlem og få betalt kontingenten - who: en husstand i Tomter -- done_when: - - oppdatert - enters: / - handled_by: kasserer - id: endre-medlemskap - lands_in: medlemsendringer - max_fields: 3 - max_steps: 2 - stage_words: - open: mottatt - oppdatert: oppdatert - stages: - - open - - oppdatert - success: - - oppdatert - via: Vedrørende medlemskap og endring av registrerte opplysninger - wants: at velet har riktige opplysninger om dem - who: et medlem som har flyttet, byttet e-post eller vil melde seg ut -- done_when: - - ordnet - - avvist - enters: / - handled_by: trafikk - id: trafikkfare - lands_in: trafikkmeldinger - max_fields: 2 - max_steps: 2 - stage_words: - avvist: avvist - open: mottatt - ordnet: ordnet - tatt_opp: tatt opp med kommunen - stages: - - open - - tatt_opp - - ordnet - - avvist - success: - - ordnet - via: Vedrørende melding om forhold som bør utbedres - wants: at velet tar det opp med kommunen eller den som eier veien - who: en som har sett et farlig sted i trafikken -- done_when: - - utbedret - enters: / - handled_by: lekeplasser - id: anleggsfeil - lands_in: anleggsfeil - max_fields: 2 - max_steps: 2 - stage_words: - open: mottatt - tatt_tak_i: tatt tak i - utbedret: utbedret - stages: - - open - - tatt_tak_i - - utbedret - success: - - utbedret - via: Vedrørende melding om forhold som bør utbedres - wants: at det blir fikset før noen skader seg - who: en som ser at noe på lekeplassen eller stien er ødelagt -- done_when: - - tatt_med - - ikke_tatt_med - enters: / - handled_by: horingsinstans - id: horingsinnspill - lands_in: innspill - max_fields: 3 - max_steps: 1 - stage_words: - ikke_tatt_med: ikke tatt med - open: mottatt - tatt_med: tatt med i høringssvaret - stages: - - open - - tatt_med - - ikke_tatt_med - success: - - tatt_med - via: Få din mening med i høringssvaret - wants: at velet tar det med i sitt svar - who: en beboer som har en mening om en sak kommunen har på høring -- done_when: - - satt_opp - - takket_nei - enters: / - handled_by: arrangementer - id: hjelpe-til - lands_in: frivillige - max_fields: 3 - max_steps: 2 - stage_words: - kontaktet: kontaktet - open: mottatt - satt_opp: satt opp - takket_nei: takket nei - stages: - - open - - kontaktet - - satt_opp - - takket_nei - success: - - satt_opp - via: Vedrørende deltakelse og frivillig innsats - wants: å bli satt opp på noe som passer dem - who: en som vil hjelpe til på et arrangement eller en dugnad -- done_when: - - plassert - - avslatt - enters: / - handled_by: styret - id: komite - lands_in: komitesoknader - max_fields: 3 - max_steps: 2 - stage_words: - avslatt: avslått - open: mottatt - plassert: plassert i en komité - stages: - - open - - plassert - - avslatt - success: - - plassert - via: Vedrørende deltakelse og frivillig innsats - wants: en plass i den komiteen som driver med det de bryr seg om - who: en som vil sitte i en komité -- done_when: - - ordnet - - ikke_lost - enters: / - handled_by: nabohjelp - id: trenger-hjelp - lands_in: hjelpebehov - max_fields: 4 - max_steps: 2 - stage_words: - formidlet: formidlet til en nabo - ikke_lost: ikke løst - open: mottatt - ordnet: ordnet - stages: - - open - - formidlet - - ordnet - - ikke_lost - success: - - ordnet - via: Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand - wants: at en nabo stiller opp - who: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss -- done_when: - - registrert - - trukket - enters: / - handled_by: nabohjelp - id: kan-hjelpe - lands_in: hjelpere - max_fields: 4 - max_steps: 2 - stage_words: - open: mottatt - registrert: registrert som hjelper - trukket: trukket - stages: - - open - - registrert - - trukket - success: - - registrert - via: Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand - wants: å bli spurt når det passer - who: en nabo som kan stille opp når noen trenger det -- done_when: - - lagt_ut - - tatt_ned - enters: / - handled_by: styret - id: dele-utstyr - lands_in: oppslag - max_fields: 4 - max_steps: 2 - stage_words: - lagt_ut: lagt ut - open: mottatt - tatt_ned: tatt ned - stages: - - open - - lagt_ut - - tatt_ned - success: - - lagt_ut - via: Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand - wants: et oppslag som naboene ser - who: en nabo som har noe å låne ut, eller trenger å låne noe -- done_when: - - utbetalt - - avvist - enters: /komiteer/utlegg - enters_as: komiteer - handled_by: kasserer - id: utlegg - lands_in: utlegg - max_fields: 3 - max_steps: 1 - stage_words: - avvist: avvist - godkjent: godkjent - open: mottatt - utbetalt: utbetalt - stages: - - open - - godkjent - - utbetalt - - avvist - success: - - utbetalt - via: Få pengene tilbake - wants: pengene tilbake - who: en i en komité som har lagt ut for noe -personas: -- id: nyinnflyttet - need: bli-medlem - text: Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det? -- id: glemte-a-betale - need: bli-medlem - text: Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem? -- id: ny-epost - need: endre-medlemskap - text: Vi har byttet e-postadresse og får ikke lenger noe fra dere. -- id: flytter - need: endre-medlemskap - text: Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista. -- id: skolevei - need: trafikkfare - text: Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går. -- id: busslomme - need: trafikkfare - text: Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy. -- id: huske - need: anleggsfeil - text: Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt. -- id: bru - need: anleggsfeil - text: Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom. -- id: blokker - need: horingsinnspill - text: Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra? -- id: togtider - need: horingsinnspill - text: Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det. -- id: vafler - need: hjelpe-til - text: Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk. -- id: motorsag - need: hjelpe-til - text: Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad. -- id: pendler - need: komite - text: Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det. -- id: planlegger - need: komite - text: Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring. -- id: tilhenger - need: dele-utstyr - text: Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp. -- id: stige - need: dele-utstyr - text: Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har? -- id: snomaking - need: trenger-hjelp - text: Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør? -- id: nyoperert - need: trenger-hjelp - text: Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg? -- id: hjemmekontor - need: kan-hjelpe - text: Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv. -- id: pensjonert-elektriker - need: kan-hjelpe - text: Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting. -- id: kvittering - need: utlegg - text: Jeg kjøpte pølser og kakao til skøytedagen for 1 840 kroner, her er kvitteringa, vil ha det igjen. diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/arrangementer/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/arrangementer/_section.yaml deleted file mode 100644 index 94afa0f..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/arrangementer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: arrangementer diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/arrangementer/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/arrangementer/index.yaml deleted file mode 100644 index 13a990e..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/arrangementer/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -alternatives: -- action: /arrangementer - consequence: - - Lagre - description: Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem. - features: - - description: '' - name: '' - resource: - requires_group: arrangementer - source: - bucket: frivillige - kind: kv - transitions: - - from: kontaktet - label: Sett opp - to: satt_opp - - from: kontaktet - label: Takket nei - to: takket_nei - - from: open - label: Merk som kontaktet - to: kontaktet - - from: open - label: Takket nei - to: takket_nei - name: Frivillige til arrangementer og dugnad -- action: /arrangementer - consequence: - - Inviter - description: De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: arrangementer - name: Inviter noen inn i Arrangementer -- action: /arrangementer - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: arrangementer - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer. -name: Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/bidra/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/bidra/index.yaml deleted file mode 100644 index 7d24674..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/bidra/index.yaml +++ /dev/null @@ -1,82 +0,0 @@ -alternatives: -- action: /received/hjelpe-til - consequence: - - Meld meg på - description: 17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer. - encouragements: - - Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg. - features: - - description: Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit. - icon: lucide:clipboard-list - name: Hva skjer videre - - description: Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem leser dette - - description: Fortell kort hva du kan hjelpe til med. - icon: lucide:hand-helping - name: Meld deg som hjelper - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: Telefon - name: telefon - placeholder: 912 34 567 - type: tel - - label: Hva kan du hjelpe til med? - multiple: true - name: hva - options: - - 17. mai - - Juletregranstenning - - Skøytedag - - Dugnad på elvestien - - Det som trengs - type: select - name: Bli med på dugnad eller arrangement - record_as: frivillige -- action: /received/komite - consequence: - - Meld interesse - description: Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i. - encouragements: - - Det tar bare et minutt, og noen fra styret svarer deg. - features: - - description: Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå. - icon: lucide:clipboard-list - name: Hva skjer videre - - description: Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:handshake - name: Hvem leser dette - - description: Skriv hvilken komité du er interessert i. - icon: lucide:users - name: Meld deg til en komité - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: epost - placeholder: kari@eksempel.no - type: email - - label: Hvilken komité? - multiple: true - name: komite - options: - - Arrangementer - - Elvesti - - Høringsinstans - - Leke- og møteplasser - - Miljøgate - - Pendlerforhold - - Trafikkforhold - type: select - name: Sitt i en komité som betyr noe for deg - record_as: komitesoknader -description: Vil du stille opp for nabolaget? Her melder du deg til dugnad og arrangementer, eller til en av komiteene. -name: Vil du hjelpe til i nabolaget? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/decide/bli-medlem.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/decide/bli-medlem.yaml deleted file mode 100644 index d7dad96..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/decide/bli-medlem.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: '' - name: Utmeldt - self_transition: - bucket: husstander - label: Utmeldt - to: utmeldt -description: '' -name: What would you like to do? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/decide/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/decide/dele-utstyr.yaml deleted file mode 100644 index dfece00..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/decide/dele-utstyr.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Oppslaget fjernes fra siden, så ingen flere spør om å låne det. - name: Meld at utstyret er tatt ned - self_transition: - bucket: oppslag - label: Ta ned oppslaget - to: tatt_ned -description: Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån. -name: Skal oppslaget om utstyret fortsatt stå ute? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/decide/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/decide/kan-hjelpe.yaml deleted file mode 100644 index 2598b32..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/decide/kan-hjelpe.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre. - name: Ta en pause fra nabohjelpen - self_transition: - bucket: hjelpere - label: Trekk meg - to: trukket -description: Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå. -name: Vil du fortsatt kunne bli spurt om å hjelpe en nabo? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/decide/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/decide/trenger-hjelp.yaml deleted file mode 100644 index 7aad76e..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/decide/trenger-hjelp.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Da vet vi at naboen har fått hjelpen sin, og saken lukkes. - name: Meld fra at hjelpen er gitt - self_transition: - bucket: hjelpebehov - label: Merk som ordnet - to: ordnet -description: Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet. -name: Har naboen fått hjelpen de trengte? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/horingsinstans/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/horingsinstans/_section.yaml deleted file mode 100644 index ad97e31..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/horingsinstans/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: horingsinstans diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/horingsinstans/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/horingsinstans/index.yaml deleted file mode 100644 index b5c4abb..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/horingsinstans/index.yaml +++ /dev/null @@ -1,59 +0,0 @@ -alternatives: -- action: /horingsinstans - consequence: - - Send svar - description: Her ligger innspill fra beboere til saker kommunen har på høring. - features: - - description: '' - name: '' - resource: - requires_group: horingsinstans - source: - bucket: innspill - kind: kv - transitions: - - from: open - label: Tatt med i svaret - to: tatt_med - - from: open - label: Ikke tatt med - to: ikke_tatt_med - name: Innspill til høringssvar -- action: /horingsinstans - consequence: - - Inviter - description: De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: horingsinstans - name: Inviter noen inn i Høringsinstans -- action: /horingsinstans - consequence: - - Send svar - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: horingsinstans - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her samler du innspillene og ser hva som er tatt med i velets høringssvar. -name: Hva sier vi i høringssvaret? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/index.yaml deleted file mode 100644 index 1903a41..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/index.yaml +++ /dev/null @@ -1,94 +0,0 @@ -alternatives: -- description: Velforeningen for Tomter ble stiftet i 1947 og driftes på frivillig basis av lokalbefolkningen. Enhver henvendelse som fremsettes her, blir videreformidlet til komité eller styret for videre saksbehandling, og status i den enkelte sak kan følges av vedkommende selv. - features: - - description: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. - icon: lucide:users - name: Et vel som taler for Tomter, og et medlemskap du styrer selv - - description: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet. - icon: lucide:handshake - name: En nabo som stiller opp når du trenger det - name: What we do -- description: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. - features: - - description: 'Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil)' - icon: lucide:list - name: Alt som er meldt ødelagt - - description: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) - icon: lucide:list - name: Oppslagstavla - - description: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger) - icon: lucide:list - name: Alle trafikkmeldinger - name: Se deg rundt først -- action: /medlem - consequence: - - Til medlemskap - description: Innmelding, innbetaling av kontingent samt melding om flytting, endret e-postadresse eller utmelding kan foretas her. - features: - - description: '' - icon: lucide:house - name: Deg som bor i Tomter - name: Vedrørende medlemskap og endring av registrerte opplysninger -- action: /melde-fra - consequence: - - Meld fra - description: Dersom det er konstatert farlige forhold i trafikken, eller skader på lekeplass eller elvesti, bes dette meldt inn. - features: - - description: '' - icon: lucide:alert-triangle - name: Deg som har sett noe som bør fikses - name: Vedrørende melding om forhold som bør utbedres -- action: /bidra - consequence: - - Bli med - description: Det foreligger behov for bemanning i forbindelse med 17. mai-arrangementet, dugnader samt komitéarbeid. Enhver bidragsyting, uavhengig av omfang, vil kunne mottas. - features: - - description: '' - icon: lucide:hand-helping - name: Deg som vil gjøre en innsats - name: Vedrørende deltakelse og frivillig innsats -- action: /naboer - consequence: - - Til nabohjelp - description: Ved behov for bistand til snømåking, innkjøp eller transport, eller dersom det kan tilbys bistand overfor andre, kan kontakt etableres her. - features: - - description: '' - icon: lucide:heart-handshake - name: Deg som trenger hjelp eller kan gi en hånd - name: Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand -- action: /received/horingsinnspill - consequence: - - Send innspill - description: Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar. - encouragements: - - Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen. - features: - - description: Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen. - icon: lucide:route - name: Hva skjer videre - - description: Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no. - icon: lucide:users - name: Hvem leser dette - - description: Fortell hvilken sak det gjelder og hva du mener. - icon: lucide:megaphone - name: Send et høringsinnspill - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: Hvilken sak gjelder det? - name: sak - placeholder: Reguleringsplan for Tomterveien - type: text - - label: Hva mener du? - name: innspill - placeholder: Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen. - type: textarea - name: Få din mening med i høringssvaret - record_as: innspill -description: Velforeningen for Tomter ble stiftet i 1947 og driftes på frivillig basis av lokalbefolkningen. Enhver henvendelse som fremsettes her, blir videreformidlet til komité eller styret for videre saksbehandling, og status i den enkelte sak kan følges av vedkommende selv. -name: Hva omfatter Tomter Vels virksomhet, og hvilke tjenester kan det anmodes om her? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/kasserer/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/kasserer/_section.yaml deleted file mode 100644 index 2f8af2f..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/kasserer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: kasserer diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/kasserer/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/kasserer/index.yaml deleted file mode 100644 index 8dda085..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/kasserer/index.yaml +++ /dev/null @@ -1,102 +0,0 @@ -alternatives: -- action: /kasserer - consequence: - - Lagre - description: Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: husstander - kind: kv - transitions: - - from: open - label: Registrer betaling - to: betalt - - from: open - label: Meld ut - to: utmeldt - name: Nye medlemmer som venter på registrering -- action: /kasserer - consequence: - - Lagre - description: Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: medlemsendringer - kind: kv - transitions: - - from: open - label: Registrer endring - to: oppdatert - name: Endringer som venter på å bli registrert -- action: /kasserer - consequence: - - Lagre - description: Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: utlegg - kind: kv - transitions: - - from: godkjent - label: Merk som utbetalt - to: utbetalt - - from: godkjent - label: Avvis likevel - to: avvist - - from: open - label: Godkjenn utlegg - to: godkjent - - from: open - label: Avvis utlegg - to: avvist - name: Utlegg som venter på deg -- action: /kasserer - consequence: - - Inviter - description: De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: kasserer - name: Inviter noen inn i kassereren -- action: /kasserer - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer. -name: Hva venter på meg som kasserer akkurat nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/komiteer/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/komiteer/_section.yaml deleted file mode 100644 index 57e3295..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/komiteer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: komiteer diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/komiteer/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/komiteer/index.yaml deleted file mode 100644 index ccf6e5e..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/komiteer/index.yaml +++ /dev/null @@ -1,44 +0,0 @@ -alternatives: -- action: /komiteer/utlegg - consequence: - - Send utlegg - description: Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake. - name: Få tilbake det du har lagt ut -- action: /komiteer - consequence: - - Inviter - description: De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: komiteer - name: Inviter noen inn i komiteene -- action: /komiteer - consequence: - - Confirm - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: komiteer - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp. -name: Hva står ubehandlet i komiteen din nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/komiteer/utlegg-sent.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/komiteer/utlegg-sent.yaml deleted file mode 100644 index e347ad3..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/komiteer/utlegg-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga. - name: Pengene kommer på konto -- action: /komiteer - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Utlegget er sendt til kasserer. Du får beskjed når det er sjekket. -name: Hva skjer med utlegget mitt nå? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/komiteer/utlegg.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/komiteer/utlegg.yaml deleted file mode 100644 index 5d94ad3..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/komiteer/utlegg.yaml +++ /dev/null @@ -1,38 +0,0 @@ -alternatives: -- action: /komiteer/utlegg-sent - consequence: - - Send inn - description: Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten. - encouragements: - - Legg ved bilag om du har det, så går det raskere. - features: - - description: Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor. - icon: lucide:wallet - name: Fra krav til utbetaling - - description: Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster. - icon: lucide:coins - name: Kasserer ser dette - - description: Ha kvittering eller bilag klart før du fyller ut. - icon: lucide:receipt - name: Krav om refusjon - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: Beløp - name: belop - placeholder: 450 kr - type: text - - label: Hva gjaldt det - name: hva - placeholder: Kaffe og kjeks til dugnaden - type: textarea - name: Få pengene tilbake - record_as: utlegg -description: Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake. -followup: false -name: Har du lagt ut penger for komiteen og vil ha dem tilbake? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/lekeplasser/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/lekeplasser/_section.yaml deleted file mode 100644 index 1652221..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/lekeplasser/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: lekeplasser diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/lekeplasser/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/lekeplasser/index.yaml deleted file mode 100644 index 215a9bc..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/lekeplasser/index.yaml +++ /dev/null @@ -1,59 +0,0 @@ -alternatives: -- action: /lekeplasser - consequence: - - Lagre - description: Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses. - features: - - description: '' - name: '' - resource: - requires_group: lekeplasser - source: - bucket: anleggsfeil - kind: kv - transitions: - - from: open - label: Ta tak i saken - to: tatt_tak_i - - from: tatt_tak_i - label: Merk som utbedret - to: utbedret - name: Det som er meldt inn av skader -- action: /lekeplasser - consequence: - - Inviter - description: De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: lekeplasser - name: Inviter noen inn i Leke- og møteplasser -- action: /lekeplasser - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: lekeplasser - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset. -name: Hva må fikses på lekeplassene og stien nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/medlem/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/medlem/index.yaml deleted file mode 100644 index ad6fa0a..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/medlem/index.yaml +++ /dev/null @@ -1,72 +0,0 @@ -alternatives: -- action: /received/bli-medlem - consequence: - - Bli medlem - description: Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet. - encouragements: - - Kasserer sender deg kontingenten på e-post rett etterpå. - features: - - description: Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem. - icon: lucide:coins - name: Etter innmelding - - description: Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden. - icon: lucide:user - name: Hvem svarer deg - - description: Ha adressen i Tomter og en e-post du bruker klar. - icon: lucide:user-plus - name: Meld deg inn - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: Adresse - name: adresse - placeholder: Tomterveien 12 - type: text - - label: Email - name: email - type: email - - label: Telefon - name: telefon - optional: true - placeholder: 123 45 678 - type: tel - name: Bli medlem av Tomter Vel - record_as: husstander -- action: /received/endre-medlemskap - consequence: - - Send endring - description: Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger. - encouragements: - - Det tar bare et par minutter, og kasserer ordner resten. - features: - - description: Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om. - icon: lucide:refresh-cw - name: Etter du sender inn - - description: Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden. - icon: lucide:user - name: Hvem svarer deg - - description: Skriv navnet ditt og hva som er nytt. - icon: lucide:pencil - name: Endre medlemskap - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: Adresse - name: adresse - placeholder: Ny adresse i Tomter - type: text - - label: Hva vil du endre? - name: hva_er_nytt - placeholder: Ny e-post, ny adresse, eller ønske om utmelding - type: textarea - name: Oppdater eller avslutt medlemskapet - record_as: medlemsendringer -description: Bli medlem av Tomter Vel, eller oppdater opplysningene dine hvis du allerede er medlem. -name: Vil du bli medlem, eller endre medlemskapet ditt? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/melde-fra/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/melde-fra/index.yaml deleted file mode 100644 index 560dd8f..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/melde-fra/index.yaml +++ /dev/null @@ -1,69 +0,0 @@ -alternatives: -- action: /received/trafikkfare - consequence: - - Send inn - description: Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre. - encouragements: - - Bare noen linjer om hva og hvor er nok til at vi kan følge opp. - features: - - description: Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist. - icon: lucide:route - name: Hva skjer videre - - description: Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no. - icon: lucide:car - name: Hvem leser dette - - description: Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer. - icon: lucide:alert-triangle - name: Meld trafikkfare - requirements: - - label: Hvor var det - name: hvor - placeholder: Krysset Tomterveien / Elvestien - type: text - - label: Hva så du - name: hva - placeholder: Dårlig sikt i krysset, biler kjører fort - type: textarea - - label: E-post (valgfritt) - name: epost - optional: true - placeholder: ola.nordmann@epost.no - type: email - name: Meld fra om en trafikkfare - record_as: trafikkmeldinger -- action: /received/anleggsfeil - consequence: - - Send inn - description: Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det. - encouragements: - - Det holder med noen ord om hva du så og hvor. - features: - - description: Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet. - icon: lucide:wrench - name: Hva skjer videre - - description: Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no. - icon: lucide:hammer - name: Hvem leser dette - - description: Fortell hva som er ødelagt og omtrent hvor det er. - icon: lucide:construction - name: Meld anleggsfeil - requirements: - - label: Hvor er det - name: hvor - options: - - Lekeplassen - - Elvestien - - Skøytebanen - - Et annet sted - type: select - - label: Hva er ødelagt - name: hva - placeholder: Løs planke på gjerdet ved husken - type: textarea - name: Meld fra om noe ødelagt - record_as: anleggsfeil -description: Har du sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien? Her sier du fra til velet. -name: Hva vil du melde fra om? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/naboer/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/naboer/index.yaml deleted file mode 100644 index d8efcd4..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/naboer/index.yaml +++ /dev/null @@ -1,125 +0,0 @@ -alternatives: -- action: /received/trenger-hjelp - consequence: - - Be om hjelp - description: Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp. - encouragements: - - Vi finner en nabo som kan stille opp så fort som mulig. - features: - - description: Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed. - icon: lucide:hand-helping - name: Fra melding til hjelp - - description: Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem ser dette - - description: Skriv kort hva du trenger hjelp til. - icon: lucide:heart-handshake - name: Be om en hånd - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: email - placeholder: kari@eksempel.no - type: email - - label: Adresse - name: adresse - placeholder: Tomterveien 12 - type: text - - label: Hva trenger du hjelp til - name: hva - placeholder: Måke snø på trappa, handle inn litt mat - type: textarea - - label: Telefon - name: telefon - optional: true - placeholder: 123 45 678 - type: tel - name: Få en nabo til å stille opp - record_as: hjelpebehov -- action: /received/kan-hjelpe - consequence: - - Meld deg - description: Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer. - encouragements: - - Du blir bare kontaktet når noe passer for deg. - features: - - description: Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra. - icon: lucide:user-check - name: Fra påmelding til spørsmål - - description: Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no. - icon: lucide:heart-handshake - name: Hvem ser dette - - description: Fortell kort hva du kan bidra med. - icon: lucide:hand-helping - name: Meld deg som hjelper - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: email - placeholder: kari@eksempel.no - type: email - - label: Telefon - name: telefon - placeholder: 123 45 678 - type: tel - - label: Hva kan du hjelpe med - multiple: true - name: kan - options: - - Snømåking - - Handling - - Kjøring - - Småfiks i huset - - En prat og litt selskap - - Det som trengs - type: select - name: Bli spurt når en nabo trenger en hånd - record_as: hjelpere -- action: /received/dele-utstyr - consequence: - - Legg ut oppslag - description: Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det. - encouragements: - - Vi legger det ut så naboene kan se det. - features: - - description: Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen. - icon: lucide:clipboard-list - name: Fra oppslag til avtale - - description: Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem ser dette - - description: Skriv kort hva det gjelder, så folk skjønner det med en gang. - icon: lucide:package - name: Lån eller utlån - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: E-post - name: email - placeholder: ola@eksempel.no - type: email - - label: Har du eller trenger du - name: har_eller_trenger - options: - - Jeg har noe å låne ut - - Jeg trenger å låne noe - type: select - - label: Hva gjelder det - name: hva - placeholder: Hengerfeste til bil, tilhenger, stige - type: textarea - name: Lån ut eller lån av naboen - record_as: oppslag -description: Godt naboskap gjør hverdagen lettere. Trenger du en hånd, kan gi en, eller har noe å låne bort? -name: Trenger du en hånd, eller kan du gi en? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/nabohjelp/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/nabohjelp/_section.yaml deleted file mode 100644 index 5b3a2ad..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/nabohjelp/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: nabohjelp diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/nabohjelp/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/nabohjelp/index.yaml deleted file mode 100644 index ab4db6b..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/nabohjelp/index.yaml +++ /dev/null @@ -1,85 +0,0 @@ -alternatives: -- action: /nabohjelp - consequence: - - Lagre - description: Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: hjelpebehov - kind: kv - transitions: - - from: formidlet - label: Meld ordnet - to: ordnet - - from: formidlet - label: Meld ikke løst - to: ikke_lost - - from: open - label: Koble til nabo - to: formidlet - - from: open - label: Meld ikke løst - to: ikke_lost - name: Naboer som trenger en hånd -- action: /nabohjelp - consequence: - - Lagre - description: Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: hjelpere - kind: kv - transitions: - - from: open - label: Registrer som hjelper - to: registrert - - from: open - label: Meld trukket - to: trukket - name: Naboer som kan stille opp -- action: /nabohjelp - consequence: - - Inviter - description: De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: nabohjelp - name: Inviter noen inn i nabohjelpen -- action: /nabohjelp - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her kobler du naboer som trenger hjelp med dem som kan stille opp. -name: Hvem trenger hjelp, og hvem kan stille opp? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/anleggsfeil.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/anleggsfeil.yaml deleted file mode 100644 index 09d4976..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/anleggsfeil.yaml +++ /dev/null @@ -1,15 +0,0 @@ -alternatives: -- description: Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg. - name: Komiteen tar tak i det -- action: /status/anleggsfeil - consequence: - - Se meldte feil - description: Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet. - name: Se andre meldte feil -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt. -name: Hva skjer med meldingen min nå? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/bli-medlem.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/bli-medlem.yaml deleted file mode 100644 index 533f8a6..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/bli-medlem.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten. - name: Kasserer sender deg betalingsinfo -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert. -name: Hva skjer etter at jeg har meldt meg inn? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/dele-utstyr.yaml deleted file mode 100644 index 761313b..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/dele-utstyr.yaml +++ /dev/null @@ -1,15 +0,0 @@ -alternatives: -- description: En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne. - name: Styret legger det ut for deg -- action: /status/oppslag - consequence: - - Se hva naboer deler - description: Se hva andre i Tomter har lagt ut til utlån akkurat nå. - name: Se alt naboene deler -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan. -name: Hva skjer med det jeg har lagt ut? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/endre-medlemskap.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/endre-medlemskap.yaml deleted file mode 100644 index c58d676..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/endre-medlemskap.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg. - name: Kasserer retter opp opplysningene -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut. -name: Hva skjer nå med det jeg meldte inn? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/hjelpe-til.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/hjelpe-til.yaml deleted file mode 100644 index 3c61af4..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/hjelpe-til.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden. - name: Komiteen tar kontakt -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg. -name: Hva skjer nå som jeg har meldt meg? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/horingsinnspill.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/horingsinnspill.yaml deleted file mode 100644 index bf87c92..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/horingsinnspill.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med. - name: Innspillet ditt inn i vurderingen -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Innspillet ditt er sendt til høringsinstansen i velet. -name: Hva skjer med det jeg har sagt om saken? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/kan-hjelpe.yaml deleted file mode 100644 index 0ac67b5..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/kan-hjelpe.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte. - name: Du blir kontaktet ved behov -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe. -name: Hva skjer nå som jeg har registrert meg? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/komite.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/komite.yaml deleted file mode 100644 index a36dfda..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/komite.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer. - name: Vi finner riktig komité til deg -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg. -name: Hva skjer nå som jeg har meldt interesse for en komité? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/trafikkfare.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/trafikkfare.yaml deleted file mode 100644 index 82da494..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/trafikkfare.yaml +++ /dev/null @@ -1,15 +0,0 @@ -alternatives: -- description: Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs. - name: Trafikkomiteen tar den videre -- action: /status/trafikkmeldinger - consequence: - - Se andre trafikkfarer - description: Se hva andre har meldt inn, og status på sakene. - name: Andre meldte trafikkfarer -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Meldingen din om trafikkfaren er sendt til komiteen for trafikk. -name: Hva skjer med meldingen min nå? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/trenger-hjelp.yaml deleted file mode 100644 index beec6e5..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/received/trenger-hjelp.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer. - name: Vi finner en nabo til deg -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp. -name: Hva skjer nå som jeg har bedt om hjelp? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/status/anleggsfeil/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/status/anleggsfeil/index.yaml deleted file mode 100644 index 805a464..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/status/anleggsfeil/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- description: Alle meldinger er åpne for alle å se. - features: - - description: '' - name: '' - resource: - jq: '.[] | .responses |= {hva: .hva, hvor: .hvor}' - public: true - source: - bucket: anleggsfeil - kind: kv - name: Status på meldte anleggsfeil -- action: / - consequence: - - Tilbake til meldinger - description: '' - name: Tilbake til meldinger -description: Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet. -name: Hva skjer med det jeg har meldt fra om? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/status/oppslag/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/status/oppslag/index.yaml deleted file mode 100644 index cf172af..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/status/oppslag/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- description: Åpen liste – navn og detaljer vises ikke. - features: - - description: '' - name: '' - resource: - jq: '.[] | .responses |= {har_eller_trenger: .har_eller_trenger, hva: .hva}' - public: true - source: - bucket: oppslag - kind: kv - name: Oversikt over det som er meldt inn -- action: / - consequence: - - Tilbake - description: '' - name: Tilbake -description: Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet. -name: Hva er sendt inn, og hvor langt har det kommet? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/status/trafikkmeldinger/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/status/trafikkmeldinger/index.yaml deleted file mode 100644 index 7444f44..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/status/trafikkmeldinger/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- description: Alle meldinger som er sendt inn, og hvor de står nå. - features: - - description: '' - name: '' - resource: - jq: '.[] | .responses |= {hva: .hva, hvor: .hvor}' - public: true - source: - bucket: trafikkmeldinger - kind: kv - name: Trafikkmeldinger og status -- action: / - consequence: - - Tilbake - description: '' - name: Tilbake -description: Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet. -name: Er det meldt fra om noe farlig i trafikken der jeg bor? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/styret/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/styret/_section.yaml deleted file mode 100644 index 5a34160..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/styret/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: styret diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/styret/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/styret/index.yaml deleted file mode 100644 index 1a27364..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/styret/index.yaml +++ /dev/null @@ -1,219 +0,0 @@ -alternatives: -- action: /styret - consequence: - - Lagre - description: Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: innspill - kind: kv - transitions: [] - name: Høringsinnspill fra beboerne -- action: /styret - consequence: - - Lagre - description: Her ligger alle som har meldt seg til en komité og venter på en plass. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: komitesoknader - kind: kv - transitions: - - from: open - label: Sett i komité - to: plassert - - from: open - label: Avslå søknaden - to: avslatt - name: Søknader til komiteene -- action: /styret - consequence: - - Lagre - description: Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: oppslag - kind: kv - transitions: - - from: open - label: Legg ut oppslaget - to: lagt_ut - - from: open - label: Ta ned oppslaget - to: tatt_ned - name: Utstyr til utlån blant naboer -- action: /styret - consequence: - - Lagre - description: Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: trafikkmeldinger - kind: kv - transitions: [] - name: Meldinger om trafikkfarer -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: arrangementer - name: Inviter noen inn i Arrangementer -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: horingsinstans - name: Inviter noen inn i Høringsinstans -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: kasserer - name: Inviter noen inn i kassereren -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: komiteer - name: Inviter noen inn i komiteene -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: lekeplasser - name: Inviter noen inn i Leke- og møteplasser -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: nabohjelp - name: Inviter noen inn i nabohjelpen -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: styret - name: Inviter noen inn i styret -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: trafikk - name: Inviter noen inn i Trafikkforhold -- action: /styret - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: 'Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.' -name: Hva venter på styret akkurat nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/trafikk/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/trafikk/_section.yaml deleted file mode 100644 index dbe5246..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/trafikk/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: trafikk diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/trafikk/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/trafikk/index.yaml deleted file mode 100644 index d14490e..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/questions/trafikk/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -alternatives: -- action: /trafikk - consequence: - - Lagre - description: Farlige steder i trafikken som naboer har meldt inn. - features: - - description: '' - name: '' - resource: - requires_group: trafikk - source: - bucket: trafikkmeldinger - kind: kv - transitions: - - from: open - label: Ta opp med kommunen - to: tatt_opp - - from: open - label: Avvis meldingen - to: avvist - - from: tatt_opp - label: Meld ordnet - to: ordnet - - from: tatt_opp - label: Avvis meldingen - to: avvist - name: Farlige steder i trafikken -- action: /trafikk - consequence: - - Inviter - description: De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: trafikk - name: Inviter noen inn i Trafikkforhold -- action: /trafikk - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: trafikk - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier. -name: Hvilke trafikkfarer må følges opp? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/site.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/site.yaml deleted file mode 100644 index c2ac781..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/site.yaml +++ /dev/null @@ -1,5 +0,0 @@ -lang: no -mail: - from: Tomter Vel - reply_to: post@tomtervel.no -title: Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/words.json b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/words.json deleted file mode 100644 index 9c948c7..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-cold/words.json +++ /dev/null @@ -1,953 +0,0 @@ -{ - "aggregates.yaml": { - "hjelpebehov": { - "formidlet": { - "body": "Vi har funnet en nabo som kan hjelpe. De tar kontakt med deg direkte.\n\nDet du kan gjøre nå: {site}/decide/trenger-hjelp?chain={chain}&email={email}", - "subject": "En nabo er koblet på" - }, - "open": { - "body": "Vi har mottatt det du trenger hjelp til, og ser etter en nabo som kan stille opp. Du hører fra oss så snart vi har funnet noen.", - "subject": "Vi leter etter en nabo til deg" - }, - "ordnet": { - "body": "Godt å høre at det ordnet seg. Takk for at du sa fra, og lykke til videre.", - "subject": "Bra det løste seg" - } - }, - "husstander": { - "betalt": { - "body": "Kontingenten er registrert betalt. Du er nå medlem av Tomter Vel - velkommen med!", - "subject": "Medlemskapet er i orden" - }, - "open": { - "body": "Takk for at du vil bli medlem. Du får en betalingsoppfordring med kontonummer og beløp så snart kasserer har sett på saken.\n\nDet du kan gjøre nå: {site}/decide/bli-medlem?chain={chain}&email={email}", - "subject": "Nesten i mål som medlem" - } - }, - "oppslag": { - "lagt_ut": { - "body": "Oppslaget ditt er lagt ut, og naboene kan nå se det.", - "subject": "Oppslaget er synlig for naboene" - } - } - }, - "questions/arrangementer/index.yaml": { - "buckets": { - "frivillige": { - "description": "Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem.", - "heading": "Frivillige til arrangementer og dugnad", - "moves": { - "kontaktet->satt_opp": "Sett opp", - "kontaktet->takket_nei": "Takket nei", - "open->kontaktet": "Merk som kontaktet", - "open->takket_nei": "Takket nei" - } - } - }, - "confirm": "Lagre", - "description": "Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "arrangementer": { - "button": "Inviter", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Arrangementer", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp?" - }, - "questions/bidra/index.yaml": { - "description": "Vil du stille opp for nabolaget? Her melder du deg til dugnad og arrangementer, eller til en av komiteene.", - "needs": { - "hjelpe-til": { - "button": "Meld meg på", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.", - "encouragement": "Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg.", - "form_description": "Fortell kort hva du kan hjelpe til med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli med på dugnad eller arrangement", - "hints": { - "hva": "", - "navn": "Kari Nordmann", - "telefon": "912 34 567" - }, - "icon": "hand-helping", - "labels": { - "hva": "Hva kan du hjelpe til med?", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit.", - "road_icon": "lucide:clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - }, - "komite": { - "button": "Meld interesse", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i.", - "encouragement": "Det tar bare et minutt, og noen fra styret svarer deg.", - "form_description": "Skriv hvilken komité du er interessert i.", - "form_title": "Meld deg til en komité", - "heading": "Sitt i en komité som betyr noe for deg", - "hints": { - "epost": "kari@eksempel.no", - "komite": "", - "navn": "Kari Nordmann" - }, - "icon": "users", - "labels": { - "epost": "E-post", - "komite": "Hvilken komité?", - "navn": "Navn" - }, - "road_description": "Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå.", - "road_icon": "lucide:clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:handshake", - "who_title": "Hvem leser dette" - } - }, - "question": "Vil du hjelpe til i nabolaget?" - }, - "questions/decide/bli-medlem.yaml": { - "description": "", - "moves": { - "utmeldt": { - "button": "Utmeldt", - "description": "", - "heading": "Utmeldt" - } - }, - "question": "What would you like to do?" - }, - "questions/decide/dele-utstyr.yaml": { - "description": "Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån.", - "moves": { - "tatt_ned": { - "button": "Ta ned oppslaget", - "description": "Oppslaget fjernes fra siden, så ingen flere spør om å låne det.", - "heading": "Meld at utstyret er tatt ned" - } - }, - "question": "Skal oppslaget om utstyret fortsatt stå ute?" - }, - "questions/decide/kan-hjelpe.yaml": { - "description": "Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå.", - "moves": { - "trukket": { - "button": "Trekk meg", - "description": "Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre.", - "heading": "Ta en pause fra nabohjelpen" - } - }, - "question": "Vil du fortsatt kunne bli spurt om å hjelpe en nabo?" - }, - "questions/decide/trenger-hjelp.yaml": { - "description": "Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet.", - "moves": { - "ordnet": { - "button": "Merk som ordnet", - "description": "Da vet vi at naboen har fått hjelpen sin, og saken lukkes.", - "heading": "Meld fra at hjelpen er gitt" - } - }, - "question": "Har naboen fått hjelpen de trengte?" - }, - "questions/horingsinstans/index.yaml": { - "buckets": { - "innspill": { - "description": "Her ligger innspill fra beboere til saker kommunen har på høring.", - "heading": "Innspill til høringssvar", - "moves": { - "open->ikke_tatt_med": "Ikke tatt med", - "open->tatt_med": "Tatt med i svaret" - } - } - }, - "confirm": "Send svar", - "description": "Her samler du innspillene og ser hva som er tatt med i velets høringssvar.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "horingsinstans": { - "button": "Inviter", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Høringsinstans", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva sier vi i høringssvaret?" - }, - "questions/index.yaml": { - "description": "Velforeningen for Tomter ble stiftet i 1947 og driftes på frivillig basis av lokalbefolkningen. Enhver henvendelse som fremsettes her, blir videreformidlet til komité eller styret for videre saksbehandling, og status i den enkelte sak kan følges av vedkommende selv.", - "doors": { - "bidra": { - "button": "Bli med", - "description": "Det foreligger behov for bemanning i forbindelse med 17. mai-arrangementet, dugnader samt komitéarbeid. Enhver bidragsyting, uavhengig av omfang, vil kunne mottas.", - "for_whom": "Deg som vil gjøre en innsats", - "heading": "Vedrørende deltakelse og frivillig innsats", - "icon": "hand-helping" - }, - "medlem": { - "button": "Til medlemskap", - "description": "Innmelding, innbetaling av kontingent samt melding om flytting, endret e-postadresse eller utmelding kan foretas her.", - "for_whom": "Deg som bor i Tomter", - "heading": "Vedrørende medlemskap og endring av registrerte opplysninger", - "icon": "house" - }, - "melde-fra": { - "button": "Meld fra", - "description": "Dersom det er konstatert farlige forhold i trafikken, eller skader på lekeplass eller elvesti, bes dette meldt inn.", - "for_whom": "Deg som har sett noe som bør fikses", - "heading": "Vedrørende melding om forhold som bør utbedres", - "icon": "alert-triangle" - }, - "naboer": { - "button": "Til nabohjelp", - "description": "Ved behov for bistand til snømåking, innkjøp eller transport, eller dersom det kan tilbys bistand overfor andre, kan kontakt etableres her.", - "for_whom": "Deg som trenger hjelp eller kan gi en hånd", - "heading": "Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand", - "icon": "heart-handshake" - } - }, - "needs": { - "horingsinnspill": { - "button": "Send innspill", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "encouragement": "Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen.", - "form_description": "Fortell hvilken sak det gjelder og hva du mener.", - "form_title": "Send et høringsinnspill", - "heading": "Få din mening med i høringssvaret", - "hints": { - "innspill": "Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen.", - "navn": "Kari Nordmann", - "sak": "Reguleringsplan for Tomterveien" - }, - "icon": "megaphone", - "labels": { - "innspill": "Hva mener du?", - "navn": "Navn", - "sak": "Hvilken sak gjelder det?" - }, - "road_description": "Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - } - }, - "opener": { - "description": "Velforeningen for Tomter ble stiftet i 1947 og driftes på frivillig basis av lokalbefolkningen. Enhver henvendelse som fremsettes her, blir videreformidlet til komité eller styret for videre saksbehandling, og status i den enkelte sak kan følges av vedkommende selv.", - "features": { - "medlem": { - "description": "Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil.", - "heading": "Et vel som taler for Tomter, og et medlemskap du styrer selv", - "icon": "users" - }, - "nabo": { - "description": "Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.", - "heading": "En nabo som stiller opp når du trenger det", - "icon": "handshake" - } - }, - "heading": "What we do" - }, - "question": "Hva omfatter Tomter Vels virksomhet, og hvilke tjenester kan det anmodes om her?", - "shopping": { - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.", - "heading": "Se deg rundt først", - "items": { - "status-anleggsfeil": { - "description": "Lekeplassen og stien: det som er meldt, og det som er fikset.", - "heading": "Alt som er meldt ødelagt", - "icon": "list" - }, - "status-oppslag": { - "description": "Det naboene har å låne ut, og det de trenger å låne.", - "heading": "Oppslagstavla", - "icon": "list" - }, - "status-trafikkmeldinger": { - "description": "Farlige steder naboene har meldt, og hva velet har gjort med dem.", - "heading": "Alle trafikkmeldinger", - "icon": "list" - } - } - } - }, - "questions/kasserer/index.yaml": { - "buckets": { - "husstander": { - "description": "Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem.", - "heading": "Nye medlemmer som venter på registrering", - "moves": { - "open->betalt": "Registrer betaling", - "open->utmeldt": "Meld ut" - } - }, - "medlemsendringer": { - "description": "Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert.", - "heading": "Endringer som venter på å bli registrert", - "moves": { - "open->oppdatert": "Registrer endring" - } - }, - "utlegg": { - "description": "Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling.", - "heading": "Utlegg som venter på deg", - "moves": { - "godkjent->avvist": "Avvis likevel", - "godkjent->utbetalt": "Merk som utbetalt", - "open->avvist": "Avvis utlegg", - "open->godkjent": "Godkjenn utlegg" - } - } - }, - "confirm": "Lagre", - "description": "Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "kasserer": { - "button": "Inviter", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i kassereren", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva venter på meg som kasserer akkurat nå?" - }, - "questions/komiteer/index.yaml": { - "buckets": {}, - "confirm": "Confirm", - "description": "Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "komiteer": { - "button": "Inviter", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i komiteene", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": { - "utlegg": { - "button": "Send utlegg", - "description": "Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake.", - "heading": "Få tilbake det du har lagt ut" - } - }, - "question": "Hva står ubehandlet i komiteen din nå?" - }, - "questions/komiteer/utlegg-sent.yaml": { - "back": "Til forsiden", - "description": "Utlegget er sendt til kasserer. Du får beskjed når det er sjekket.", - "next_description": "Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga.", - "next_heading": "Pengene kommer på konto", - "question": "Hva skjer med utlegget mitt nå?" - }, - "questions/komiteer/utlegg.yaml": { - "button": "Send inn", - "description": "Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten.", - "encouragement": "Legg ved bilag om du har det, så går det raskere.", - "form_description": "Ha kvittering eller bilag klart før du fyller ut.", - "form_title": "Krav om refusjon", - "heading": "Få pengene tilbake", - "hints": { - "belop": "450 kr", - "hva": "Kaffe og kjeks til dugnaden", - "navn": "Kari Nordmann" - }, - "icon": "receipt", - "labels": { - "belop": "Beløp", - "hva": "Hva gjaldt det", - "navn": "Navn" - }, - "page_description": "Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake.", - "question": "Har du lagt ut penger for komiteen og vil ha dem tilbake?", - "road_description": "Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor.", - "road_icon": "lucide:wallet", - "road_title": "Fra krav til utbetaling", - "who_description": "Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster.", - "who_icon": "lucide:coins", - "who_title": "Kasserer ser dette" - }, - "questions/lekeplasser/index.yaml": { - "buckets": { - "anleggsfeil": { - "description": "Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses.", - "heading": "Det som er meldt inn av skader", - "moves": { - "open->tatt_tak_i": "Ta tak i saken", - "tatt_tak_i->utbedret": "Merk som utbedret" - } - } - }, - "confirm": "Lagre", - "description": "Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "lekeplasser": { - "button": "Inviter", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Leke- og møteplasser", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva må fikses på lekeplassene og stien nå?" - }, - "questions/medlem/index.yaml": { - "description": "Bli medlem av Tomter Vel, eller oppdater opplysningene dine hvis du allerede er medlem.", - "needs": { - "bli-medlem": { - "button": "Bli medlem", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.", - "encouragement": "Kasserer sender deg kontingenten på e-post rett etterpå.", - "form_description": "Ha adressen i Tomter og en e-post du bruker klar.", - "form_title": "Meld deg inn", - "heading": "Bli medlem av Tomter Vel", - "hints": { - "adresse": "Tomterveien 12", - "email": "", - "navn": "Ola Nordmann", - "telefon": "123 45 678" - }, - "icon": "user-plus", - "labels": { - "adresse": "Adresse", - "email": "Email", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem.", - "road_icon": "lucide:coins", - "road_title": "Etter innmelding", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "who_title": "Hvem svarer deg" - }, - "endre-medlemskap": { - "button": "Send endring", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.", - "encouragement": "Det tar bare et par minutter, og kasserer ordner resten.", - "form_description": "Skriv navnet ditt og hva som er nytt.", - "form_title": "Endre medlemskap", - "heading": "Oppdater eller avslutt medlemskapet", - "hints": { - "adresse": "Ny adresse i Tomter", - "hva_er_nytt": "Ny e-post, ny adresse, eller ønske om utmelding", - "navn": "Ola Nordmann" - }, - "icon": "pencil", - "labels": { - "adresse": "Adresse", - "hva_er_nytt": "Hva vil du endre?", - "navn": "Navn" - }, - "road_description": "Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om.", - "road_icon": "lucide:refresh-cw", - "road_title": "Etter du sender inn", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "who_title": "Hvem svarer deg" - } - }, - "question": "Vil du bli medlem, eller endre medlemskapet ditt?" - }, - "questions/melde-fra/index.yaml": { - "description": "Har du sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien? Her sier du fra til velet.", - "needs": { - "anleggsfeil": { - "button": "Send inn", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.", - "encouragement": "Det holder med noen ord om hva du så og hvor.", - "form_description": "Fortell hva som er ødelagt og omtrent hvor det er.", - "form_title": "Meld anleggsfeil", - "heading": "Meld fra om noe ødelagt", - "hints": { - "hva": "Løs planke på gjerdet ved husken", - "hvor": "" - }, - "icon": "construction", - "labels": { - "hva": "Hva er ødelagt", - "hvor": "Hvor er det" - }, - "road_description": "Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet.", - "road_icon": "lucide:wrench", - "road_title": "Hva skjer videre", - "who_description": "Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:hammer", - "who_title": "Hvem leser dette" - }, - "trafikkfare": { - "button": "Send inn", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.", - "encouragement": "Bare noen linjer om hva og hvor er nok til at vi kan følge opp.", - "form_description": "Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer.", - "form_title": "Meld trafikkfare", - "heading": "Meld fra om en trafikkfare", - "hints": { - "epost": "ola.nordmann@epost.no", - "hva": "Dårlig sikt i krysset, biler kjører fort", - "hvor": "Krysset Tomterveien / Elvestien" - }, - "icon": "alert-triangle", - "labels": { - "epost": "E-post (valgfritt)", - "hva": "Hva så du", - "hvor": "Hvor var det" - }, - "road_description": "Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:car", - "who_title": "Hvem leser dette" - } - }, - "question": "Hva vil du melde fra om?" - }, - "questions/naboer/index.yaml": { - "description": "Godt naboskap gjør hverdagen lettere. Trenger du en hånd, kan gi en, eller har noe å låne bort?", - "needs": { - "dele-utstyr": { - "button": "Legg ut oppslag", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.", - "encouragement": "Vi legger det ut så naboene kan se det.", - "form_description": "Skriv kort hva det gjelder, så folk skjønner det med en gang.", - "form_title": "Lån eller utlån", - "heading": "Lån ut eller lån av naboen", - "hints": { - "email": "ola@eksempel.no", - "har_eller_trenger": "", - "hva": "Hengerfeste til bil, tilhenger, stige", - "navn": "Ola Nordmann" - }, - "icon": "package", - "labels": { - "email": "E-post", - "har_eller_trenger": "Har du eller trenger du", - "hva": "Hva gjelder det", - "navn": "Navn" - }, - "road_description": "Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen.", - "road_icon": "lucide:clipboard-list", - "road_title": "Fra oppslag til avtale", - "who_description": "Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem ser dette" - }, - "kan-hjelpe": { - "button": "Meld deg", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.", - "encouragement": "Du blir bare kontaktet når noe passer for deg.", - "form_description": "Fortell kort hva du kan bidra med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli spurt når en nabo trenger en hånd", - "hints": { - "email": "kari@eksempel.no", - "kan": "", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "hand-helping", - "labels": { - "email": "E-post", - "kan": "Hva kan du hjelpe med", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra.", - "road_icon": "lucide:user-check", - "road_title": "Fra påmelding til spørsmål", - "who_description": "Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no.", - "who_icon": "lucide:heart-handshake", - "who_title": "Hvem ser dette" - }, - "trenger-hjelp": { - "button": "Be om hjelp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.", - "encouragement": "Vi finner en nabo som kan stille opp så fort som mulig.", - "form_description": "Skriv kort hva du trenger hjelp til.", - "form_title": "Be om en hånd", - "heading": "Få en nabo til å stille opp", - "hints": { - "adresse": "Tomterveien 12", - "email": "kari@eksempel.no", - "hva": "Måke snø på trappa, handle inn litt mat", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "heart-handshake", - "labels": { - "adresse": "Adresse", - "email": "E-post", - "hva": "Hva trenger du hjelp til", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed.", - "road_icon": "lucide:hand-helping", - "road_title": "Fra melding til hjelp", - "who_description": "Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem ser dette" - } - }, - "question": "Trenger du en hånd, eller kan du gi en?" - }, - "questions/nabohjelp/index.yaml": { - "buckets": { - "hjelpebehov": { - "description": "Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe.", - "heading": "Naboer som trenger en hånd", - "moves": { - "formidlet->ikke_lost": "Meld ikke løst", - "formidlet->ordnet": "Meld ordnet", - "open->formidlet": "Koble til nabo", - "open->ikke_lost": "Meld ikke løst" - } - }, - "hjelpere": { - "description": "Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem.", - "heading": "Naboer som kan stille opp", - "moves": { - "open->registrert": "Registrer som hjelper", - "open->trukket": "Meld trukket" - } - } - }, - "confirm": "Lagre", - "description": "Her kobler du naboer som trenger hjelp med dem som kan stille opp.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "nabohjelp": { - "button": "Inviter", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i nabohjelpen", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvem trenger hjelp, og hvem kan stille opp?" - }, - "questions/received/anleggsfeil.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt.", - "next_description": "Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg.", - "next_heading": "Komiteen tar tak i det", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se meldte feil", - "description": "Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet.", - "heading": "Se andre meldte feil" - } - }, - "questions/received/bli-medlem.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert.", - "next_description": "Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten.", - "next_heading": "Kasserer sender deg betalingsinfo", - "question": "Hva skjer etter at jeg har meldt meg inn?" - }, - "questions/received/dele-utstyr.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan.", - "next_description": "En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne.", - "next_heading": "Styret legger det ut for deg", - "question": "Hva skjer med det jeg har lagt ut?", - "see_all": { - "button": "Se hva naboer deler", - "description": "Se hva andre i Tomter har lagt ut til utlån akkurat nå.", - "heading": "Se alt naboene deler" - } - }, - "questions/received/endre-medlemskap.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut.", - "next_description": "Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg.", - "next_heading": "Kasserer retter opp opplysningene", - "question": "Hva skjer nå med det jeg meldte inn?" - }, - "questions/received/hjelpe-til.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg.", - "next_description": "Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden.", - "next_heading": "Komiteen tar kontakt", - "question": "Hva skjer nå som jeg har meldt meg?" - }, - "questions/received/horingsinnspill.yaml": { - "back": "Tilbake til forsiden", - "description": "Innspillet ditt er sendt til høringsinstansen i velet.", - "next_description": "De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med.", - "next_heading": "Innspillet ditt inn i vurderingen", - "question": "Hva skjer med det jeg har sagt om saken?" - }, - "questions/received/kan-hjelpe.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe.", - "next_description": "Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte.", - "next_heading": "Du blir kontaktet ved behov", - "question": "Hva skjer nå som jeg har registrert meg?" - }, - "questions/received/komite.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg.", - "next_description": "Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer.", - "next_heading": "Vi finner riktig komité til deg", - "question": "Hva skjer nå som jeg har meldt interesse for en komité?" - }, - "questions/received/trafikkfare.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din om trafikkfaren er sendt til komiteen for trafikk.", - "next_description": "Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs.", - "next_heading": "Trafikkomiteen tar den videre", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se andre trafikkfarer", - "description": "Se hva andre har meldt inn, og status på sakene.", - "heading": "Andre meldte trafikkfarer" - } - }, - "questions/received/trenger-hjelp.yaml": { - "back": "Til forsiden", - "description": "Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp.", - "next_description": "Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer.", - "next_heading": "Vi finner en nabo til deg", - "question": "Hva skjer nå som jeg har bedt om hjelp?" - }, - "questions/status/anleggsfeil/index.yaml": { - "back": "Tilbake til meldinger", - "description": "Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet.", - "heading": "Status på meldte anleggsfeil", - "list_description": "Alle meldinger er åpne for alle å se.", - "question": "Hva skjer med det jeg har meldt fra om?" - }, - "questions/status/oppslag/index.yaml": { - "back": "Tilbake", - "description": "Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet.", - "heading": "Oversikt over det som er meldt inn", - "list_description": "Åpen liste – navn og detaljer vises ikke.", - "question": "Hva er sendt inn, og hvor langt har det kommet?" - }, - "questions/status/trafikkmeldinger/index.yaml": { - "back": "Tilbake", - "description": "Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet.", - "heading": "Trafikkmeldinger og status", - "list_description": "Alle meldinger som er sendt inn, og hvor de står nå.", - "question": "Er det meldt fra om noe farlig i trafikken der jeg bor?" - }, - "questions/styret/index.yaml": { - "buckets": { - "innspill": { - "description": "Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar.", - "heading": "Høringsinnspill fra beboerne", - "moves": {} - }, - "komitesoknader": { - "description": "Her ligger alle som har meldt seg til en komité og venter på en plass.", - "heading": "Søknader til komiteene", - "moves": { - "open->avslatt": "Avslå søknaden", - "open->plassert": "Sett i komité" - } - }, - "oppslag": { - "description": "Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut.", - "heading": "Utstyr til utlån blant naboer", - "moves": { - "open->lagt_ut": "Legg ut oppslaget", - "open->tatt_ned": "Ta ned oppslaget" - } - }, - "trafikkmeldinger": { - "description": "Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier.", - "heading": "Meldinger om trafikkfarer", - "moves": {} - } - }, - "confirm": "Lagre", - "description": "Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "arrangementer": { - "button": "Inviter", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Arrangementer", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "horingsinstans": { - "button": "Inviter", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Høringsinstans", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "kasserer": { - "button": "Inviter", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i kassereren", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "komiteer": { - "button": "Inviter", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i komiteene", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "lekeplasser": { - "button": "Inviter", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Leke- og møteplasser", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "nabohjelp": { - "button": "Inviter", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i nabohjelpen", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "styret": { - "button": "Inviter", - "description": "De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i styret", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "trafikk": { - "button": "Inviter", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Trafikkforhold", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva venter på styret akkurat nå?" - }, - "questions/trafikk/index.yaml": { - "buckets": { - "trafikkmeldinger": { - "description": "Farlige steder i trafikken som naboer har meldt inn.", - "heading": "Farlige steder i trafikken", - "moves": { - "open->avvist": "Avvis meldingen", - "open->tatt_opp": "Ta opp med kommunen", - "tatt_opp->avvist": "Avvis meldingen", - "tatt_opp->ordnet": "Meld ordnet" - } - } - }, - "confirm": "Lagre", - "description": "Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "trafikk": { - "button": "Inviter", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Trafikkforhold", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvilke trafikkfarer må følges opp?" - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/aggregates.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/aggregates.yaml deleted file mode 100644 index 87955c7..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/aggregates.yaml +++ /dev/null @@ -1,192 +0,0 @@ -aggregates: -- bucket: anleggsfeil - initial: open - states: - open: - event: received - tatt_tak_i: - event: tatt_tak_i - utbedret: - event: utbedret - transitions: - open: - - tatt_tak_i - tatt_tak_i: - - utbedret -- bucket: frivillige - initial: open - states: - kontaktet: - event: kontaktet - open: - event: received - satt_opp: - event: satt_opp - takket_nei: - event: takket_nei - transitions: - kontaktet: - - satt_opp - - takket_nei - open: - - kontaktet - - takket_nei -- bucket: hjelpebehov - initial: open - states: - formidlet: - event: formidlet - mail: - body: |- - Vi har funnet en nabo som kan hjelpe. De tar kontakt med deg direkte. - - Det du kan gjøre nå: {site}/decide/trenger-hjelp?chain={chain}&email={email} - subject: En nabo er koblet på - to: submitter - ikke_lost: - event: ikke_lost - open: - event: received - mail: - body: Vi har mottatt det du trenger hjelp til, og ser etter en nabo som kan stille opp. Du hører fra oss så snart vi har funnet noen. - subject: Vi leter etter en nabo til deg - to: submitter - ordnet: - event: ordnet - mail: - body: Godt å høre at det ordnet seg. Takk for at du sa fra, og lykke til videre. - subject: Bra det løste seg - to: submitter - transitions: - formidlet: - - ordnet - - ikke_lost - open: - - formidlet - - ikke_lost -- bucket: hjelpere - initial: open - states: - open: - event: received - registrert: - event: registrert - trukket: - event: trukket - transitions: - open: - - registrert - - trukket -- bucket: husstander - initial: open - states: - betalt: - event: betalt - mail: - body: Kontingenten er registrert betalt. Du er nå medlem av Tomter Vel - velkommen med! - subject: Medlemskapet er i orden - to: submitter - open: - event: received - mail: - body: |- - Takk for at du vil bli medlem. Du får en betalingsoppfordring med kontonummer og beløp så snart kasserer har sett på saken. - - Det du kan gjøre nå: {site}/decide/bli-medlem?chain={chain}&email={email} - subject: Nesten i mål som medlem - to: submitter - utmeldt: - event: utmeldt - transitions: - open: - - betalt - - utmeldt -- bucket: innspill - initial: open - states: - ikke_tatt_med: - event: ikke_tatt_med - open: - event: received - tatt_med: - event: tatt_med - transitions: - open: - - tatt_med - - ikke_tatt_med -- bucket: komitesoknader - initial: open - states: - avslatt: - event: avslatt - open: - event: received - plassert: - event: plassert - transitions: - open: - - plassert - - avslatt -- bucket: medlemsendringer - initial: open - states: - open: - event: received - oppdatert: - event: oppdatert - transitions: - open: - - oppdatert -- bucket: oppslag - initial: open - states: - lagt_ut: - event: lagt_ut - mail: - body: Oppslaget ditt er lagt ut, og naboene kan nå se det. - subject: Oppslaget er synlig for naboene - to: submitter - open: - event: received - tatt_ned: - event: tatt_ned - transitions: - open: - - lagt_ut - - tatt_ned -- bucket: trafikkmeldinger - initial: open - states: - avvist: - event: avvist - open: - event: received - ordnet: - event: ordnet - tatt_opp: - event: tatt_opp - transitions: - open: - - tatt_opp - - avvist - tatt_opp: - - ordnet - - avvist -- bucket: utlegg - initial: open - states: - avvist: - event: avvist - godkjent: - event: godkjent - open: - event: received - utbetalt: - event: utbetalt - transitions: - godkjent: - - utbetalt - - avvist - open: - - godkjent - - avvist diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/needs.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/needs.yaml deleted file mode 100644 index 55e91a7..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/needs.yaml +++ /dev/null @@ -1,265 +0,0 @@ -needs: -- done_when: - - betalt - - utmeldt - enters: / - handled_by: kasserer - id: bli-medlem - lands_in: husstander - max_fields: 3 - max_steps: 2 - stages: - - open - - betalt - - utmeldt - success: - - betalt - via: Bli medlem eller endre medlemskapet ditt - wants: å bli medlem og få betalt kontingenten - who: en husstand i Tomter -- done_when: - - oppdatert - enters: / - handled_by: kasserer - id: endre-medlemskap - lands_in: medlemsendringer - max_fields: 3 - max_steps: 2 - stages: - - open - - oppdatert - success: - - oppdatert - via: Bli medlem eller endre medlemskapet ditt - wants: at velet har riktige opplysninger om dem - who: et medlem som har flyttet, byttet e-post eller vil melde seg ut -- done_when: - - ordnet - - avvist - enters: / - handled_by: trafikk - id: trafikkfare - lands_in: trafikkmeldinger - max_fields: 2 - max_steps: 2 - stages: - - open - - tatt_opp - - ordnet - - avvist - success: - - ordnet - via: Meld fra om trafikkfare eller ødelagt anlegg - wants: at velet tar det opp med kommunen eller den som eier veien - who: en som har sett et farlig sted i trafikken -- done_when: - - utbedret - enters: / - handled_by: lekeplasser - id: anleggsfeil - lands_in: anleggsfeil - max_fields: 2 - max_steps: 2 - stages: - - open - - tatt_tak_i - - utbedret - success: - - utbedret - via: Meld fra om trafikkfare eller ødelagt anlegg - wants: at det blir fikset før noen skader seg - who: en som ser at noe på lekeplassen eller stien er ødelagt -- done_when: - - tatt_med - - ikke_tatt_med - enters: / - handled_by: horingsinstans - id: horingsinnspill - lands_in: innspill - max_fields: 3 - max_steps: 1 - stages: - - open - - tatt_med - - ikke_tatt_med - success: - - tatt_med - via: Få din mening med i høringssvaret - wants: at velet tar det med i sitt svar - who: en beboer som har en mening om en sak kommunen har på høring -- done_when: - - satt_opp - - takket_nei - enters: / - handled_by: arrangementer - id: hjelpe-til - lands_in: frivillige - max_fields: 3 - max_steps: 2 - stages: - - open - - kontaktet - - satt_opp - - takket_nei - success: - - satt_opp - via: Bidra på arrangement eller i en komité - wants: å bli satt opp på noe som passer dem - who: en som vil hjelpe til på et arrangement eller en dugnad -- done_when: - - plassert - - avslatt - enters: / - handled_by: styret - id: komite - lands_in: komitesoknader - max_fields: 3 - max_steps: 2 - stages: - - open - - plassert - - avslatt - success: - - plassert - via: Bidra på arrangement eller i en komité - wants: en plass i den komiteen som driver med det de bryr seg om - who: en som vil sitte i en komité -- done_when: - - ordnet - - ikke_lost - enters: / - handled_by: nabohjelp - id: trenger-hjelp - lands_in: hjelpebehov - max_fields: 4 - max_steps: 2 - stages: - - open - - formidlet - - ordnet - - ikke_lost - success: - - ordnet - via: Få hjelp av naboer eller gi en hånd selv - wants: at en nabo stiller opp - who: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss -- done_when: - - registrert - - trukket - enters: / - handled_by: nabohjelp - id: kan-hjelpe - lands_in: hjelpere - max_fields: 4 - max_steps: 2 - stages: - - open - - registrert - - trukket - success: - - registrert - via: Få hjelp av naboer eller gi en hånd selv - wants: å bli spurt når det passer - who: en nabo som kan stille opp når noen trenger det -- done_when: - - lagt_ut - - tatt_ned - enters: / - handled_by: styret - id: dele-utstyr - lands_in: oppslag - max_fields: 4 - max_steps: 2 - stages: - - open - - lagt_ut - - tatt_ned - success: - - lagt_ut - via: Få hjelp av naboer eller gi en hånd selv - wants: et oppslag som naboene ser - who: en nabo som har noe å låne ut, eller trenger å låne noe -- done_when: - - utbetalt - - avvist - enters: /komiteer/utlegg - enters_as: komiteer - handled_by: kasserer - id: utlegg - lands_in: utlegg - max_fields: 3 - max_steps: 1 - stages: - - open - - godkjent - - utbetalt - - avvist - success: - - utbetalt - via: Få pengene tilbake - wants: pengene tilbake - who: en i en komité som har lagt ut for noe -personas: -- id: nyinnflyttet - need: bli-medlem - text: Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det? -- id: glemte-a-betale - need: bli-medlem - text: Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem? -- id: ny-epost - need: endre-medlemskap - text: Vi har byttet e-postadresse og får ikke lenger noe fra dere. -- id: flytter - need: endre-medlemskap - text: Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista. -- id: skolevei - need: trafikkfare - text: Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går. -- id: busslomme - need: trafikkfare - text: Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy. -- id: huske - need: anleggsfeil - text: Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt. -- id: bru - need: anleggsfeil - text: Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom. -- id: blokker - need: horingsinnspill - text: Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra? -- id: togtider - need: horingsinnspill - text: Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det. -- id: vafler - need: hjelpe-til - text: Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk. -- id: motorsag - need: hjelpe-til - text: Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad. -- id: pendler - need: komite - text: Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det. -- id: planlegger - need: komite - text: Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring. -- id: tilhenger - need: dele-utstyr - text: Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp. -- id: stige - need: dele-utstyr - text: Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har? -- id: snomaking - need: trenger-hjelp - text: Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør? -- id: nyoperert - need: trenger-hjelp - text: Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg? -- id: hjemmekontor - need: kan-hjelpe - text: Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv. -- id: pensjonert-elektriker - need: kan-hjelpe - text: Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting. -- id: kvittering - need: utlegg - text: Jeg kjøpte pølser og kakao til skøytedagen for 1 840 kroner, her er kvitteringa, vil ha det igjen. diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/arrangementer/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/arrangementer/_section.yaml deleted file mode 100644 index 94afa0f..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/arrangementer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: arrangementer diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/arrangementer/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/arrangementer/index.yaml deleted file mode 100644 index 13a990e..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/arrangementer/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -alternatives: -- action: /arrangementer - consequence: - - Lagre - description: Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem. - features: - - description: '' - name: '' - resource: - requires_group: arrangementer - source: - bucket: frivillige - kind: kv - transitions: - - from: kontaktet - label: Sett opp - to: satt_opp - - from: kontaktet - label: Takket nei - to: takket_nei - - from: open - label: Merk som kontaktet - to: kontaktet - - from: open - label: Takket nei - to: takket_nei - name: Frivillige til arrangementer og dugnad -- action: /arrangementer - consequence: - - Inviter - description: De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: arrangementer - name: Inviter noen inn i Arrangementer -- action: /arrangementer - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: arrangementer - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer. -name: Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/bidra/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/bidra/index.yaml deleted file mode 100644 index 7d24674..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/bidra/index.yaml +++ /dev/null @@ -1,82 +0,0 @@ -alternatives: -- action: /received/hjelpe-til - consequence: - - Meld meg på - description: 17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer. - encouragements: - - Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg. - features: - - description: Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit. - icon: lucide:clipboard-list - name: Hva skjer videre - - description: Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem leser dette - - description: Fortell kort hva du kan hjelpe til med. - icon: lucide:hand-helping - name: Meld deg som hjelper - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: Telefon - name: telefon - placeholder: 912 34 567 - type: tel - - label: Hva kan du hjelpe til med? - multiple: true - name: hva - options: - - 17. mai - - Juletregranstenning - - Skøytedag - - Dugnad på elvestien - - Det som trengs - type: select - name: Bli med på dugnad eller arrangement - record_as: frivillige -- action: /received/komite - consequence: - - Meld interesse - description: Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i. - encouragements: - - Det tar bare et minutt, og noen fra styret svarer deg. - features: - - description: Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå. - icon: lucide:clipboard-list - name: Hva skjer videre - - description: Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:handshake - name: Hvem leser dette - - description: Skriv hvilken komité du er interessert i. - icon: lucide:users - name: Meld deg til en komité - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: epost - placeholder: kari@eksempel.no - type: email - - label: Hvilken komité? - multiple: true - name: komite - options: - - Arrangementer - - Elvesti - - Høringsinstans - - Leke- og møteplasser - - Miljøgate - - Pendlerforhold - - Trafikkforhold - type: select - name: Sitt i en komité som betyr noe for deg - record_as: komitesoknader -description: Vil du stille opp for nabolaget? Her melder du deg til dugnad og arrangementer, eller til en av komiteene. -name: Vil du hjelpe til i nabolaget? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/decide/bli-medlem.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/decide/bli-medlem.yaml deleted file mode 100644 index d7dad96..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/decide/bli-medlem.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: '' - name: Utmeldt - self_transition: - bucket: husstander - label: Utmeldt - to: utmeldt -description: '' -name: What would you like to do? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/decide/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/decide/dele-utstyr.yaml deleted file mode 100644 index dfece00..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/decide/dele-utstyr.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Oppslaget fjernes fra siden, så ingen flere spør om å låne det. - name: Meld at utstyret er tatt ned - self_transition: - bucket: oppslag - label: Ta ned oppslaget - to: tatt_ned -description: Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån. -name: Skal oppslaget om utstyret fortsatt stå ute? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/decide/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/decide/kan-hjelpe.yaml deleted file mode 100644 index 2598b32..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/decide/kan-hjelpe.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre. - name: Ta en pause fra nabohjelpen - self_transition: - bucket: hjelpere - label: Trekk meg - to: trukket -description: Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå. -name: Vil du fortsatt kunne bli spurt om å hjelpe en nabo? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/decide/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/decide/trenger-hjelp.yaml deleted file mode 100644 index 7aad76e..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/decide/trenger-hjelp.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Da vet vi at naboen har fått hjelpen sin, og saken lukkes. - name: Meld fra at hjelpen er gitt - self_transition: - bucket: hjelpebehov - label: Merk som ordnet - to: ordnet -description: Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet. -name: Har naboen fått hjelpen de trengte? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/horingsinstans/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/horingsinstans/_section.yaml deleted file mode 100644 index ad97e31..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/horingsinstans/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: horingsinstans diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/horingsinstans/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/horingsinstans/index.yaml deleted file mode 100644 index b5c4abb..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/horingsinstans/index.yaml +++ /dev/null @@ -1,59 +0,0 @@ -alternatives: -- action: /horingsinstans - consequence: - - Send svar - description: Her ligger innspill fra beboere til saker kommunen har på høring. - features: - - description: '' - name: '' - resource: - requires_group: horingsinstans - source: - bucket: innspill - kind: kv - transitions: - - from: open - label: Tatt med i svaret - to: tatt_med - - from: open - label: Ikke tatt med - to: ikke_tatt_med - name: Innspill til høringssvar -- action: /horingsinstans - consequence: - - Inviter - description: De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: horingsinstans - name: Inviter noen inn i Høringsinstans -- action: /horingsinstans - consequence: - - Send svar - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: horingsinstans - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her samler du innspillene og ser hva som er tatt med i velets høringssvar. -name: Hva sier vi i høringssvaret? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/index.yaml deleted file mode 100644 index a7d65d0..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/index.yaml +++ /dev/null @@ -1,94 +0,0 @@ -alternatives: -- description: To ting først. Resten står lenger ned på siden. - features: - - description: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. - icon: lucide:users - name: Et vel som taler for Tomter, og et medlemskap du styrer selv - - description: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet. - icon: lucide:handshake - name: En nabo som stiller opp når du trenger det - name: Dette gjør velet -- description: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. - features: - - description: 'Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil)' - icon: lucide:list - name: Alt som er meldt ødelagt - - description: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) - icon: lucide:list - name: Oppslagstavla - - description: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger) - icon: lucide:list - name: Alle trafikkmeldinger - name: Se deg rundt først -- action: /medlem - consequence: - - Gå videre - description: Meld deg inn, oppdater opplysningene dine eller meld deg ut. - features: - - description: '' - icon: lucide:user-check - name: Deg som bor i en husstand på Tomter - name: Bli medlem eller endre medlemskapet ditt -- action: /melde-fra - consequence: - - Meld fra - description: Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien. - features: - - description: '' - icon: lucide:siren - name: Deg som har sett noe som bør fikses - name: Meld fra om trafikkfare eller ødelagt anlegg -- action: /bidra - consequence: - - Bli med - description: Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité. - features: - - description: '' - icon: lucide:hand-helping - name: Deg som vil stille opp - name: Bidra på arrangement eller i en komité -- action: /naboer - consequence: - - Se nabohjelpa - description: Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer. - features: - - description: '' - icon: lucide:heart-handshake - name: Deg som trenger hjelp eller kan gi en hånd - name: Få hjelp av naboer eller gi en hånd selv -- action: /received/horingsinnspill - consequence: - - Send innspill - description: Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar. - encouragements: - - Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen. - features: - - description: Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen. - icon: lucide:route - name: Hva skjer videre - - description: Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no. - icon: lucide:users - name: Hvem leser dette - - description: Fortell hvilken sak det gjelder og hva du mener. - icon: lucide:megaphone - name: Send et høringsinnspill - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: Hvilken sak gjelder det? - name: sak - placeholder: Reguleringsplan for Tomterveien - type: text - - label: Hva mener du? - name: innspill - placeholder: Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen. - type: textarea - name: Få din mening med i høringssvaret - record_as: innspill -description: Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står. -name: Hva gjør Tomter Vel, og hva kan du få her? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/kasserer/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/kasserer/_section.yaml deleted file mode 100644 index 2f8af2f..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/kasserer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: kasserer diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/kasserer/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/kasserer/index.yaml deleted file mode 100644 index 8dda085..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/kasserer/index.yaml +++ /dev/null @@ -1,102 +0,0 @@ -alternatives: -- action: /kasserer - consequence: - - Lagre - description: Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: husstander - kind: kv - transitions: - - from: open - label: Registrer betaling - to: betalt - - from: open - label: Meld ut - to: utmeldt - name: Nye medlemmer som venter på registrering -- action: /kasserer - consequence: - - Lagre - description: Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: medlemsendringer - kind: kv - transitions: - - from: open - label: Registrer endring - to: oppdatert - name: Endringer som venter på å bli registrert -- action: /kasserer - consequence: - - Lagre - description: Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: utlegg - kind: kv - transitions: - - from: godkjent - label: Merk som utbetalt - to: utbetalt - - from: godkjent - label: Avvis likevel - to: avvist - - from: open - label: Godkjenn utlegg - to: godkjent - - from: open - label: Avvis utlegg - to: avvist - name: Utlegg som venter på deg -- action: /kasserer - consequence: - - Inviter - description: De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: kasserer - name: Inviter noen inn i kassereren -- action: /kasserer - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer. -name: Hva venter på meg som kasserer akkurat nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/komiteer/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/komiteer/_section.yaml deleted file mode 100644 index 57e3295..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/komiteer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: komiteer diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/komiteer/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/komiteer/index.yaml deleted file mode 100644 index ccf6e5e..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/komiteer/index.yaml +++ /dev/null @@ -1,44 +0,0 @@ -alternatives: -- action: /komiteer/utlegg - consequence: - - Send utlegg - description: Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake. - name: Få tilbake det du har lagt ut -- action: /komiteer - consequence: - - Inviter - description: De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: komiteer - name: Inviter noen inn i komiteene -- action: /komiteer - consequence: - - Confirm - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: komiteer - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp. -name: Hva står ubehandlet i komiteen din nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/komiteer/utlegg-sent.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/komiteer/utlegg-sent.yaml deleted file mode 100644 index e347ad3..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/komiteer/utlegg-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga. - name: Pengene kommer på konto -- action: /komiteer - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Utlegget er sendt til kasserer. Du får beskjed når det er sjekket. -name: Hva skjer med utlegget mitt nå? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/komiteer/utlegg.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/komiteer/utlegg.yaml deleted file mode 100644 index 5d94ad3..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/komiteer/utlegg.yaml +++ /dev/null @@ -1,38 +0,0 @@ -alternatives: -- action: /komiteer/utlegg-sent - consequence: - - Send inn - description: Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten. - encouragements: - - Legg ved bilag om du har det, så går det raskere. - features: - - description: Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor. - icon: lucide:wallet - name: Fra krav til utbetaling - - description: Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster. - icon: lucide:coins - name: Kasserer ser dette - - description: Ha kvittering eller bilag klart før du fyller ut. - icon: lucide:receipt - name: Krav om refusjon - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: Beløp - name: belop - placeholder: 450 kr - type: text - - label: Hva gjaldt det - name: hva - placeholder: Kaffe og kjeks til dugnaden - type: textarea - name: Få pengene tilbake - record_as: utlegg -description: Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake. -followup: false -name: Har du lagt ut penger for komiteen og vil ha dem tilbake? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/lekeplasser/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/lekeplasser/_section.yaml deleted file mode 100644 index 1652221..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/lekeplasser/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: lekeplasser diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/lekeplasser/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/lekeplasser/index.yaml deleted file mode 100644 index 215a9bc..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/lekeplasser/index.yaml +++ /dev/null @@ -1,59 +0,0 @@ -alternatives: -- action: /lekeplasser - consequence: - - Lagre - description: Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses. - features: - - description: '' - name: '' - resource: - requires_group: lekeplasser - source: - bucket: anleggsfeil - kind: kv - transitions: - - from: open - label: Ta tak i saken - to: tatt_tak_i - - from: tatt_tak_i - label: Merk som utbedret - to: utbedret - name: Det som er meldt inn av skader -- action: /lekeplasser - consequence: - - Inviter - description: De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: lekeplasser - name: Inviter noen inn i Leke- og møteplasser -- action: /lekeplasser - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: lekeplasser - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset. -name: Hva må fikses på lekeplassene og stien nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/medlem/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/medlem/index.yaml deleted file mode 100644 index ad6fa0a..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/medlem/index.yaml +++ /dev/null @@ -1,72 +0,0 @@ -alternatives: -- action: /received/bli-medlem - consequence: - - Bli medlem - description: Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet. - encouragements: - - Kasserer sender deg kontingenten på e-post rett etterpå. - features: - - description: Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem. - icon: lucide:coins - name: Etter innmelding - - description: Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden. - icon: lucide:user - name: Hvem svarer deg - - description: Ha adressen i Tomter og en e-post du bruker klar. - icon: lucide:user-plus - name: Meld deg inn - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: Adresse - name: adresse - placeholder: Tomterveien 12 - type: text - - label: Email - name: email - type: email - - label: Telefon - name: telefon - optional: true - placeholder: 123 45 678 - type: tel - name: Bli medlem av Tomter Vel - record_as: husstander -- action: /received/endre-medlemskap - consequence: - - Send endring - description: Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger. - encouragements: - - Det tar bare et par minutter, og kasserer ordner resten. - features: - - description: Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om. - icon: lucide:refresh-cw - name: Etter du sender inn - - description: Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden. - icon: lucide:user - name: Hvem svarer deg - - description: Skriv navnet ditt og hva som er nytt. - icon: lucide:pencil - name: Endre medlemskap - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: Adresse - name: adresse - placeholder: Ny adresse i Tomter - type: text - - label: Hva vil du endre? - name: hva_er_nytt - placeholder: Ny e-post, ny adresse, eller ønske om utmelding - type: textarea - name: Oppdater eller avslutt medlemskapet - record_as: medlemsendringer -description: Bli medlem av Tomter Vel, eller oppdater opplysningene dine hvis du allerede er medlem. -name: Vil du bli medlem, eller endre medlemskapet ditt? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/melde-fra/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/melde-fra/index.yaml deleted file mode 100644 index 560dd8f..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/melde-fra/index.yaml +++ /dev/null @@ -1,69 +0,0 @@ -alternatives: -- action: /received/trafikkfare - consequence: - - Send inn - description: Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre. - encouragements: - - Bare noen linjer om hva og hvor er nok til at vi kan følge opp. - features: - - description: Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist. - icon: lucide:route - name: Hva skjer videre - - description: Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no. - icon: lucide:car - name: Hvem leser dette - - description: Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer. - icon: lucide:alert-triangle - name: Meld trafikkfare - requirements: - - label: Hvor var det - name: hvor - placeholder: Krysset Tomterveien / Elvestien - type: text - - label: Hva så du - name: hva - placeholder: Dårlig sikt i krysset, biler kjører fort - type: textarea - - label: E-post (valgfritt) - name: epost - optional: true - placeholder: ola.nordmann@epost.no - type: email - name: Meld fra om en trafikkfare - record_as: trafikkmeldinger -- action: /received/anleggsfeil - consequence: - - Send inn - description: Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det. - encouragements: - - Det holder med noen ord om hva du så og hvor. - features: - - description: Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet. - icon: lucide:wrench - name: Hva skjer videre - - description: Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no. - icon: lucide:hammer - name: Hvem leser dette - - description: Fortell hva som er ødelagt og omtrent hvor det er. - icon: lucide:construction - name: Meld anleggsfeil - requirements: - - label: Hvor er det - name: hvor - options: - - Lekeplassen - - Elvestien - - Skøytebanen - - Et annet sted - type: select - - label: Hva er ødelagt - name: hva - placeholder: Løs planke på gjerdet ved husken - type: textarea - name: Meld fra om noe ødelagt - record_as: anleggsfeil -description: Har du sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien? Her sier du fra til velet. -name: Hva vil du melde fra om? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/naboer/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/naboer/index.yaml deleted file mode 100644 index d8efcd4..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/naboer/index.yaml +++ /dev/null @@ -1,125 +0,0 @@ -alternatives: -- action: /received/trenger-hjelp - consequence: - - Be om hjelp - description: Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp. - encouragements: - - Vi finner en nabo som kan stille opp så fort som mulig. - features: - - description: Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed. - icon: lucide:hand-helping - name: Fra melding til hjelp - - description: Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem ser dette - - description: Skriv kort hva du trenger hjelp til. - icon: lucide:heart-handshake - name: Be om en hånd - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: email - placeholder: kari@eksempel.no - type: email - - label: Adresse - name: adresse - placeholder: Tomterveien 12 - type: text - - label: Hva trenger du hjelp til - name: hva - placeholder: Måke snø på trappa, handle inn litt mat - type: textarea - - label: Telefon - name: telefon - optional: true - placeholder: 123 45 678 - type: tel - name: Få en nabo til å stille opp - record_as: hjelpebehov -- action: /received/kan-hjelpe - consequence: - - Meld deg - description: Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer. - encouragements: - - Du blir bare kontaktet når noe passer for deg. - features: - - description: Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra. - icon: lucide:user-check - name: Fra påmelding til spørsmål - - description: Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no. - icon: lucide:heart-handshake - name: Hvem ser dette - - description: Fortell kort hva du kan bidra med. - icon: lucide:hand-helping - name: Meld deg som hjelper - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: email - placeholder: kari@eksempel.no - type: email - - label: Telefon - name: telefon - placeholder: 123 45 678 - type: tel - - label: Hva kan du hjelpe med - multiple: true - name: kan - options: - - Snømåking - - Handling - - Kjøring - - Småfiks i huset - - En prat og litt selskap - - Det som trengs - type: select - name: Bli spurt når en nabo trenger en hånd - record_as: hjelpere -- action: /received/dele-utstyr - consequence: - - Legg ut oppslag - description: Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det. - encouragements: - - Vi legger det ut så naboene kan se det. - features: - - description: Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen. - icon: lucide:clipboard-list - name: Fra oppslag til avtale - - description: Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem ser dette - - description: Skriv kort hva det gjelder, så folk skjønner det med en gang. - icon: lucide:package - name: Lån eller utlån - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: E-post - name: email - placeholder: ola@eksempel.no - type: email - - label: Har du eller trenger du - name: har_eller_trenger - options: - - Jeg har noe å låne ut - - Jeg trenger å låne noe - type: select - - label: Hva gjelder det - name: hva - placeholder: Hengerfeste til bil, tilhenger, stige - type: textarea - name: Lån ut eller lån av naboen - record_as: oppslag -description: Godt naboskap gjør hverdagen lettere. Trenger du en hånd, kan gi en, eller har noe å låne bort? -name: Trenger du en hånd, eller kan du gi en? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/nabohjelp/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/nabohjelp/_section.yaml deleted file mode 100644 index 5b3a2ad..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/nabohjelp/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: nabohjelp diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/nabohjelp/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/nabohjelp/index.yaml deleted file mode 100644 index ab4db6b..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/nabohjelp/index.yaml +++ /dev/null @@ -1,85 +0,0 @@ -alternatives: -- action: /nabohjelp - consequence: - - Lagre - description: Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: hjelpebehov - kind: kv - transitions: - - from: formidlet - label: Meld ordnet - to: ordnet - - from: formidlet - label: Meld ikke løst - to: ikke_lost - - from: open - label: Koble til nabo - to: formidlet - - from: open - label: Meld ikke løst - to: ikke_lost - name: Naboer som trenger en hånd -- action: /nabohjelp - consequence: - - Lagre - description: Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: hjelpere - kind: kv - transitions: - - from: open - label: Registrer som hjelper - to: registrert - - from: open - label: Meld trukket - to: trukket - name: Naboer som kan stille opp -- action: /nabohjelp - consequence: - - Inviter - description: De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: nabohjelp - name: Inviter noen inn i nabohjelpen -- action: /nabohjelp - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her kobler du naboer som trenger hjelp med dem som kan stille opp. -name: Hvem trenger hjelp, og hvem kan stille opp? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/anleggsfeil.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/anleggsfeil.yaml deleted file mode 100644 index 09d4976..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/anleggsfeil.yaml +++ /dev/null @@ -1,15 +0,0 @@ -alternatives: -- description: Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg. - name: Komiteen tar tak i det -- action: /status/anleggsfeil - consequence: - - Se meldte feil - description: Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet. - name: Se andre meldte feil -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt. -name: Hva skjer med meldingen min nå? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/bli-medlem.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/bli-medlem.yaml deleted file mode 100644 index 533f8a6..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/bli-medlem.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten. - name: Kasserer sender deg betalingsinfo -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert. -name: Hva skjer etter at jeg har meldt meg inn? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/dele-utstyr.yaml deleted file mode 100644 index 761313b..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/dele-utstyr.yaml +++ /dev/null @@ -1,15 +0,0 @@ -alternatives: -- description: En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne. - name: Styret legger det ut for deg -- action: /status/oppslag - consequence: - - Se hva naboer deler - description: Se hva andre i Tomter har lagt ut til utlån akkurat nå. - name: Se alt naboene deler -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan. -name: Hva skjer med det jeg har lagt ut? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/endre-medlemskap.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/endre-medlemskap.yaml deleted file mode 100644 index c58d676..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/endre-medlemskap.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg. - name: Kasserer retter opp opplysningene -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut. -name: Hva skjer nå med det jeg meldte inn? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/hjelpe-til.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/hjelpe-til.yaml deleted file mode 100644 index 3c61af4..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/hjelpe-til.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden. - name: Komiteen tar kontakt -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg. -name: Hva skjer nå som jeg har meldt meg? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/horingsinnspill.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/horingsinnspill.yaml deleted file mode 100644 index bf87c92..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/horingsinnspill.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med. - name: Innspillet ditt inn i vurderingen -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Innspillet ditt er sendt til høringsinstansen i velet. -name: Hva skjer med det jeg har sagt om saken? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/kan-hjelpe.yaml deleted file mode 100644 index 0ac67b5..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/kan-hjelpe.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte. - name: Du blir kontaktet ved behov -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe. -name: Hva skjer nå som jeg har registrert meg? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/komite.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/komite.yaml deleted file mode 100644 index a36dfda..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/komite.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer. - name: Vi finner riktig komité til deg -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg. -name: Hva skjer nå som jeg har meldt interesse for en komité? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/trafikkfare.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/trafikkfare.yaml deleted file mode 100644 index 82da494..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/trafikkfare.yaml +++ /dev/null @@ -1,15 +0,0 @@ -alternatives: -- description: Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs. - name: Trafikkomiteen tar den videre -- action: /status/trafikkmeldinger - consequence: - - Se andre trafikkfarer - description: Se hva andre har meldt inn, og status på sakene. - name: Andre meldte trafikkfarer -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Meldingen din om trafikkfaren er sendt til komiteen for trafikk. -name: Hva skjer med meldingen min nå? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/trenger-hjelp.yaml deleted file mode 100644 index beec6e5..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/received/trenger-hjelp.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer. - name: Vi finner en nabo til deg -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp. -name: Hva skjer nå som jeg har bedt om hjelp? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/status/anleggsfeil/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/status/anleggsfeil/index.yaml deleted file mode 100644 index 805a464..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/status/anleggsfeil/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- description: Alle meldinger er åpne for alle å se. - features: - - description: '' - name: '' - resource: - jq: '.[] | .responses |= {hva: .hva, hvor: .hvor}' - public: true - source: - bucket: anleggsfeil - kind: kv - name: Status på meldte anleggsfeil -- action: / - consequence: - - Tilbake til meldinger - description: '' - name: Tilbake til meldinger -description: Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet. -name: Hva skjer med det jeg har meldt fra om? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/status/oppslag/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/status/oppslag/index.yaml deleted file mode 100644 index cf172af..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/status/oppslag/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- description: Åpen liste – navn og detaljer vises ikke. - features: - - description: '' - name: '' - resource: - jq: '.[] | .responses |= {har_eller_trenger: .har_eller_trenger, hva: .hva}' - public: true - source: - bucket: oppslag - kind: kv - name: Oversikt over det som er meldt inn -- action: / - consequence: - - Tilbake - description: '' - name: Tilbake -description: Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet. -name: Hva er sendt inn, og hvor langt har det kommet? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/status/trafikkmeldinger/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/status/trafikkmeldinger/index.yaml deleted file mode 100644 index 7444f44..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/status/trafikkmeldinger/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- description: Alle meldinger som er sendt inn, og hvor de står nå. - features: - - description: '' - name: '' - resource: - jq: '.[] | .responses |= {hva: .hva, hvor: .hvor}' - public: true - source: - bucket: trafikkmeldinger - kind: kv - name: Trafikkmeldinger og status -- action: / - consequence: - - Tilbake - description: '' - name: Tilbake -description: Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet. -name: Er det meldt fra om noe farlig i trafikken der jeg bor? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/styret/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/styret/_section.yaml deleted file mode 100644 index 5a34160..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/styret/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: styret diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/styret/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/styret/index.yaml deleted file mode 100644 index 1a27364..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/styret/index.yaml +++ /dev/null @@ -1,219 +0,0 @@ -alternatives: -- action: /styret - consequence: - - Lagre - description: Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: innspill - kind: kv - transitions: [] - name: Høringsinnspill fra beboerne -- action: /styret - consequence: - - Lagre - description: Her ligger alle som har meldt seg til en komité og venter på en plass. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: komitesoknader - kind: kv - transitions: - - from: open - label: Sett i komité - to: plassert - - from: open - label: Avslå søknaden - to: avslatt - name: Søknader til komiteene -- action: /styret - consequence: - - Lagre - description: Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: oppslag - kind: kv - transitions: - - from: open - label: Legg ut oppslaget - to: lagt_ut - - from: open - label: Ta ned oppslaget - to: tatt_ned - name: Utstyr til utlån blant naboer -- action: /styret - consequence: - - Lagre - description: Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: trafikkmeldinger - kind: kv - transitions: [] - name: Meldinger om trafikkfarer -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: arrangementer - name: Inviter noen inn i Arrangementer -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: horingsinstans - name: Inviter noen inn i Høringsinstans -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: kasserer - name: Inviter noen inn i kassereren -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: komiteer - name: Inviter noen inn i komiteene -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: lekeplasser - name: Inviter noen inn i Leke- og møteplasser -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: nabohjelp - name: Inviter noen inn i nabohjelpen -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: styret - name: Inviter noen inn i styret -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: trafikk - name: Inviter noen inn i Trafikkforhold -- action: /styret - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: 'Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.' -name: Hva venter på styret akkurat nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/trafikk/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/trafikk/_section.yaml deleted file mode 100644 index dbe5246..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/trafikk/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: trafikk diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/trafikk/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/trafikk/index.yaml deleted file mode 100644 index d14490e..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/questions/trafikk/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -alternatives: -- action: /trafikk - consequence: - - Lagre - description: Farlige steder i trafikken som naboer har meldt inn. - features: - - description: '' - name: '' - resource: - requires_group: trafikk - source: - bucket: trafikkmeldinger - kind: kv - transitions: - - from: open - label: Ta opp med kommunen - to: tatt_opp - - from: open - label: Avvis meldingen - to: avvist - - from: tatt_opp - label: Meld ordnet - to: ordnet - - from: tatt_opp - label: Avvis meldingen - to: avvist - name: Farlige steder i trafikken -- action: /trafikk - consequence: - - Inviter - description: De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: trafikk - name: Inviter noen inn i Trafikkforhold -- action: /trafikk - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: trafikk - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier. -name: Hvilke trafikkfarer må følges opp? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/site.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/site.yaml deleted file mode 100644 index c2ac781..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/site.yaml +++ /dev/null @@ -1,5 +0,0 @@ -lang: no -mail: - from: Tomter Vel - reply_to: post@tomtervel.no -title: Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/words.json b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/words.json deleted file mode 100644 index 671c4a5..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site-r3/words.json +++ /dev/null @@ -1,953 +0,0 @@ -{ - "aggregates.yaml": { - "hjelpebehov": { - "formidlet": { - "body": "Vi har funnet en nabo som kan hjelpe. De tar kontakt med deg direkte.\n\nDet du kan gjøre nå: {site}/decide/trenger-hjelp?chain={chain}&email={email}", - "subject": "En nabo er koblet på" - }, - "open": { - "body": "Vi har mottatt det du trenger hjelp til, og ser etter en nabo som kan stille opp. Du hører fra oss så snart vi har funnet noen.", - "subject": "Vi leter etter en nabo til deg" - }, - "ordnet": { - "body": "Godt å høre at det ordnet seg. Takk for at du sa fra, og lykke til videre.", - "subject": "Bra det løste seg" - } - }, - "husstander": { - "betalt": { - "body": "Kontingenten er registrert betalt. Du er nå medlem av Tomter Vel - velkommen med!", - "subject": "Medlemskapet er i orden" - }, - "open": { - "body": "Takk for at du vil bli medlem. Du får en betalingsoppfordring med kontonummer og beløp så snart kasserer har sett på saken.\n\nDet du kan gjøre nå: {site}/decide/bli-medlem?chain={chain}&email={email}", - "subject": "Nesten i mål som medlem" - } - }, - "oppslag": { - "lagt_ut": { - "body": "Oppslaget ditt er lagt ut, og naboene kan nå se det.", - "subject": "Oppslaget er synlig for naboene" - } - } - }, - "questions/arrangementer/index.yaml": { - "buckets": { - "frivillige": { - "description": "Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem.", - "heading": "Frivillige til arrangementer og dugnad", - "moves": { - "kontaktet->satt_opp": "Sett opp", - "kontaktet->takket_nei": "Takket nei", - "open->kontaktet": "Merk som kontaktet", - "open->takket_nei": "Takket nei" - } - } - }, - "confirm": "Lagre", - "description": "Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "arrangementer": { - "button": "Inviter", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Arrangementer", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp?" - }, - "questions/bidra/index.yaml": { - "description": "Vil du stille opp for nabolaget? Her melder du deg til dugnad og arrangementer, eller til en av komiteene.", - "needs": { - "hjelpe-til": { - "button": "Meld meg på", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.", - "encouragement": "Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg.", - "form_description": "Fortell kort hva du kan hjelpe til med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli med på dugnad eller arrangement", - "hints": { - "hva": "", - "navn": "Kari Nordmann", - "telefon": "912 34 567" - }, - "icon": "hand-helping", - "labels": { - "hva": "Hva kan du hjelpe til med?", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit.", - "road_icon": "lucide:clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - }, - "komite": { - "button": "Meld interesse", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i.", - "encouragement": "Det tar bare et minutt, og noen fra styret svarer deg.", - "form_description": "Skriv hvilken komité du er interessert i.", - "form_title": "Meld deg til en komité", - "heading": "Sitt i en komité som betyr noe for deg", - "hints": { - "epost": "kari@eksempel.no", - "komite": "", - "navn": "Kari Nordmann" - }, - "icon": "users", - "labels": { - "epost": "E-post", - "komite": "Hvilken komité?", - "navn": "Navn" - }, - "road_description": "Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå.", - "road_icon": "lucide:clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:handshake", - "who_title": "Hvem leser dette" - } - }, - "question": "Vil du hjelpe til i nabolaget?" - }, - "questions/decide/bli-medlem.yaml": { - "description": "", - "moves": { - "utmeldt": { - "button": "Utmeldt", - "description": "", - "heading": "Utmeldt" - } - }, - "question": "What would you like to do?" - }, - "questions/decide/dele-utstyr.yaml": { - "description": "Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån.", - "moves": { - "tatt_ned": { - "button": "Ta ned oppslaget", - "description": "Oppslaget fjernes fra siden, så ingen flere spør om å låne det.", - "heading": "Meld at utstyret er tatt ned" - } - }, - "question": "Skal oppslaget om utstyret fortsatt stå ute?" - }, - "questions/decide/kan-hjelpe.yaml": { - "description": "Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå.", - "moves": { - "trukket": { - "button": "Trekk meg", - "description": "Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre.", - "heading": "Ta en pause fra nabohjelpen" - } - }, - "question": "Vil du fortsatt kunne bli spurt om å hjelpe en nabo?" - }, - "questions/decide/trenger-hjelp.yaml": { - "description": "Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet.", - "moves": { - "ordnet": { - "button": "Merk som ordnet", - "description": "Da vet vi at naboen har fått hjelpen sin, og saken lukkes.", - "heading": "Meld fra at hjelpen er gitt" - } - }, - "question": "Har naboen fått hjelpen de trengte?" - }, - "questions/horingsinstans/index.yaml": { - "buckets": { - "innspill": { - "description": "Her ligger innspill fra beboere til saker kommunen har på høring.", - "heading": "Innspill til høringssvar", - "moves": { - "open->ikke_tatt_med": "Ikke tatt med", - "open->tatt_med": "Tatt med i svaret" - } - } - }, - "confirm": "Send svar", - "description": "Her samler du innspillene og ser hva som er tatt med i velets høringssvar.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "horingsinstans": { - "button": "Inviter", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Høringsinstans", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva sier vi i høringssvaret?" - }, - "questions/index.yaml": { - "description": "Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står.", - "doors": { - "bidra": { - "button": "Bli med", - "description": "Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité.", - "for_whom": "Deg som vil stille opp", - "heading": "Bidra på arrangement eller i en komité", - "icon": "hand-helping" - }, - "medlem": { - "button": "Gå videre", - "description": "Meld deg inn, oppdater opplysningene dine eller meld deg ut.", - "for_whom": "Deg som bor i en husstand på Tomter", - "heading": "Bli medlem eller endre medlemskapet ditt", - "icon": "user-check" - }, - "melde-fra": { - "button": "Meld fra", - "description": "Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien.", - "for_whom": "Deg som har sett noe som bør fikses", - "heading": "Meld fra om trafikkfare eller ødelagt anlegg", - "icon": "siren" - }, - "naboer": { - "button": "Se nabohjelpa", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer.", - "for_whom": "Deg som trenger hjelp eller kan gi en hånd", - "heading": "Få hjelp av naboer eller gi en hånd selv", - "icon": "heart-handshake" - } - }, - "needs": { - "horingsinnspill": { - "button": "Send innspill", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "encouragement": "Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen.", - "form_description": "Fortell hvilken sak det gjelder og hva du mener.", - "form_title": "Send et høringsinnspill", - "heading": "Få din mening med i høringssvaret", - "hints": { - "innspill": "Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen.", - "navn": "Kari Nordmann", - "sak": "Reguleringsplan for Tomterveien" - }, - "icon": "megaphone", - "labels": { - "innspill": "Hva mener du?", - "navn": "Navn", - "sak": "Hvilken sak gjelder det?" - }, - "road_description": "Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - } - }, - "opener": { - "description": "To ting først. Resten står lenger ned på siden.", - "features": { - "medlem": { - "description": "Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil.", - "heading": "Et vel som taler for Tomter, og et medlemskap du styrer selv", - "icon": "users" - }, - "nabo": { - "description": "Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.", - "heading": "En nabo som stiller opp når du trenger det", - "icon": "handshake" - } - }, - "heading": "Dette gjør velet" - }, - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "shopping": { - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.", - "heading": "Se deg rundt først", - "items": { - "status-anleggsfeil": { - "description": "Lekeplassen og stien: det som er meldt, og det som er fikset.", - "heading": "Alt som er meldt ødelagt", - "icon": "list" - }, - "status-oppslag": { - "description": "Det naboene har å låne ut, og det de trenger å låne.", - "heading": "Oppslagstavla", - "icon": "list" - }, - "status-trafikkmeldinger": { - "description": "Farlige steder naboene har meldt, og hva velet har gjort med dem.", - "heading": "Alle trafikkmeldinger", - "icon": "list" - } - } - } - }, - "questions/kasserer/index.yaml": { - "buckets": { - "husstander": { - "description": "Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem.", - "heading": "Nye medlemmer som venter på registrering", - "moves": { - "open->betalt": "Registrer betaling", - "open->utmeldt": "Meld ut" - } - }, - "medlemsendringer": { - "description": "Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert.", - "heading": "Endringer som venter på å bli registrert", - "moves": { - "open->oppdatert": "Registrer endring" - } - }, - "utlegg": { - "description": "Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling.", - "heading": "Utlegg som venter på deg", - "moves": { - "godkjent->avvist": "Avvis likevel", - "godkjent->utbetalt": "Merk som utbetalt", - "open->avvist": "Avvis utlegg", - "open->godkjent": "Godkjenn utlegg" - } - } - }, - "confirm": "Lagre", - "description": "Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "kasserer": { - "button": "Inviter", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i kassereren", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva venter på meg som kasserer akkurat nå?" - }, - "questions/komiteer/index.yaml": { - "buckets": {}, - "confirm": "Confirm", - "description": "Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "komiteer": { - "button": "Inviter", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i komiteene", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": { - "utlegg": { - "button": "Send utlegg", - "description": "Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake.", - "heading": "Få tilbake det du har lagt ut" - } - }, - "question": "Hva står ubehandlet i komiteen din nå?" - }, - "questions/komiteer/utlegg-sent.yaml": { - "back": "Til forsiden", - "description": "Utlegget er sendt til kasserer. Du får beskjed når det er sjekket.", - "next_description": "Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga.", - "next_heading": "Pengene kommer på konto", - "question": "Hva skjer med utlegget mitt nå?" - }, - "questions/komiteer/utlegg.yaml": { - "button": "Send inn", - "description": "Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten.", - "encouragement": "Legg ved bilag om du har det, så går det raskere.", - "form_description": "Ha kvittering eller bilag klart før du fyller ut.", - "form_title": "Krav om refusjon", - "heading": "Få pengene tilbake", - "hints": { - "belop": "450 kr", - "hva": "Kaffe og kjeks til dugnaden", - "navn": "Kari Nordmann" - }, - "icon": "receipt", - "labels": { - "belop": "Beløp", - "hva": "Hva gjaldt det", - "navn": "Navn" - }, - "page_description": "Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake.", - "question": "Har du lagt ut penger for komiteen og vil ha dem tilbake?", - "road_description": "Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor.", - "road_icon": "lucide:wallet", - "road_title": "Fra krav til utbetaling", - "who_description": "Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster.", - "who_icon": "lucide:coins", - "who_title": "Kasserer ser dette" - }, - "questions/lekeplasser/index.yaml": { - "buckets": { - "anleggsfeil": { - "description": "Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses.", - "heading": "Det som er meldt inn av skader", - "moves": { - "open->tatt_tak_i": "Ta tak i saken", - "tatt_tak_i->utbedret": "Merk som utbedret" - } - } - }, - "confirm": "Lagre", - "description": "Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "lekeplasser": { - "button": "Inviter", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Leke- og møteplasser", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva må fikses på lekeplassene og stien nå?" - }, - "questions/medlem/index.yaml": { - "description": "Bli medlem av Tomter Vel, eller oppdater opplysningene dine hvis du allerede er medlem.", - "needs": { - "bli-medlem": { - "button": "Bli medlem", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.", - "encouragement": "Kasserer sender deg kontingenten på e-post rett etterpå.", - "form_description": "Ha adressen i Tomter og en e-post du bruker klar.", - "form_title": "Meld deg inn", - "heading": "Bli medlem av Tomter Vel", - "hints": { - "adresse": "Tomterveien 12", - "email": "", - "navn": "Ola Nordmann", - "telefon": "123 45 678" - }, - "icon": "user-plus", - "labels": { - "adresse": "Adresse", - "email": "Email", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem.", - "road_icon": "lucide:coins", - "road_title": "Etter innmelding", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "who_title": "Hvem svarer deg" - }, - "endre-medlemskap": { - "button": "Send endring", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.", - "encouragement": "Det tar bare et par minutter, og kasserer ordner resten.", - "form_description": "Skriv navnet ditt og hva som er nytt.", - "form_title": "Endre medlemskap", - "heading": "Oppdater eller avslutt medlemskapet", - "hints": { - "adresse": "Ny adresse i Tomter", - "hva_er_nytt": "Ny e-post, ny adresse, eller ønske om utmelding", - "navn": "Ola Nordmann" - }, - "icon": "pencil", - "labels": { - "adresse": "Adresse", - "hva_er_nytt": "Hva vil du endre?", - "navn": "Navn" - }, - "road_description": "Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om.", - "road_icon": "lucide:refresh-cw", - "road_title": "Etter du sender inn", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "who_title": "Hvem svarer deg" - } - }, - "question": "Vil du bli medlem, eller endre medlemskapet ditt?" - }, - "questions/melde-fra/index.yaml": { - "description": "Har du sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien? Her sier du fra til velet.", - "needs": { - "anleggsfeil": { - "button": "Send inn", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.", - "encouragement": "Det holder med noen ord om hva du så og hvor.", - "form_description": "Fortell hva som er ødelagt og omtrent hvor det er.", - "form_title": "Meld anleggsfeil", - "heading": "Meld fra om noe ødelagt", - "hints": { - "hva": "Løs planke på gjerdet ved husken", - "hvor": "" - }, - "icon": "construction", - "labels": { - "hva": "Hva er ødelagt", - "hvor": "Hvor er det" - }, - "road_description": "Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet.", - "road_icon": "lucide:wrench", - "road_title": "Hva skjer videre", - "who_description": "Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:hammer", - "who_title": "Hvem leser dette" - }, - "trafikkfare": { - "button": "Send inn", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.", - "encouragement": "Bare noen linjer om hva og hvor er nok til at vi kan følge opp.", - "form_description": "Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer.", - "form_title": "Meld trafikkfare", - "heading": "Meld fra om en trafikkfare", - "hints": { - "epost": "ola.nordmann@epost.no", - "hva": "Dårlig sikt i krysset, biler kjører fort", - "hvor": "Krysset Tomterveien / Elvestien" - }, - "icon": "alert-triangle", - "labels": { - "epost": "E-post (valgfritt)", - "hva": "Hva så du", - "hvor": "Hvor var det" - }, - "road_description": "Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:car", - "who_title": "Hvem leser dette" - } - }, - "question": "Hva vil du melde fra om?" - }, - "questions/naboer/index.yaml": { - "description": "Godt naboskap gjør hverdagen lettere. Trenger du en hånd, kan gi en, eller har noe å låne bort?", - "needs": { - "dele-utstyr": { - "button": "Legg ut oppslag", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.", - "encouragement": "Vi legger det ut så naboene kan se det.", - "form_description": "Skriv kort hva det gjelder, så folk skjønner det med en gang.", - "form_title": "Lån eller utlån", - "heading": "Lån ut eller lån av naboen", - "hints": { - "email": "ola@eksempel.no", - "har_eller_trenger": "", - "hva": "Hengerfeste til bil, tilhenger, stige", - "navn": "Ola Nordmann" - }, - "icon": "package", - "labels": { - "email": "E-post", - "har_eller_trenger": "Har du eller trenger du", - "hva": "Hva gjelder det", - "navn": "Navn" - }, - "road_description": "Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen.", - "road_icon": "lucide:clipboard-list", - "road_title": "Fra oppslag til avtale", - "who_description": "Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem ser dette" - }, - "kan-hjelpe": { - "button": "Meld deg", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.", - "encouragement": "Du blir bare kontaktet når noe passer for deg.", - "form_description": "Fortell kort hva du kan bidra med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli spurt når en nabo trenger en hånd", - "hints": { - "email": "kari@eksempel.no", - "kan": "", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "hand-helping", - "labels": { - "email": "E-post", - "kan": "Hva kan du hjelpe med", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra.", - "road_icon": "lucide:user-check", - "road_title": "Fra påmelding til spørsmål", - "who_description": "Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no.", - "who_icon": "lucide:heart-handshake", - "who_title": "Hvem ser dette" - }, - "trenger-hjelp": { - "button": "Be om hjelp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.", - "encouragement": "Vi finner en nabo som kan stille opp så fort som mulig.", - "form_description": "Skriv kort hva du trenger hjelp til.", - "form_title": "Be om en hånd", - "heading": "Få en nabo til å stille opp", - "hints": { - "adresse": "Tomterveien 12", - "email": "kari@eksempel.no", - "hva": "Måke snø på trappa, handle inn litt mat", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "heart-handshake", - "labels": { - "adresse": "Adresse", - "email": "E-post", - "hva": "Hva trenger du hjelp til", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed.", - "road_icon": "lucide:hand-helping", - "road_title": "Fra melding til hjelp", - "who_description": "Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem ser dette" - } - }, - "question": "Trenger du en hånd, eller kan du gi en?" - }, - "questions/nabohjelp/index.yaml": { - "buckets": { - "hjelpebehov": { - "description": "Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe.", - "heading": "Naboer som trenger en hånd", - "moves": { - "formidlet->ikke_lost": "Meld ikke løst", - "formidlet->ordnet": "Meld ordnet", - "open->formidlet": "Koble til nabo", - "open->ikke_lost": "Meld ikke løst" - } - }, - "hjelpere": { - "description": "Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem.", - "heading": "Naboer som kan stille opp", - "moves": { - "open->registrert": "Registrer som hjelper", - "open->trukket": "Meld trukket" - } - } - }, - "confirm": "Lagre", - "description": "Her kobler du naboer som trenger hjelp med dem som kan stille opp.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "nabohjelp": { - "button": "Inviter", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i nabohjelpen", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvem trenger hjelp, og hvem kan stille opp?" - }, - "questions/received/anleggsfeil.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt.", - "next_description": "Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg.", - "next_heading": "Komiteen tar tak i det", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se meldte feil", - "description": "Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet.", - "heading": "Se andre meldte feil" - } - }, - "questions/received/bli-medlem.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert.", - "next_description": "Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten.", - "next_heading": "Kasserer sender deg betalingsinfo", - "question": "Hva skjer etter at jeg har meldt meg inn?" - }, - "questions/received/dele-utstyr.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan.", - "next_description": "En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne.", - "next_heading": "Styret legger det ut for deg", - "question": "Hva skjer med det jeg har lagt ut?", - "see_all": { - "button": "Se hva naboer deler", - "description": "Se hva andre i Tomter har lagt ut til utlån akkurat nå.", - "heading": "Se alt naboene deler" - } - }, - "questions/received/endre-medlemskap.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut.", - "next_description": "Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg.", - "next_heading": "Kasserer retter opp opplysningene", - "question": "Hva skjer nå med det jeg meldte inn?" - }, - "questions/received/hjelpe-til.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg.", - "next_description": "Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden.", - "next_heading": "Komiteen tar kontakt", - "question": "Hva skjer nå som jeg har meldt meg?" - }, - "questions/received/horingsinnspill.yaml": { - "back": "Tilbake til forsiden", - "description": "Innspillet ditt er sendt til høringsinstansen i velet.", - "next_description": "De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med.", - "next_heading": "Innspillet ditt inn i vurderingen", - "question": "Hva skjer med det jeg har sagt om saken?" - }, - "questions/received/kan-hjelpe.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe.", - "next_description": "Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte.", - "next_heading": "Du blir kontaktet ved behov", - "question": "Hva skjer nå som jeg har registrert meg?" - }, - "questions/received/komite.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg.", - "next_description": "Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer.", - "next_heading": "Vi finner riktig komité til deg", - "question": "Hva skjer nå som jeg har meldt interesse for en komité?" - }, - "questions/received/trafikkfare.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din om trafikkfaren er sendt til komiteen for trafikk.", - "next_description": "Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs.", - "next_heading": "Trafikkomiteen tar den videre", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se andre trafikkfarer", - "description": "Se hva andre har meldt inn, og status på sakene.", - "heading": "Andre meldte trafikkfarer" - } - }, - "questions/received/trenger-hjelp.yaml": { - "back": "Til forsiden", - "description": "Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp.", - "next_description": "Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer.", - "next_heading": "Vi finner en nabo til deg", - "question": "Hva skjer nå som jeg har bedt om hjelp?" - }, - "questions/status/anleggsfeil/index.yaml": { - "back": "Tilbake til meldinger", - "description": "Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet.", - "heading": "Status på meldte anleggsfeil", - "list_description": "Alle meldinger er åpne for alle å se.", - "question": "Hva skjer med det jeg har meldt fra om?" - }, - "questions/status/oppslag/index.yaml": { - "back": "Tilbake", - "description": "Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet.", - "heading": "Oversikt over det som er meldt inn", - "list_description": "Åpen liste – navn og detaljer vises ikke.", - "question": "Hva er sendt inn, og hvor langt har det kommet?" - }, - "questions/status/trafikkmeldinger/index.yaml": { - "back": "Tilbake", - "description": "Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet.", - "heading": "Trafikkmeldinger og status", - "list_description": "Alle meldinger som er sendt inn, og hvor de står nå.", - "question": "Er det meldt fra om noe farlig i trafikken der jeg bor?" - }, - "questions/styret/index.yaml": { - "buckets": { - "innspill": { - "description": "Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar.", - "heading": "Høringsinnspill fra beboerne", - "moves": {} - }, - "komitesoknader": { - "description": "Her ligger alle som har meldt seg til en komité og venter på en plass.", - "heading": "Søknader til komiteene", - "moves": { - "open->avslatt": "Avslå søknaden", - "open->plassert": "Sett i komité" - } - }, - "oppslag": { - "description": "Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut.", - "heading": "Utstyr til utlån blant naboer", - "moves": { - "open->lagt_ut": "Legg ut oppslaget", - "open->tatt_ned": "Ta ned oppslaget" - } - }, - "trafikkmeldinger": { - "description": "Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier.", - "heading": "Meldinger om trafikkfarer", - "moves": {} - } - }, - "confirm": "Lagre", - "description": "Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "arrangementer": { - "button": "Inviter", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Arrangementer", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "horingsinstans": { - "button": "Inviter", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Høringsinstans", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "kasserer": { - "button": "Inviter", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i kassereren", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "komiteer": { - "button": "Inviter", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i komiteene", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "lekeplasser": { - "button": "Inviter", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Leke- og møteplasser", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "nabohjelp": { - "button": "Inviter", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i nabohjelpen", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "styret": { - "button": "Inviter", - "description": "De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i styret", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "trafikk": { - "button": "Inviter", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Trafikkforhold", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva venter på styret akkurat nå?" - }, - "questions/trafikk/index.yaml": { - "buckets": { - "trafikkmeldinger": { - "description": "Farlige steder i trafikken som naboer har meldt inn.", - "heading": "Farlige steder i trafikken", - "moves": { - "open->avvist": "Avvis meldingen", - "open->tatt_opp": "Ta opp med kommunen", - "tatt_opp->avvist": "Avvis meldingen", - "tatt_opp->ordnet": "Meld ordnet" - } - } - }, - "confirm": "Lagre", - "description": "Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "trafikk": { - "button": "Inviter", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Trafikkforhold", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvilke trafikkfarer må følges opp?" - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/aggregates.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/aggregates.yaml deleted file mode 100644 index 87955c7..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/aggregates.yaml +++ /dev/null @@ -1,192 +0,0 @@ -aggregates: -- bucket: anleggsfeil - initial: open - states: - open: - event: received - tatt_tak_i: - event: tatt_tak_i - utbedret: - event: utbedret - transitions: - open: - - tatt_tak_i - tatt_tak_i: - - utbedret -- bucket: frivillige - initial: open - states: - kontaktet: - event: kontaktet - open: - event: received - satt_opp: - event: satt_opp - takket_nei: - event: takket_nei - transitions: - kontaktet: - - satt_opp - - takket_nei - open: - - kontaktet - - takket_nei -- bucket: hjelpebehov - initial: open - states: - formidlet: - event: formidlet - mail: - body: |- - Vi har funnet en nabo som kan hjelpe. De tar kontakt med deg direkte. - - Det du kan gjøre nå: {site}/decide/trenger-hjelp?chain={chain}&email={email} - subject: En nabo er koblet på - to: submitter - ikke_lost: - event: ikke_lost - open: - event: received - mail: - body: Vi har mottatt det du trenger hjelp til, og ser etter en nabo som kan stille opp. Du hører fra oss så snart vi har funnet noen. - subject: Vi leter etter en nabo til deg - to: submitter - ordnet: - event: ordnet - mail: - body: Godt å høre at det ordnet seg. Takk for at du sa fra, og lykke til videre. - subject: Bra det løste seg - to: submitter - transitions: - formidlet: - - ordnet - - ikke_lost - open: - - formidlet - - ikke_lost -- bucket: hjelpere - initial: open - states: - open: - event: received - registrert: - event: registrert - trukket: - event: trukket - transitions: - open: - - registrert - - trukket -- bucket: husstander - initial: open - states: - betalt: - event: betalt - mail: - body: Kontingenten er registrert betalt. Du er nå medlem av Tomter Vel - velkommen med! - subject: Medlemskapet er i orden - to: submitter - open: - event: received - mail: - body: |- - Takk for at du vil bli medlem. Du får en betalingsoppfordring med kontonummer og beløp så snart kasserer har sett på saken. - - Det du kan gjøre nå: {site}/decide/bli-medlem?chain={chain}&email={email} - subject: Nesten i mål som medlem - to: submitter - utmeldt: - event: utmeldt - transitions: - open: - - betalt - - utmeldt -- bucket: innspill - initial: open - states: - ikke_tatt_med: - event: ikke_tatt_med - open: - event: received - tatt_med: - event: tatt_med - transitions: - open: - - tatt_med - - ikke_tatt_med -- bucket: komitesoknader - initial: open - states: - avslatt: - event: avslatt - open: - event: received - plassert: - event: plassert - transitions: - open: - - plassert - - avslatt -- bucket: medlemsendringer - initial: open - states: - open: - event: received - oppdatert: - event: oppdatert - transitions: - open: - - oppdatert -- bucket: oppslag - initial: open - states: - lagt_ut: - event: lagt_ut - mail: - body: Oppslaget ditt er lagt ut, og naboene kan nå se det. - subject: Oppslaget er synlig for naboene - to: submitter - open: - event: received - tatt_ned: - event: tatt_ned - transitions: - open: - - lagt_ut - - tatt_ned -- bucket: trafikkmeldinger - initial: open - states: - avvist: - event: avvist - open: - event: received - ordnet: - event: ordnet - tatt_opp: - event: tatt_opp - transitions: - open: - - tatt_opp - - avvist - tatt_opp: - - ordnet - - avvist -- bucket: utlegg - initial: open - states: - avvist: - event: avvist - godkjent: - event: godkjent - open: - event: received - utbetalt: - event: utbetalt - transitions: - godkjent: - - utbetalt - - avvist - open: - - godkjent - - avvist diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/llm/01-aggregates.yaml.md b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/llm/01-aggregates.yaml.md deleted file mode 100644 index aff9065..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/llm/01-aggregates.yaml.md +++ /dev/null @@ -1,108 +0,0 @@ -You write the words for one page of a website for this business. - -Business: Tomter Vel -About: Velforeningen for Tomter, stiftet i 1947. Sju komiteer drevet på fritida: arrangementer, elvestien, lekeplassene, høringssvar, miljøgata, pendlerforhold og trafikk. 157 husstander er medlemmer. -Contact: Styret i Tomter Vel -Language to write in: no - -Everyone the site serves: -- door medlem: for en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding; behind it: bli-medlem, endre-medlemskap -- door melde-fra: for noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien; behind it: trafikkfare, anleggsfeil -- door bidra: for noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité; behind it: hjelpe-til, komite -- door naboer: for en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut; behind it: trenger-hjelp, kan-hjelpe, dele-utstyr -- bli-medlem: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten. Handled by kasserer. Stages: open -> betalt -> utmeldt. -- endre-medlemskap: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem. Handled by kasserer. Stages: open -> oppdatert. -- trafikkfare: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien. Handled by trafikk. Stages: open -> tatt_opp -> ordnet -> avvist. -- anleggsfeil: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg. Handled by lekeplasser. Stages: open -> tatt_tak_i -> utbedret. -- horingsinnspill: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar. Handled by horingsinstans. Stages: open -> tatt_med -> ikke_tatt_med. -- hjelpe-til: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem. Handled by arrangementer. Stages: open -> kontaktet -> satt_opp -> takket_nei. -- komite: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om. Handled by styret. Stages: open -> plassert -> avslatt. -- trenger-hjelp: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp. Handled by nabohjelp. Stages: open -> formidlet -> ordnet -> ikke_lost. -- kan-hjelpe: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer. Handled by nabohjelp. Stages: open -> registrert -> trukket. -- dele-utstyr: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag som naboene ser. Handled by styret. Stages: open -> lagt_ut -> tatt_ned. -- utlegg: en i en komité som har lagt ut for noe - wants: pengene tilbake. Handled by kasserer. Stages: open -> godkjent -> utbetalt -> avvist. - -The page: aggregates.yaml -It is the mails the site sends. Under each bucket, each stage that sends one has a `subject` and a `body`: the mail a person gets the moment their case enters that stage, saying what happened and what, if anything, they can do now. Plain text, short, in the business's voice. Keep every `{...}` placeholder exactly as it is - `{site}`, `{chain}`, `{email}` and any field name are filled in by the site - and keep any line with a link in it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "hjelpebehov": { - "formidlet": { - "body": "", - "subject": "" - }, - "open": { - "body": "", - "subject": "" - }, - "ordnet": { - "body": "", - "subject": "" - } - }, - "husstander": { - "betalt": { - "body": "", - "subject": "" - }, - "open": { - "body": "", - "subject": "" - } - }, - "oppslag": { - "lagt_ut": { - "body": "", - "subject": "" - } - } -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "hjelpebehov": { - "formidlet": { - "body": "Vi har funnet en nabo som kan hjelpe. De tar kontakt med deg direkte.", - "subject": "En nabo er koblet på" - }, - "open": { - "body": "Vi har mottatt det du trenger hjelp til, og ser etter en nabo som kan stille opp. Du hører fra oss så snart vi har funnet noen.", - "subject": "Vi leter etter en nabo til deg" - }, - "ordnet": { - "body": "Godt å høre at det ordnet seg. Takk for at du sa fra, og lykke til videre.", - "subject": "Bra det løste seg" - } - }, - "husstander": { - "betalt": { - "body": "Kontingenten er registrert betalt. Du er nå medlem av Tomter Vel - velkommen med!", - "subject": "Medlemskapet er i orden" - }, - "open": { - "body": "Takk for at du vil bli medlem. Du får en betalingsoppfordring med kontonummer og beløp så snart kasserer har sett på saken.", - "subject": "Nesten i mål som medlem" - } - }, - "oppslag": { - "lagt_ut": { - "body": "Oppslaget ditt er lagt ut, og naboene kan nå se det.", - "subject": "Oppslaget er synlig for naboene" - } - } -} -``` diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/needs.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/needs.yaml deleted file mode 100644 index f741b40..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/needs.yaml +++ /dev/null @@ -1,265 +0,0 @@ -needs: -- done_when: - - betalt - - utmeldt - enters: / - handled_by: kasserer - id: bli-medlem - lands_in: husstander - max_fields: 3 - max_steps: 2 - stages: - - open - - betalt - - utmeldt - success: - - betalt - via: Bli medlem eller endre opplysningene dine - wants: å bli medlem og få betalt kontingenten - who: en husstand i Tomter -- done_when: - - oppdatert - enters: / - handled_by: kasserer - id: endre-medlemskap - lands_in: medlemsendringer - max_fields: 3 - max_steps: 2 - stages: - - open - - oppdatert - success: - - oppdatert - via: Bli medlem eller endre opplysningene dine - wants: at velet har riktige opplysninger om dem - who: et medlem som har flyttet, byttet e-post eller vil melde seg ut -- done_when: - - ordnet - - avvist - enters: / - handled_by: trafikk - id: trafikkfare - lands_in: trafikkmeldinger - max_fields: 2 - max_steps: 2 - stages: - - open - - tatt_opp - - ordnet - - avvist - success: - - ordnet - via: Meld fra om noe som bør fikses - wants: at velet tar det opp med kommunen eller den som eier veien - who: en som har sett et farlig sted i trafikken -- done_when: - - utbedret - enters: / - handled_by: lekeplasser - id: anleggsfeil - lands_in: anleggsfeil - max_fields: 2 - max_steps: 2 - stages: - - open - - tatt_tak_i - - utbedret - success: - - utbedret - via: Meld fra om noe som bør fikses - wants: at det blir fikset før noen skader seg - who: en som ser at noe på lekeplassen eller stien er ødelagt -- done_when: - - tatt_med - - ikke_tatt_med - enters: / - handled_by: horingsinstans - id: horingsinnspill - lands_in: innspill - max_fields: 3 - max_steps: 1 - stages: - - open - - tatt_med - - ikke_tatt_med - success: - - tatt_med - via: Få din mening med i høringssvaret - wants: at velet tar det med i sitt svar - who: en beboer som har en mening om en sak kommunen har på høring -- done_when: - - satt_opp - - takket_nei - enters: / - handled_by: arrangementer - id: hjelpe-til - lands_in: frivillige - max_fields: 3 - max_steps: 2 - stages: - - open - - kontaktet - - satt_opp - - takket_nei - success: - - satt_opp - via: Bli med og gjør en innsats - wants: å bli satt opp på noe som passer dem - who: en som vil hjelpe til på et arrangement eller en dugnad -- done_when: - - plassert - - avslatt - enters: / - handled_by: styret - id: komite - lands_in: komitesoknader - max_fields: 3 - max_steps: 2 - stages: - - open - - plassert - - avslatt - success: - - plassert - via: Bli med og gjør en innsats - wants: en plass i den komiteen som driver med det de bryr seg om - who: en som vil sitte i en komité -- done_when: - - ordnet - - ikke_lost - enters: / - handled_by: nabohjelp - id: trenger-hjelp - lands_in: hjelpebehov - max_fields: 4 - max_steps: 2 - stages: - - open - - formidlet - - ordnet - - ikke_lost - success: - - ordnet - via: Få hjelp av naboer, eller gi en hånd selv - wants: at en nabo stiller opp - who: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss -- done_when: - - registrert - - trukket - enters: / - handled_by: nabohjelp - id: kan-hjelpe - lands_in: hjelpere - max_fields: 4 - max_steps: 2 - stages: - - open - - registrert - - trukket - success: - - registrert - via: Få hjelp av naboer, eller gi en hånd selv - wants: å bli spurt når det passer - who: en nabo som kan stille opp når noen trenger det -- done_when: - - lagt_ut - - tatt_ned - enters: / - handled_by: styret - id: dele-utstyr - lands_in: oppslag - max_fields: 4 - max_steps: 2 - stages: - - open - - lagt_ut - - tatt_ned - success: - - lagt_ut - via: Få hjelp av naboer, eller gi en hånd selv - wants: et oppslag som naboene ser - who: en nabo som har noe å låne ut, eller trenger å låne noe -- done_when: - - utbetalt - - avvist - enters: /komiteer/utlegg - enters_as: komiteer - handled_by: kasserer - id: utlegg - lands_in: utlegg - max_fields: 3 - max_steps: 1 - stages: - - open - - godkjent - - utbetalt - - avvist - success: - - utbetalt - via: Få pengene tilbake - wants: pengene tilbake - who: en i en komité som har lagt ut for noe -personas: -- id: nyinnflyttet - need: bli-medlem - text: Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det? -- id: glemte-a-betale - need: bli-medlem - text: Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem? -- id: ny-epost - need: endre-medlemskap - text: Vi har byttet e-postadresse og får ikke lenger noe fra dere. -- id: flytter - need: endre-medlemskap - text: Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista. -- id: skolevei - need: trafikkfare - text: Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går. -- id: busslomme - need: trafikkfare - text: Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy. -- id: huske - need: anleggsfeil - text: Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt. -- id: bru - need: anleggsfeil - text: Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom. -- id: blokker - need: horingsinnspill - text: Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra? -- id: togtider - need: horingsinnspill - text: Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det. -- id: vafler - need: hjelpe-til - text: Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk. -- id: motorsag - need: hjelpe-til - text: Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad. -- id: pendler - need: komite - text: Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det. -- id: planlegger - need: komite - text: Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring. -- id: tilhenger - need: dele-utstyr - text: Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp. -- id: stige - need: dele-utstyr - text: Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har? -- id: snomaking - need: trenger-hjelp - text: Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør? -- id: nyoperert - need: trenger-hjelp - text: Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg? -- id: hjemmekontor - need: kan-hjelpe - text: Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv. -- id: pensjonert-elektriker - need: kan-hjelpe - text: Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting. -- id: kvittering - need: utlegg - text: Jeg kjøpte pølser og kakao til skøytedagen for 1 840 kroner, her er kvitteringa, vil ha det igjen. diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/arrangementer/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/arrangementer/_section.yaml deleted file mode 100644 index 94afa0f..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/arrangementer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: arrangementer diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/arrangementer/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/arrangementer/index.yaml deleted file mode 100644 index 13a990e..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/arrangementer/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -alternatives: -- action: /arrangementer - consequence: - - Lagre - description: Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem. - features: - - description: '' - name: '' - resource: - requires_group: arrangementer - source: - bucket: frivillige - kind: kv - transitions: - - from: kontaktet - label: Sett opp - to: satt_opp - - from: kontaktet - label: Takket nei - to: takket_nei - - from: open - label: Merk som kontaktet - to: kontaktet - - from: open - label: Takket nei - to: takket_nei - name: Frivillige til arrangementer og dugnad -- action: /arrangementer - consequence: - - Inviter - description: De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: arrangementer - name: Inviter noen inn i Arrangementer -- action: /arrangementer - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: arrangementer - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer. -name: Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/bidra/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/bidra/index.yaml deleted file mode 100644 index 7d24674..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/bidra/index.yaml +++ /dev/null @@ -1,82 +0,0 @@ -alternatives: -- action: /received/hjelpe-til - consequence: - - Meld meg på - description: 17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer. - encouragements: - - Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg. - features: - - description: Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit. - icon: lucide:clipboard-list - name: Hva skjer videre - - description: Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem leser dette - - description: Fortell kort hva du kan hjelpe til med. - icon: lucide:hand-helping - name: Meld deg som hjelper - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: Telefon - name: telefon - placeholder: 912 34 567 - type: tel - - label: Hva kan du hjelpe til med? - multiple: true - name: hva - options: - - 17. mai - - Juletregranstenning - - Skøytedag - - Dugnad på elvestien - - Det som trengs - type: select - name: Bli med på dugnad eller arrangement - record_as: frivillige -- action: /received/komite - consequence: - - Meld interesse - description: Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i. - encouragements: - - Det tar bare et minutt, og noen fra styret svarer deg. - features: - - description: Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå. - icon: lucide:clipboard-list - name: Hva skjer videre - - description: Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:handshake - name: Hvem leser dette - - description: Skriv hvilken komité du er interessert i. - icon: lucide:users - name: Meld deg til en komité - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: epost - placeholder: kari@eksempel.no - type: email - - label: Hvilken komité? - multiple: true - name: komite - options: - - Arrangementer - - Elvesti - - Høringsinstans - - Leke- og møteplasser - - Miljøgate - - Pendlerforhold - - Trafikkforhold - type: select - name: Sitt i en komité som betyr noe for deg - record_as: komitesoknader -description: Vil du stille opp for nabolaget? Her melder du deg til dugnad og arrangementer, eller til en av komiteene. -name: Vil du hjelpe til i nabolaget? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/decide/bli-medlem.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/decide/bli-medlem.yaml deleted file mode 100644 index d7dad96..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/decide/bli-medlem.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: '' - name: Utmeldt - self_transition: - bucket: husstander - label: Utmeldt - to: utmeldt -description: '' -name: What would you like to do? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/decide/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/decide/dele-utstyr.yaml deleted file mode 100644 index dfece00..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/decide/dele-utstyr.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Oppslaget fjernes fra siden, så ingen flere spør om å låne det. - name: Meld at utstyret er tatt ned - self_transition: - bucket: oppslag - label: Ta ned oppslaget - to: tatt_ned -description: Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån. -name: Skal oppslaget om utstyret fortsatt stå ute? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/decide/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/decide/kan-hjelpe.yaml deleted file mode 100644 index 2598b32..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/decide/kan-hjelpe.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre. - name: Ta en pause fra nabohjelpen - self_transition: - bucket: hjelpere - label: Trekk meg - to: trukket -description: Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå. -name: Vil du fortsatt kunne bli spurt om å hjelpe en nabo? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/decide/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/decide/trenger-hjelp.yaml deleted file mode 100644 index 7aad76e..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/decide/trenger-hjelp.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: Da vet vi at naboen har fått hjelpen sin, og saken lukkes. - name: Meld fra at hjelpen er gitt - self_transition: - bucket: hjelpebehov - label: Merk som ordnet - to: ordnet -description: Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet. -name: Har naboen fått hjelpen de trengte? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/horingsinstans/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/horingsinstans/_section.yaml deleted file mode 100644 index ad97e31..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/horingsinstans/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: horingsinstans diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/horingsinstans/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/horingsinstans/index.yaml deleted file mode 100644 index b5c4abb..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/horingsinstans/index.yaml +++ /dev/null @@ -1,59 +0,0 @@ -alternatives: -- action: /horingsinstans - consequence: - - Send svar - description: Her ligger innspill fra beboere til saker kommunen har på høring. - features: - - description: '' - name: '' - resource: - requires_group: horingsinstans - source: - bucket: innspill - kind: kv - transitions: - - from: open - label: Tatt med i svaret - to: tatt_med - - from: open - label: Ikke tatt med - to: ikke_tatt_med - name: Innspill til høringssvar -- action: /horingsinstans - consequence: - - Inviter - description: De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: horingsinstans - name: Inviter noen inn i Høringsinstans -- action: /horingsinstans - consequence: - - Send svar - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: horingsinstans - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her samler du innspillene og ser hva som er tatt med i velets høringssvar. -name: Hva sier vi i høringssvaret? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/index.yaml deleted file mode 100644 index d92dbed..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/index.yaml +++ /dev/null @@ -1,94 +0,0 @@ -alternatives: -- description: To ting først. Resten står lenger ned på siden. - features: - - description: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. - icon: lucide:users - name: Et vel som taler for Tomter, og et medlemskap du styrer selv - - description: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet. - icon: lucide:handshake - name: En nabo som stiller opp når du trenger det - name: Dette gjør velet -- description: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. - features: - - description: 'Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil)' - icon: lucide:list - name: Alt som er meldt ødelagt - - description: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) - icon: lucide:list - name: Oppslagstavla - - description: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger) - icon: lucide:list - name: Alle trafikkmeldinger - name: Se deg rundt først -- action: /medlem - consequence: - - Til medlemskap - description: Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding. - features: - - description: '' - icon: lucide:house - name: Deg som bor i Tomter - name: Bli medlem eller endre opplysningene dine -- action: /melde-fra - consequence: - - Meld fra - description: Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed. - features: - - description: '' - icon: lucide:alert-triangle - name: Deg som har sett noe som bør fikses - name: Meld fra om noe som bør fikses -- action: /bidra - consequence: - - Bli med - description: Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse. - features: - - description: '' - icon: lucide:hand-helping - name: Deg som vil gjøre en innsats - name: Bli med og gjør en innsats -- action: /naboer - consequence: - - Til nabohjelp - description: Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere. - features: - - description: '' - icon: lucide:heart-handshake - name: Deg som trenger hjelp eller kan gi en hånd - name: Få hjelp av naboer, eller gi en hånd selv -- action: /received/horingsinnspill - consequence: - - Send innspill - description: Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar. - encouragements: - - Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen. - features: - - description: Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen. - icon: lucide:route - name: Hva skjer videre - - description: Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no. - icon: lucide:users - name: Hvem leser dette - - description: Fortell hvilken sak det gjelder og hva du mener. - icon: lucide:megaphone - name: Send et høringsinnspill - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: Hvilken sak gjelder det? - name: sak - placeholder: Reguleringsplan for Tomterveien - type: text - - label: Hva mener du? - name: innspill - placeholder: Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen. - type: textarea - name: Få din mening med i høringssvaret - record_as: innspill -description: Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står. -name: Hva gjør Tomter Vel, og hva kan du få her? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/kasserer/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/kasserer/_section.yaml deleted file mode 100644 index 2f8af2f..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/kasserer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: kasserer diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/kasserer/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/kasserer/index.yaml deleted file mode 100644 index 8dda085..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/kasserer/index.yaml +++ /dev/null @@ -1,102 +0,0 @@ -alternatives: -- action: /kasserer - consequence: - - Lagre - description: Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: husstander - kind: kv - transitions: - - from: open - label: Registrer betaling - to: betalt - - from: open - label: Meld ut - to: utmeldt - name: Nye medlemmer som venter på registrering -- action: /kasserer - consequence: - - Lagre - description: Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: medlemsendringer - kind: kv - transitions: - - from: open - label: Registrer endring - to: oppdatert - name: Endringer som venter på å bli registrert -- action: /kasserer - consequence: - - Lagre - description: Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: utlegg - kind: kv - transitions: - - from: godkjent - label: Merk som utbetalt - to: utbetalt - - from: godkjent - label: Avvis likevel - to: avvist - - from: open - label: Godkjenn utlegg - to: godkjent - - from: open - label: Avvis utlegg - to: avvist - name: Utlegg som venter på deg -- action: /kasserer - consequence: - - Inviter - description: De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: kasserer - name: Inviter noen inn i kassereren -- action: /kasserer - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: kasserer - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer. -name: Hva venter på meg som kasserer akkurat nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/komiteer/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/komiteer/_section.yaml deleted file mode 100644 index 57e3295..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/komiteer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: komiteer diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/komiteer/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/komiteer/index.yaml deleted file mode 100644 index ccf6e5e..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/komiteer/index.yaml +++ /dev/null @@ -1,44 +0,0 @@ -alternatives: -- action: /komiteer/utlegg - consequence: - - Send utlegg - description: Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake. - name: Få tilbake det du har lagt ut -- action: /komiteer - consequence: - - Inviter - description: De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: komiteer - name: Inviter noen inn i komiteene -- action: /komiteer - consequence: - - Confirm - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: komiteer - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp. -name: Hva står ubehandlet i komiteen din nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/komiteer/utlegg-sent.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/komiteer/utlegg-sent.yaml deleted file mode 100644 index e347ad3..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/komiteer/utlegg-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga. - name: Pengene kommer på konto -- action: /komiteer - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Utlegget er sendt til kasserer. Du får beskjed når det er sjekket. -name: Hva skjer med utlegget mitt nå? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/komiteer/utlegg.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/komiteer/utlegg.yaml deleted file mode 100644 index 5d94ad3..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/komiteer/utlegg.yaml +++ /dev/null @@ -1,38 +0,0 @@ -alternatives: -- action: /komiteer/utlegg-sent - consequence: - - Send inn - description: Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten. - encouragements: - - Legg ved bilag om du har det, så går det raskere. - features: - - description: Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor. - icon: lucide:wallet - name: Fra krav til utbetaling - - description: Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster. - icon: lucide:coins - name: Kasserer ser dette - - description: Ha kvittering eller bilag klart før du fyller ut. - icon: lucide:receipt - name: Krav om refusjon - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: Beløp - name: belop - placeholder: 450 kr - type: text - - label: Hva gjaldt det - name: hva - placeholder: Kaffe og kjeks til dugnaden - type: textarea - name: Få pengene tilbake - record_as: utlegg -description: Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake. -followup: false -name: Har du lagt ut penger for komiteen og vil ha dem tilbake? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/lekeplasser/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/lekeplasser/_section.yaml deleted file mode 100644 index 1652221..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/lekeplasser/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: lekeplasser diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/lekeplasser/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/lekeplasser/index.yaml deleted file mode 100644 index 215a9bc..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/lekeplasser/index.yaml +++ /dev/null @@ -1,59 +0,0 @@ -alternatives: -- action: /lekeplasser - consequence: - - Lagre - description: Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses. - features: - - description: '' - name: '' - resource: - requires_group: lekeplasser - source: - bucket: anleggsfeil - kind: kv - transitions: - - from: open - label: Ta tak i saken - to: tatt_tak_i - - from: tatt_tak_i - label: Merk som utbedret - to: utbedret - name: Det som er meldt inn av skader -- action: /lekeplasser - consequence: - - Inviter - description: De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: lekeplasser - name: Inviter noen inn i Leke- og møteplasser -- action: /lekeplasser - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: lekeplasser - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset. -name: Hva må fikses på lekeplassene og stien nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/medlem/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/medlem/index.yaml deleted file mode 100644 index ad6fa0a..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/medlem/index.yaml +++ /dev/null @@ -1,72 +0,0 @@ -alternatives: -- action: /received/bli-medlem - consequence: - - Bli medlem - description: Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet. - encouragements: - - Kasserer sender deg kontingenten på e-post rett etterpå. - features: - - description: Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem. - icon: lucide:coins - name: Etter innmelding - - description: Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden. - icon: lucide:user - name: Hvem svarer deg - - description: Ha adressen i Tomter og en e-post du bruker klar. - icon: lucide:user-plus - name: Meld deg inn - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: Adresse - name: adresse - placeholder: Tomterveien 12 - type: text - - label: Email - name: email - type: email - - label: Telefon - name: telefon - optional: true - placeholder: 123 45 678 - type: tel - name: Bli medlem av Tomter Vel - record_as: husstander -- action: /received/endre-medlemskap - consequence: - - Send endring - description: Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger. - encouragements: - - Det tar bare et par minutter, og kasserer ordner resten. - features: - - description: Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om. - icon: lucide:refresh-cw - name: Etter du sender inn - - description: Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden. - icon: lucide:user - name: Hvem svarer deg - - description: Skriv navnet ditt og hva som er nytt. - icon: lucide:pencil - name: Endre medlemskap - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: Adresse - name: adresse - placeholder: Ny adresse i Tomter - type: text - - label: Hva vil du endre? - name: hva_er_nytt - placeholder: Ny e-post, ny adresse, eller ønske om utmelding - type: textarea - name: Oppdater eller avslutt medlemskapet - record_as: medlemsendringer -description: Bli medlem av Tomter Vel, eller oppdater opplysningene dine hvis du allerede er medlem. -name: Vil du bli medlem, eller endre medlemskapet ditt? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/melde-fra/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/melde-fra/index.yaml deleted file mode 100644 index 560dd8f..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/melde-fra/index.yaml +++ /dev/null @@ -1,69 +0,0 @@ -alternatives: -- action: /received/trafikkfare - consequence: - - Send inn - description: Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre. - encouragements: - - Bare noen linjer om hva og hvor er nok til at vi kan følge opp. - features: - - description: Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist. - icon: lucide:route - name: Hva skjer videre - - description: Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no. - icon: lucide:car - name: Hvem leser dette - - description: Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer. - icon: lucide:alert-triangle - name: Meld trafikkfare - requirements: - - label: Hvor var det - name: hvor - placeholder: Krysset Tomterveien / Elvestien - type: text - - label: Hva så du - name: hva - placeholder: Dårlig sikt i krysset, biler kjører fort - type: textarea - - label: E-post (valgfritt) - name: epost - optional: true - placeholder: ola.nordmann@epost.no - type: email - name: Meld fra om en trafikkfare - record_as: trafikkmeldinger -- action: /received/anleggsfeil - consequence: - - Send inn - description: Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det. - encouragements: - - Det holder med noen ord om hva du så og hvor. - features: - - description: Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet. - icon: lucide:wrench - name: Hva skjer videre - - description: Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no. - icon: lucide:hammer - name: Hvem leser dette - - description: Fortell hva som er ødelagt og omtrent hvor det er. - icon: lucide:construction - name: Meld anleggsfeil - requirements: - - label: Hvor er det - name: hvor - options: - - Lekeplassen - - Elvestien - - Skøytebanen - - Et annet sted - type: select - - label: Hva er ødelagt - name: hva - placeholder: Løs planke på gjerdet ved husken - type: textarea - name: Meld fra om noe ødelagt - record_as: anleggsfeil -description: Har du sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien? Her sier du fra til velet. -name: Hva vil du melde fra om? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/naboer/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/naboer/index.yaml deleted file mode 100644 index d8efcd4..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/naboer/index.yaml +++ /dev/null @@ -1,125 +0,0 @@ -alternatives: -- action: /received/trenger-hjelp - consequence: - - Be om hjelp - description: Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp. - encouragements: - - Vi finner en nabo som kan stille opp så fort som mulig. - features: - - description: Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed. - icon: lucide:hand-helping - name: Fra melding til hjelp - - description: Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem ser dette - - description: Skriv kort hva du trenger hjelp til. - icon: lucide:heart-handshake - name: Be om en hånd - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: email - placeholder: kari@eksempel.no - type: email - - label: Adresse - name: adresse - placeholder: Tomterveien 12 - type: text - - label: Hva trenger du hjelp til - name: hva - placeholder: Måke snø på trappa, handle inn litt mat - type: textarea - - label: Telefon - name: telefon - optional: true - placeholder: 123 45 678 - type: tel - name: Få en nabo til å stille opp - record_as: hjelpebehov -- action: /received/kan-hjelpe - consequence: - - Meld deg - description: Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer. - encouragements: - - Du blir bare kontaktet når noe passer for deg. - features: - - description: Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra. - icon: lucide:user-check - name: Fra påmelding til spørsmål - - description: Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no. - icon: lucide:heart-handshake - name: Hvem ser dette - - description: Fortell kort hva du kan bidra med. - icon: lucide:hand-helping - name: Meld deg som hjelper - requirements: - - label: Navn - name: navn - placeholder: Kari Nordmann - type: text - - label: E-post - name: email - placeholder: kari@eksempel.no - type: email - - label: Telefon - name: telefon - placeholder: 123 45 678 - type: tel - - label: Hva kan du hjelpe med - multiple: true - name: kan - options: - - Snømåking - - Handling - - Kjøring - - Småfiks i huset - - En prat og litt selskap - - Det som trengs - type: select - name: Bli spurt når en nabo trenger en hånd - record_as: hjelpere -- action: /received/dele-utstyr - consequence: - - Legg ut oppslag - description: Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det. - encouragements: - - Vi legger det ut så naboene kan se det. - features: - - description: Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen. - icon: lucide:clipboard-list - name: Fra oppslag til avtale - - description: Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden. - icon: lucide:users - name: Hvem ser dette - - description: Skriv kort hva det gjelder, så folk skjønner det med en gang. - icon: lucide:package - name: Lån eller utlån - requirements: - - label: Navn - name: navn - placeholder: Ola Nordmann - type: text - - label: E-post - name: email - placeholder: ola@eksempel.no - type: email - - label: Har du eller trenger du - name: har_eller_trenger - options: - - Jeg har noe å låne ut - - Jeg trenger å låne noe - type: select - - label: Hva gjelder det - name: hva - placeholder: Hengerfeste til bil, tilhenger, stige - type: textarea - name: Lån ut eller lån av naboen - record_as: oppslag -description: Godt naboskap gjør hverdagen lettere. Trenger du en hånd, kan gi en, eller har noe å låne bort? -name: Trenger du en hånd, eller kan du gi en? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/nabohjelp/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/nabohjelp/_section.yaml deleted file mode 100644 index 5b3a2ad..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/nabohjelp/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: nabohjelp diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/nabohjelp/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/nabohjelp/index.yaml deleted file mode 100644 index ab4db6b..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/nabohjelp/index.yaml +++ /dev/null @@ -1,85 +0,0 @@ -alternatives: -- action: /nabohjelp - consequence: - - Lagre - description: Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: hjelpebehov - kind: kv - transitions: - - from: formidlet - label: Meld ordnet - to: ordnet - - from: formidlet - label: Meld ikke løst - to: ikke_lost - - from: open - label: Koble til nabo - to: formidlet - - from: open - label: Meld ikke løst - to: ikke_lost - name: Naboer som trenger en hånd -- action: /nabohjelp - consequence: - - Lagre - description: Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: hjelpere - kind: kv - transitions: - - from: open - label: Registrer som hjelper - to: registrert - - from: open - label: Meld trukket - to: trukket - name: Naboer som kan stille opp -- action: /nabohjelp - consequence: - - Inviter - description: De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: nabohjelp - name: Inviter noen inn i nabohjelpen -- action: /nabohjelp - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: nabohjelp - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her kobler du naboer som trenger hjelp med dem som kan stille opp. -name: Hvem trenger hjelp, og hvem kan stille opp? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/anleggsfeil.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/anleggsfeil.yaml deleted file mode 100644 index 09d4976..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/anleggsfeil.yaml +++ /dev/null @@ -1,15 +0,0 @@ -alternatives: -- description: Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg. - name: Komiteen tar tak i det -- action: /status/anleggsfeil - consequence: - - Se meldte feil - description: Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet. - name: Se andre meldte feil -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt. -name: Hva skjer med meldingen min nå? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/bli-medlem.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/bli-medlem.yaml deleted file mode 100644 index 533f8a6..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/bli-medlem.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten. - name: Kasserer sender deg betalingsinfo -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert. -name: Hva skjer etter at jeg har meldt meg inn? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/dele-utstyr.yaml deleted file mode 100644 index 761313b..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/dele-utstyr.yaml +++ /dev/null @@ -1,15 +0,0 @@ -alternatives: -- description: En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne. - name: Styret legger det ut for deg -- action: /status/oppslag - consequence: - - Se hva naboer deler - description: Se hva andre i Tomter har lagt ut til utlån akkurat nå. - name: Se alt naboene deler -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan. -name: Hva skjer med det jeg har lagt ut? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/endre-medlemskap.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/endre-medlemskap.yaml deleted file mode 100644 index c58d676..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/endre-medlemskap.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg. - name: Kasserer retter opp opplysningene -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut. -name: Hva skjer nå med det jeg meldte inn? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/hjelpe-til.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/hjelpe-til.yaml deleted file mode 100644 index 3c61af4..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/hjelpe-til.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden. - name: Komiteen tar kontakt -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg. -name: Hva skjer nå som jeg har meldt meg? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/horingsinnspill.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/horingsinnspill.yaml deleted file mode 100644 index bf87c92..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/horingsinnspill.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med. - name: Innspillet ditt inn i vurderingen -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Innspillet ditt er sendt til høringsinstansen i velet. -name: Hva skjer med det jeg har sagt om saken? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/kan-hjelpe.yaml deleted file mode 100644 index 0ac67b5..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/kan-hjelpe.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte. - name: Du blir kontaktet ved behov -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe. -name: Hva skjer nå som jeg har registrert meg? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/komite.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/komite.yaml deleted file mode 100644 index a36dfda..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/komite.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer. - name: Vi finner riktig komité til deg -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg. -name: Hva skjer nå som jeg har meldt interesse for en komité? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/trafikkfare.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/trafikkfare.yaml deleted file mode 100644 index 82da494..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/trafikkfare.yaml +++ /dev/null @@ -1,15 +0,0 @@ -alternatives: -- description: Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs. - name: Trafikkomiteen tar den videre -- action: /status/trafikkmeldinger - consequence: - - Se andre trafikkfarer - description: Se hva andre har meldt inn, og status på sakene. - name: Andre meldte trafikkfarer -- action: / - consequence: - - Tilbake til forsiden - description: '' - name: Tilbake til forsiden -description: Meldingen din om trafikkfaren er sendt til komiteen for trafikk. -name: Hva skjer med meldingen min nå? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/trenger-hjelp.yaml deleted file mode 100644 index beec6e5..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/received/trenger-hjelp.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer. - name: Vi finner en nabo til deg -- action: / - consequence: - - Til forsiden - description: '' - name: Til forsiden -description: Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp. -name: Hva skjer nå som jeg har bedt om hjelp? diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/status/anleggsfeil/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/status/anleggsfeil/index.yaml deleted file mode 100644 index 805a464..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/status/anleggsfeil/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- description: Alle meldinger er åpne for alle å se. - features: - - description: '' - name: '' - resource: - jq: '.[] | .responses |= {hva: .hva, hvor: .hvor}' - public: true - source: - bucket: anleggsfeil - kind: kv - name: Status på meldte anleggsfeil -- action: / - consequence: - - Tilbake til meldinger - description: '' - name: Tilbake til meldinger -description: Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet. -name: Hva skjer med det jeg har meldt fra om? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/status/oppslag/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/status/oppslag/index.yaml deleted file mode 100644 index cf172af..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/status/oppslag/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- description: Åpen liste – navn og detaljer vises ikke. - features: - - description: '' - name: '' - resource: - jq: '.[] | .responses |= {har_eller_trenger: .har_eller_trenger, hva: .hva}' - public: true - source: - bucket: oppslag - kind: kv - name: Oversikt over det som er meldt inn -- action: / - consequence: - - Tilbake - description: '' - name: Tilbake -description: Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet. -name: Hva er sendt inn, og hvor langt har det kommet? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/status/trafikkmeldinger/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/status/trafikkmeldinger/index.yaml deleted file mode 100644 index 7444f44..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/status/trafikkmeldinger/index.yaml +++ /dev/null @@ -1,22 +0,0 @@ -alternatives: -- description: Alle meldinger som er sendt inn, og hvor de står nå. - features: - - description: '' - name: '' - resource: - jq: '.[] | .responses |= {hva: .hva, hvor: .hvor}' - public: true - source: - bucket: trafikkmeldinger - kind: kv - name: Trafikkmeldinger og status -- action: / - consequence: - - Tilbake - description: '' - name: Tilbake -description: Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet. -name: Er det meldt fra om noe farlig i trafikken der jeg bor? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/styret/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/styret/_section.yaml deleted file mode 100644 index 5a34160..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/styret/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: styret diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/styret/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/styret/index.yaml deleted file mode 100644 index 1a27364..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/styret/index.yaml +++ /dev/null @@ -1,219 +0,0 @@ -alternatives: -- action: /styret - consequence: - - Lagre - description: Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: innspill - kind: kv - transitions: [] - name: Høringsinnspill fra beboerne -- action: /styret - consequence: - - Lagre - description: Her ligger alle som har meldt seg til en komité og venter på en plass. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: komitesoknader - kind: kv - transitions: - - from: open - label: Sett i komité - to: plassert - - from: open - label: Avslå søknaden - to: avslatt - name: Søknader til komiteene -- action: /styret - consequence: - - Lagre - description: Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: oppslag - kind: kv - transitions: - - from: open - label: Legg ut oppslaget - to: lagt_ut - - from: open - label: Ta ned oppslaget - to: tatt_ned - name: Utstyr til utlån blant naboer -- action: /styret - consequence: - - Lagre - description: Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: trafikkmeldinger - kind: kv - transitions: [] - name: Meldinger om trafikkfarer -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: arrangementer - name: Inviter noen inn i Arrangementer -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: horingsinstans - name: Inviter noen inn i Høringsinstans -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: kasserer - name: Inviter noen inn i kassereren -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: komiteer - name: Inviter noen inn i komiteene -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: lekeplasser - name: Inviter noen inn i Leke- og møteplasser -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: nabohjelp - name: Inviter noen inn i nabohjelpen -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: styret - name: Inviter noen inn i styret -- action: /styret - consequence: - - Inviter - description: De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: trafikk - name: Inviter noen inn i Trafikkforhold -- action: /styret - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: styret - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: 'Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.' -name: Hva venter på styret akkurat nå? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/trafikk/_section.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/trafikk/_section.yaml deleted file mode 100644 index dbe5246..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/trafikk/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: trafikk diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/trafikk/index.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/trafikk/index.yaml deleted file mode 100644 index d14490e..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/questions/trafikk/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -alternatives: -- action: /trafikk - consequence: - - Lagre - description: Farlige steder i trafikken som naboer har meldt inn. - features: - - description: '' - name: '' - resource: - requires_group: trafikk - source: - bucket: trafikkmeldinger - kind: kv - transitions: - - from: open - label: Ta opp med kommunen - to: tatt_opp - - from: open - label: Avvis meldingen - to: avvist - - from: tatt_opp - label: Meld ordnet - to: ordnet - - from: tatt_opp - label: Avvis meldingen - to: avvist - name: Farlige steder i trafikken -- action: /trafikk - consequence: - - Inviter - description: De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - features: - - description: '' - name: Hvem - requirements: - - label: Navn - name: name - - label: E-post - name: email - type: email - invite: - group: trafikk - name: Inviter noen inn i Trafikkforhold -- action: /trafikk - consequence: - - Lagre - description: Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne. - features: - - description: '' - name: '' - resource: - requires_group: trafikk - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Er inne - to: done - name: Sendte invitasjoner -description: Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier. -name: Hvilke trafikkfarer må følges opp? -responsible: - contact: post@tomtervel.no - name: Styret i Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/site.yaml b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/site.yaml deleted file mode 100644 index c2ac781..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/site.yaml +++ /dev/null @@ -1,5 +0,0 @@ -lang: no -mail: - from: Tomter Vel - reply_to: post@tomtervel.no -title: Tomter Vel diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/words.json b/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/words.json deleted file mode 100644 index 44c0963..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/site/words.json +++ /dev/null @@ -1,953 +0,0 @@ -{ - "aggregates.yaml": { - "hjelpebehov": { - "formidlet": { - "body": "Vi har funnet en nabo som kan hjelpe. De tar kontakt med deg direkte.\n\nDet du kan gjøre nå: {site}/decide/trenger-hjelp?chain={chain}&email={email}", - "subject": "En nabo er koblet på" - }, - "open": { - "body": "Vi har mottatt det du trenger hjelp til, og ser etter en nabo som kan stille opp. Du hører fra oss så snart vi har funnet noen.", - "subject": "Vi leter etter en nabo til deg" - }, - "ordnet": { - "body": "Godt å høre at det ordnet seg. Takk for at du sa fra, og lykke til videre.", - "subject": "Bra det løste seg" - } - }, - "husstander": { - "betalt": { - "body": "Kontingenten er registrert betalt. Du er nå medlem av Tomter Vel - velkommen med!", - "subject": "Medlemskapet er i orden" - }, - "open": { - "body": "Takk for at du vil bli medlem. Du får en betalingsoppfordring med kontonummer og beløp så snart kasserer har sett på saken.\n\nDet du kan gjøre nå: {site}/decide/bli-medlem?chain={chain}&email={email}", - "subject": "Nesten i mål som medlem" - } - }, - "oppslag": { - "lagt_ut": { - "body": "Oppslaget ditt er lagt ut, og naboene kan nå se det.", - "subject": "Oppslaget er synlig for naboene" - } - } - }, - "questions/arrangementer/index.yaml": { - "buckets": { - "frivillige": { - "description": "Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem.", - "heading": "Frivillige til arrangementer og dugnad", - "moves": { - "kontaktet->satt_opp": "Sett opp", - "kontaktet->takket_nei": "Takket nei", - "open->kontaktet": "Merk som kontaktet", - "open->takket_nei": "Takket nei" - } - } - }, - "confirm": "Lagre", - "description": "Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "arrangementer": { - "button": "Inviter", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Arrangementer", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp?" - }, - "questions/bidra/index.yaml": { - "description": "Vil du stille opp for nabolaget? Her melder du deg til dugnad og arrangementer, eller til en av komiteene.", - "needs": { - "hjelpe-til": { - "button": "Meld meg på", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.", - "encouragement": "Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg.", - "form_description": "Fortell kort hva du kan hjelpe til med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli med på dugnad eller arrangement", - "hints": { - "hva": "", - "navn": "Kari Nordmann", - "telefon": "912 34 567" - }, - "icon": "hand-helping", - "labels": { - "hva": "Hva kan du hjelpe til med?", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit.", - "road_icon": "lucide:clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - }, - "komite": { - "button": "Meld interesse", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i.", - "encouragement": "Det tar bare et minutt, og noen fra styret svarer deg.", - "form_description": "Skriv hvilken komité du er interessert i.", - "form_title": "Meld deg til en komité", - "heading": "Sitt i en komité som betyr noe for deg", - "hints": { - "epost": "kari@eksempel.no", - "komite": "", - "navn": "Kari Nordmann" - }, - "icon": "users", - "labels": { - "epost": "E-post", - "komite": "Hvilken komité?", - "navn": "Navn" - }, - "road_description": "Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå.", - "road_icon": "lucide:clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:handshake", - "who_title": "Hvem leser dette" - } - }, - "question": "Vil du hjelpe til i nabolaget?" - }, - "questions/decide/bli-medlem.yaml": { - "description": "", - "moves": { - "utmeldt": { - "button": "Utmeldt", - "description": "", - "heading": "Utmeldt" - } - }, - "question": "What would you like to do?" - }, - "questions/decide/dele-utstyr.yaml": { - "description": "Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån.", - "moves": { - "tatt_ned": { - "button": "Ta ned oppslaget", - "description": "Oppslaget fjernes fra siden, så ingen flere spør om å låne det.", - "heading": "Meld at utstyret er tatt ned" - } - }, - "question": "Skal oppslaget om utstyret fortsatt stå ute?" - }, - "questions/decide/kan-hjelpe.yaml": { - "description": "Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå.", - "moves": { - "trukket": { - "button": "Trekk meg", - "description": "Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre.", - "heading": "Ta en pause fra nabohjelpen" - } - }, - "question": "Vil du fortsatt kunne bli spurt om å hjelpe en nabo?" - }, - "questions/decide/trenger-hjelp.yaml": { - "description": "Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet.", - "moves": { - "ordnet": { - "button": "Merk som ordnet", - "description": "Da vet vi at naboen har fått hjelpen sin, og saken lukkes.", - "heading": "Meld fra at hjelpen er gitt" - } - }, - "question": "Har naboen fått hjelpen de trengte?" - }, - "questions/horingsinstans/index.yaml": { - "buckets": { - "innspill": { - "description": "Her ligger innspill fra beboere til saker kommunen har på høring.", - "heading": "Innspill til høringssvar", - "moves": { - "open->ikke_tatt_med": "Ikke tatt med", - "open->tatt_med": "Tatt med i svaret" - } - } - }, - "confirm": "Send svar", - "description": "Her samler du innspillene og ser hva som er tatt med i velets høringssvar.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "horingsinstans": { - "button": "Inviter", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Høringsinstans", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva sier vi i høringssvaret?" - }, - "questions/index.yaml": { - "description": "Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står.", - "doors": { - "bidra": { - "button": "Bli med", - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.", - "for_whom": "Deg som vil gjøre en innsats", - "heading": "Bli med og gjør en innsats", - "icon": "hand-helping" - }, - "medlem": { - "button": "Til medlemskap", - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.", - "for_whom": "Deg som bor i Tomter", - "heading": "Bli medlem eller endre opplysningene dine", - "icon": "house" - }, - "melde-fra": { - "button": "Meld fra", - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed.", - "for_whom": "Deg som har sett noe som bør fikses", - "heading": "Meld fra om noe som bør fikses", - "icon": "alert-triangle" - }, - "naboer": { - "button": "Til nabohjelp", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.", - "for_whom": "Deg som trenger hjelp eller kan gi en hånd", - "heading": "Få hjelp av naboer, eller gi en hånd selv", - "icon": "heart-handshake" - } - }, - "needs": { - "horingsinnspill": { - "button": "Send innspill", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "encouragement": "Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen.", - "form_description": "Fortell hvilken sak det gjelder og hva du mener.", - "form_title": "Send et høringsinnspill", - "heading": "Få din mening med i høringssvaret", - "hints": { - "innspill": "Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen.", - "navn": "Kari Nordmann", - "sak": "Reguleringsplan for Tomterveien" - }, - "icon": "megaphone", - "labels": { - "innspill": "Hva mener du?", - "navn": "Navn", - "sak": "Hvilken sak gjelder det?" - }, - "road_description": "Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - } - }, - "opener": { - "description": "To ting først. Resten står lenger ned på siden.", - "features": { - "medlem": { - "description": "Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil.", - "heading": "Et vel som taler for Tomter, og et medlemskap du styrer selv", - "icon": "users" - }, - "nabo": { - "description": "Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.", - "heading": "En nabo som stiller opp når du trenger det", - "icon": "handshake" - } - }, - "heading": "Dette gjør velet" - }, - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "shopping": { - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.", - "heading": "Se deg rundt først", - "items": { - "status-anleggsfeil": { - "description": "Lekeplassen og stien: det som er meldt, og det som er fikset.", - "heading": "Alt som er meldt ødelagt", - "icon": "list" - }, - "status-oppslag": { - "description": "Det naboene har å låne ut, og det de trenger å låne.", - "heading": "Oppslagstavla", - "icon": "list" - }, - "status-trafikkmeldinger": { - "description": "Farlige steder naboene har meldt, og hva velet har gjort med dem.", - "heading": "Alle trafikkmeldinger", - "icon": "list" - } - } - } - }, - "questions/kasserer/index.yaml": { - "buckets": { - "husstander": { - "description": "Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem.", - "heading": "Nye medlemmer som venter på registrering", - "moves": { - "open->betalt": "Registrer betaling", - "open->utmeldt": "Meld ut" - } - }, - "medlemsendringer": { - "description": "Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert.", - "heading": "Endringer som venter på å bli registrert", - "moves": { - "open->oppdatert": "Registrer endring" - } - }, - "utlegg": { - "description": "Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling.", - "heading": "Utlegg som venter på deg", - "moves": { - "godkjent->avvist": "Avvis likevel", - "godkjent->utbetalt": "Merk som utbetalt", - "open->avvist": "Avvis utlegg", - "open->godkjent": "Godkjenn utlegg" - } - } - }, - "confirm": "Lagre", - "description": "Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "kasserer": { - "button": "Inviter", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i kassereren", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva venter på meg som kasserer akkurat nå?" - }, - "questions/komiteer/index.yaml": { - "buckets": {}, - "confirm": "Confirm", - "description": "Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "komiteer": { - "button": "Inviter", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i komiteene", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": { - "utlegg": { - "button": "Send utlegg", - "description": "Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake.", - "heading": "Få tilbake det du har lagt ut" - } - }, - "question": "Hva står ubehandlet i komiteen din nå?" - }, - "questions/komiteer/utlegg-sent.yaml": { - "back": "Til forsiden", - "description": "Utlegget er sendt til kasserer. Du får beskjed når det er sjekket.", - "next_description": "Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga.", - "next_heading": "Pengene kommer på konto", - "question": "Hva skjer med utlegget mitt nå?" - }, - "questions/komiteer/utlegg.yaml": { - "button": "Send inn", - "description": "Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten.", - "encouragement": "Legg ved bilag om du har det, så går det raskere.", - "form_description": "Ha kvittering eller bilag klart før du fyller ut.", - "form_title": "Krav om refusjon", - "heading": "Få pengene tilbake", - "hints": { - "belop": "450 kr", - "hva": "Kaffe og kjeks til dugnaden", - "navn": "Kari Nordmann" - }, - "icon": "receipt", - "labels": { - "belop": "Beløp", - "hva": "Hva gjaldt det", - "navn": "Navn" - }, - "page_description": "Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake.", - "question": "Har du lagt ut penger for komiteen og vil ha dem tilbake?", - "road_description": "Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor.", - "road_icon": "lucide:wallet", - "road_title": "Fra krav til utbetaling", - "who_description": "Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster.", - "who_icon": "lucide:coins", - "who_title": "Kasserer ser dette" - }, - "questions/lekeplasser/index.yaml": { - "buckets": { - "anleggsfeil": { - "description": "Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses.", - "heading": "Det som er meldt inn av skader", - "moves": { - "open->tatt_tak_i": "Ta tak i saken", - "tatt_tak_i->utbedret": "Merk som utbedret" - } - } - }, - "confirm": "Lagre", - "description": "Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "lekeplasser": { - "button": "Inviter", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Leke- og møteplasser", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva må fikses på lekeplassene og stien nå?" - }, - "questions/medlem/index.yaml": { - "description": "Bli medlem av Tomter Vel, eller oppdater opplysningene dine hvis du allerede er medlem.", - "needs": { - "bli-medlem": { - "button": "Bli medlem", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.", - "encouragement": "Kasserer sender deg kontingenten på e-post rett etterpå.", - "form_description": "Ha adressen i Tomter og en e-post du bruker klar.", - "form_title": "Meld deg inn", - "heading": "Bli medlem av Tomter Vel", - "hints": { - "adresse": "Tomterveien 12", - "email": "", - "navn": "Ola Nordmann", - "telefon": "123 45 678" - }, - "icon": "user-plus", - "labels": { - "adresse": "Adresse", - "email": "Email", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem.", - "road_icon": "lucide:coins", - "road_title": "Etter innmelding", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "who_title": "Hvem svarer deg" - }, - "endre-medlemskap": { - "button": "Send endring", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.", - "encouragement": "Det tar bare et par minutter, og kasserer ordner resten.", - "form_description": "Skriv navnet ditt og hva som er nytt.", - "form_title": "Endre medlemskap", - "heading": "Oppdater eller avslutt medlemskapet", - "hints": { - "adresse": "Ny adresse i Tomter", - "hva_er_nytt": "Ny e-post, ny adresse, eller ønske om utmelding", - "navn": "Ola Nordmann" - }, - "icon": "pencil", - "labels": { - "adresse": "Adresse", - "hva_er_nytt": "Hva vil du endre?", - "navn": "Navn" - }, - "road_description": "Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om.", - "road_icon": "lucide:refresh-cw", - "road_title": "Etter du sender inn", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "who_title": "Hvem svarer deg" - } - }, - "question": "Vil du bli medlem, eller endre medlemskapet ditt?" - }, - "questions/melde-fra/index.yaml": { - "description": "Har du sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien? Her sier du fra til velet.", - "needs": { - "anleggsfeil": { - "button": "Send inn", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.", - "encouragement": "Det holder med noen ord om hva du så og hvor.", - "form_description": "Fortell hva som er ødelagt og omtrent hvor det er.", - "form_title": "Meld anleggsfeil", - "heading": "Meld fra om noe ødelagt", - "hints": { - "hva": "Løs planke på gjerdet ved husken", - "hvor": "" - }, - "icon": "construction", - "labels": { - "hva": "Hva er ødelagt", - "hvor": "Hvor er det" - }, - "road_description": "Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet.", - "road_icon": "lucide:wrench", - "road_title": "Hva skjer videre", - "who_description": "Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:hammer", - "who_title": "Hvem leser dette" - }, - "trafikkfare": { - "button": "Send inn", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.", - "encouragement": "Bare noen linjer om hva og hvor er nok til at vi kan følge opp.", - "form_description": "Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer.", - "form_title": "Meld trafikkfare", - "heading": "Meld fra om en trafikkfare", - "hints": { - "epost": "ola.nordmann@epost.no", - "hva": "Dårlig sikt i krysset, biler kjører fort", - "hvor": "Krysset Tomterveien / Elvestien" - }, - "icon": "alert-triangle", - "labels": { - "epost": "E-post (valgfritt)", - "hva": "Hva så du", - "hvor": "Hvor var det" - }, - "road_description": "Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:car", - "who_title": "Hvem leser dette" - } - }, - "question": "Hva vil du melde fra om?" - }, - "questions/naboer/index.yaml": { - "description": "Godt naboskap gjør hverdagen lettere. Trenger du en hånd, kan gi en, eller har noe å låne bort?", - "needs": { - "dele-utstyr": { - "button": "Legg ut oppslag", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.", - "encouragement": "Vi legger det ut så naboene kan se det.", - "form_description": "Skriv kort hva det gjelder, så folk skjønner det med en gang.", - "form_title": "Lån eller utlån", - "heading": "Lån ut eller lån av naboen", - "hints": { - "email": "ola@eksempel.no", - "har_eller_trenger": "", - "hva": "Hengerfeste til bil, tilhenger, stige", - "navn": "Ola Nordmann" - }, - "icon": "package", - "labels": { - "email": "E-post", - "har_eller_trenger": "Har du eller trenger du", - "hva": "Hva gjelder det", - "navn": "Navn" - }, - "road_description": "Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen.", - "road_icon": "lucide:clipboard-list", - "road_title": "Fra oppslag til avtale", - "who_description": "Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem ser dette" - }, - "kan-hjelpe": { - "button": "Meld deg", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.", - "encouragement": "Du blir bare kontaktet når noe passer for deg.", - "form_description": "Fortell kort hva du kan bidra med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli spurt når en nabo trenger en hånd", - "hints": { - "email": "kari@eksempel.no", - "kan": "", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "hand-helping", - "labels": { - "email": "E-post", - "kan": "Hva kan du hjelpe med", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra.", - "road_icon": "lucide:user-check", - "road_title": "Fra påmelding til spørsmål", - "who_description": "Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no.", - "who_icon": "lucide:heart-handshake", - "who_title": "Hvem ser dette" - }, - "trenger-hjelp": { - "button": "Be om hjelp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.", - "encouragement": "Vi finner en nabo som kan stille opp så fort som mulig.", - "form_description": "Skriv kort hva du trenger hjelp til.", - "form_title": "Be om en hånd", - "heading": "Få en nabo til å stille opp", - "hints": { - "adresse": "Tomterveien 12", - "email": "kari@eksempel.no", - "hva": "Måke snø på trappa, handle inn litt mat", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "heart-handshake", - "labels": { - "adresse": "Adresse", - "email": "E-post", - "hva": "Hva trenger du hjelp til", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed.", - "road_icon": "lucide:hand-helping", - "road_title": "Fra melding til hjelp", - "who_description": "Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem ser dette" - } - }, - "question": "Trenger du en hånd, eller kan du gi en?" - }, - "questions/nabohjelp/index.yaml": { - "buckets": { - "hjelpebehov": { - "description": "Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe.", - "heading": "Naboer som trenger en hånd", - "moves": { - "formidlet->ikke_lost": "Meld ikke løst", - "formidlet->ordnet": "Meld ordnet", - "open->formidlet": "Koble til nabo", - "open->ikke_lost": "Meld ikke løst" - } - }, - "hjelpere": { - "description": "Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem.", - "heading": "Naboer som kan stille opp", - "moves": { - "open->registrert": "Registrer som hjelper", - "open->trukket": "Meld trukket" - } - } - }, - "confirm": "Lagre", - "description": "Her kobler du naboer som trenger hjelp med dem som kan stille opp.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "nabohjelp": { - "button": "Inviter", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i nabohjelpen", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvem trenger hjelp, og hvem kan stille opp?" - }, - "questions/received/anleggsfeil.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt.", - "next_description": "Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg.", - "next_heading": "Komiteen tar tak i det", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se meldte feil", - "description": "Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet.", - "heading": "Se andre meldte feil" - } - }, - "questions/received/bli-medlem.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert.", - "next_description": "Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten.", - "next_heading": "Kasserer sender deg betalingsinfo", - "question": "Hva skjer etter at jeg har meldt meg inn?" - }, - "questions/received/dele-utstyr.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan.", - "next_description": "En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne.", - "next_heading": "Styret legger det ut for deg", - "question": "Hva skjer med det jeg har lagt ut?", - "see_all": { - "button": "Se hva naboer deler", - "description": "Se hva andre i Tomter har lagt ut til utlån akkurat nå.", - "heading": "Se alt naboene deler" - } - }, - "questions/received/endre-medlemskap.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut.", - "next_description": "Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg.", - "next_heading": "Kasserer retter opp opplysningene", - "question": "Hva skjer nå med det jeg meldte inn?" - }, - "questions/received/hjelpe-til.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg.", - "next_description": "Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden.", - "next_heading": "Komiteen tar kontakt", - "question": "Hva skjer nå som jeg har meldt meg?" - }, - "questions/received/horingsinnspill.yaml": { - "back": "Tilbake til forsiden", - "description": "Innspillet ditt er sendt til høringsinstansen i velet.", - "next_description": "De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med.", - "next_heading": "Innspillet ditt inn i vurderingen", - "question": "Hva skjer med det jeg har sagt om saken?" - }, - "questions/received/kan-hjelpe.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe.", - "next_description": "Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte.", - "next_heading": "Du blir kontaktet ved behov", - "question": "Hva skjer nå som jeg har registrert meg?" - }, - "questions/received/komite.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg.", - "next_description": "Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer.", - "next_heading": "Vi finner riktig komité til deg", - "question": "Hva skjer nå som jeg har meldt interesse for en komité?" - }, - "questions/received/trafikkfare.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din om trafikkfaren er sendt til komiteen for trafikk.", - "next_description": "Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs.", - "next_heading": "Trafikkomiteen tar den videre", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se andre trafikkfarer", - "description": "Se hva andre har meldt inn, og status på sakene.", - "heading": "Andre meldte trafikkfarer" - } - }, - "questions/received/trenger-hjelp.yaml": { - "back": "Til forsiden", - "description": "Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp.", - "next_description": "Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer.", - "next_heading": "Vi finner en nabo til deg", - "question": "Hva skjer nå som jeg har bedt om hjelp?" - }, - "questions/status/anleggsfeil/index.yaml": { - "back": "Tilbake til meldinger", - "description": "Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet.", - "heading": "Status på meldte anleggsfeil", - "list_description": "Alle meldinger er åpne for alle å se.", - "question": "Hva skjer med det jeg har meldt fra om?" - }, - "questions/status/oppslag/index.yaml": { - "back": "Tilbake", - "description": "Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet.", - "heading": "Oversikt over det som er meldt inn", - "list_description": "Åpen liste – navn og detaljer vises ikke.", - "question": "Hva er sendt inn, og hvor langt har det kommet?" - }, - "questions/status/trafikkmeldinger/index.yaml": { - "back": "Tilbake", - "description": "Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet.", - "heading": "Trafikkmeldinger og status", - "list_description": "Alle meldinger som er sendt inn, og hvor de står nå.", - "question": "Er det meldt fra om noe farlig i trafikken der jeg bor?" - }, - "questions/styret/index.yaml": { - "buckets": { - "innspill": { - "description": "Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar.", - "heading": "Høringsinnspill fra beboerne", - "moves": {} - }, - "komitesoknader": { - "description": "Her ligger alle som har meldt seg til en komité og venter på en plass.", - "heading": "Søknader til komiteene", - "moves": { - "open->avslatt": "Avslå søknaden", - "open->plassert": "Sett i komité" - } - }, - "oppslag": { - "description": "Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut.", - "heading": "Utstyr til utlån blant naboer", - "moves": { - "open->lagt_ut": "Legg ut oppslaget", - "open->tatt_ned": "Ta ned oppslaget" - } - }, - "trafikkmeldinger": { - "description": "Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier.", - "heading": "Meldinger om trafikkfarer", - "moves": {} - } - }, - "confirm": "Lagre", - "description": "Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "arrangementer": { - "button": "Inviter", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Arrangementer", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "horingsinstans": { - "button": "Inviter", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Høringsinstans", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "kasserer": { - "button": "Inviter", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i kassereren", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "komiteer": { - "button": "Inviter", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i komiteene", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "lekeplasser": { - "button": "Inviter", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Leke- og møteplasser", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "nabohjelp": { - "button": "Inviter", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i nabohjelpen", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "styret": { - "button": "Inviter", - "description": "De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i styret", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "trafikk": { - "button": "Inviter", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Trafikkforhold", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva venter på styret akkurat nå?" - }, - "questions/trafikk/index.yaml": { - "buckets": { - "trafikkmeldinger": { - "description": "Farlige steder i trafikken som naboer har meldt inn.", - "heading": "Farlige steder i trafikken", - "moves": { - "open->avvist": "Avvis meldingen", - "open->tatt_opp": "Ta opp med kommunen", - "tatt_opp->avvist": "Avvis meldingen", - "tatt_opp->ordnet": "Meld ordnet" - } - } - }, - "confirm": "Lagre", - "description": "Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "trafikk": { - "button": "Inviter", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Trafikkforhold", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvilke trafikkfarer må følges opp?" - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/tasks-full.jsonl b/vendor/trainer/runs/tomtervel-opener-2026-09-23/tasks-full.jsonl deleted file mode 100644 index 6a116b0..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/tasks-full.jsonl +++ /dev/null @@ -1,38 +0,0 @@ -{"id":"nyinnflyttet@/","persona":"nyinnflyttet","need":"bli-medlem","page":"/","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"nyinnflyttet@/medlem","persona":"nyinnflyttet","need":"bli-medlem","page":"/medlem","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger."}}},"expect":["Bli medlem av Tomter Vel"]} -{"id":"glemte-a-betale@/","persona":"glemte-a-betale","need":"bli-medlem","page":"/","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"glemte-a-betale@/medlem","persona":"glemte-a-betale","need":"bli-medlem","page":"/medlem","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger."}}},"expect":["Bli medlem av Tomter Vel"]} -{"id":"ny-epost@/","persona":"ny-epost","need":"endre-medlemskap","page":"/","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"ny-epost@/medlem","persona":"ny-epost","need":"endre-medlemskap","page":"/medlem","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger."}}},"expect":["Oppdater eller avslutt medlemskapet"]} -{"id":"flytter@/","persona":"flytter","need":"endre-medlemskap","page":"/","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"flytter@/medlem","persona":"flytter","need":"endre-medlemskap","page":"/medlem","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger."}}},"expect":["Oppdater eller avslutt medlemskapet"]} -{"id":"skolevei@/","persona":"skolevei","need":"trafikkfare","page":"/","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Meld fra om noe som bør fikses"]} -{"id":"skolevei@/melde-fra","persona":"skolevei","need":"trafikkfare","page":"/melde-fra","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du melde fra om?\". Which alternative do they choose?","criteria":{"Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det."}}},"expect":["Meld fra om en trafikkfare"]} -{"id":"busslomme@/","persona":"busslomme","need":"trafikkfare","page":"/","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Meld fra om noe som bør fikses"]} -{"id":"busslomme@/melde-fra","persona":"busslomme","need":"trafikkfare","page":"/melde-fra","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du melde fra om?\". Which alternative do they choose?","criteria":{"Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det."}}},"expect":["Meld fra om en trafikkfare"]} -{"id":"huske@/","persona":"huske","need":"anleggsfeil","page":"/","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Meld fra om noe som bør fikses"]} -{"id":"huske@/melde-fra","persona":"huske","need":"anleggsfeil","page":"/melde-fra","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du melde fra om?\". Which alternative do they choose?","criteria":{"Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det."}}},"expect":["Meld fra om noe ødelagt"]} -{"id":"bru@/","persona":"bru","need":"anleggsfeil","page":"/","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Meld fra om noe som bør fikses"]} -{"id":"bru@/melde-fra","persona":"bru","need":"anleggsfeil","page":"/melde-fra","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du melde fra om?\". Which alternative do they choose?","criteria":{"Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det."}}},"expect":["Meld fra om noe ødelagt"]} -{"id":"blokker@/","persona":"blokker","need":"horingsinnspill","page":"/","state":{"body":"Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Få din mening med i høringssvaret"]} -{"id":"togtider@/","persona":"togtider","need":"horingsinnspill","page":"/","state":{"body":"Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Få din mening med i høringssvaret"]} -{"id":"vafler@/","persona":"vafler","need":"hjelpe-til","page":"/","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Bli med og gjør en innsats"]} -{"id":"vafler@/bidra","persona":"vafler","need":"hjelpe-til","page":"/bidra","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til i nabolaget?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Bli med på dugnad eller arrangement"]} -{"id":"motorsag@/","persona":"motorsag","need":"hjelpe-til","page":"/","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Bli med og gjør en innsats"]} -{"id":"motorsag@/bidra","persona":"motorsag","need":"hjelpe-til","page":"/bidra","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til i nabolaget?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Bli med på dugnad eller arrangement"]} -{"id":"pendler@/","persona":"pendler","need":"komite","page":"/","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Bli med og gjør en innsats"]} -{"id":"pendler@/bidra","persona":"pendler","need":"komite","page":"/bidra","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til i nabolaget?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Sitt i en komité som betyr noe for deg"]} -{"id":"planlegger@/","persona":"planlegger","need":"komite","page":"/","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Bli med og gjør en innsats"]} -{"id":"planlegger@/bidra","persona":"planlegger","need":"komite","page":"/bidra","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til i nabolaget?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Sitt i en komité som betyr noe for deg"]} -{"id":"tilhenger@/","persona":"tilhenger","need":"dele-utstyr","page":"/","state":{"body":"Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"tilhenger@/naboer","persona":"tilhenger","need":"dele-utstyr","page":"/naboer","state":{"body":"Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det."}}},"expect":["Lån ut eller lån av naboen"]} -{"id":"stige@/","persona":"stige","need":"dele-utstyr","page":"/","state":{"body":"Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"stige@/naboer","persona":"stige","need":"dele-utstyr","page":"/naboer","state":{"body":"Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det."}}},"expect":["Lån ut eller lån av naboen"]} -{"id":"snomaking@/","persona":"snomaking","need":"trenger-hjelp","page":"/","state":{"body":"Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"snomaking@/naboer","persona":"snomaking","need":"trenger-hjelp","page":"/naboer","state":{"body":"Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det."}}},"expect":["Få en nabo til å stille opp"]} -{"id":"nyoperert@/","persona":"nyoperert","need":"trenger-hjelp","page":"/","state":{"body":"Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"nyoperert@/naboer","persona":"nyoperert","need":"trenger-hjelp","page":"/naboer","state":{"body":"Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det."}}},"expect":["Få en nabo til å stille opp"]} -{"id":"hjemmekontor@/","persona":"hjemmekontor","need":"kan-hjelpe","page":"/","state":{"body":"Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"hjemmekontor@/naboer","persona":"hjemmekontor","need":"kan-hjelpe","page":"/naboer","state":{"body":"Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det."}}},"expect":["Bli spurt når en nabo trenger en hånd"]} -{"id":"pensjonert-elektriker@/","persona":"pensjonert-elektriker","need":"kan-hjelpe","page":"/","state":{"body":"Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.","Bli medlem eller endre opplysningene dine":"Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer, eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.","Meld fra om noe som bør fikses":"Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed."}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"pensjonert-elektriker@/naboer","persona":"pensjonert-elektriker","need":"kan-hjelpe","page":"/naboer","state":{"body":"Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det."}}},"expect":["Bli spurt når en nabo trenger en hånd"]} diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/tasks-r3-full.jsonl b/vendor/trainer/runs/tomtervel-opener-2026-09-23/tasks-r3-full.jsonl deleted file mode 100644 index 32d7117..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/tasks-r3-full.jsonl +++ /dev/null @@ -1,38 +0,0 @@ -{"id":"nyinnflyttet@/","persona":"nyinnflyttet","need":"bli-medlem","page":"/","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bidra på arrangement eller i en komité":"Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité.","Bli medlem eller endre medlemskapet ditt":"Meld deg inn, oppdater opplysningene dine eller meld deg ut.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer.","Meld fra om trafikkfare eller ødelagt anlegg":"Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien."}}},"expect":["Bli medlem eller endre medlemskapet ditt"]} -{"id":"nyinnflyttet@/medlem","persona":"nyinnflyttet","need":"bli-medlem","page":"/medlem","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger."}}},"expect":["Bli medlem av Tomter Vel"]} -{"id":"glemte-a-betale@/","persona":"glemte-a-betale","need":"bli-medlem","page":"/","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bidra på arrangement eller i en komité":"Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité.","Bli medlem eller endre medlemskapet ditt":"Meld deg inn, oppdater opplysningene dine eller meld deg ut.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer.","Meld fra om trafikkfare eller ødelagt anlegg":"Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien."}}},"expect":["Bli medlem eller endre medlemskapet ditt"]} -{"id":"glemte-a-betale@/medlem","persona":"glemte-a-betale","need":"bli-medlem","page":"/medlem","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger."}}},"expect":["Bli medlem av Tomter Vel"]} -{"id":"ny-epost@/","persona":"ny-epost","need":"endre-medlemskap","page":"/","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bidra på arrangement eller i en komité":"Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité.","Bli medlem eller endre medlemskapet ditt":"Meld deg inn, oppdater opplysningene dine eller meld deg ut.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer.","Meld fra om trafikkfare eller ødelagt anlegg":"Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien."}}},"expect":["Bli medlem eller endre medlemskapet ditt"]} -{"id":"ny-epost@/medlem","persona":"ny-epost","need":"endre-medlemskap","page":"/medlem","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger."}}},"expect":["Oppdater eller avslutt medlemskapet"]} -{"id":"flytter@/","persona":"flytter","need":"endre-medlemskap","page":"/","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bidra på arrangement eller i en komité":"Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité.","Bli medlem eller endre medlemskapet ditt":"Meld deg inn, oppdater opplysningene dine eller meld deg ut.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer.","Meld fra om trafikkfare eller ødelagt anlegg":"Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien."}}},"expect":["Bli medlem eller endre medlemskapet ditt"]} -{"id":"flytter@/medlem","persona":"flytter","need":"endre-medlemskap","page":"/medlem","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli medlem av Tomter Vel":"Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.","Oppdater eller avslutt medlemskapet":"Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger."}}},"expect":["Oppdater eller avslutt medlemskapet"]} -{"id":"skolevei@/","persona":"skolevei","need":"trafikkfare","page":"/","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bidra på arrangement eller i en komité":"Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité.","Bli medlem eller endre medlemskapet ditt":"Meld deg inn, oppdater opplysningene dine eller meld deg ut.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer.","Meld fra om trafikkfare eller ødelagt anlegg":"Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien."}}},"expect":["Meld fra om trafikkfare eller ødelagt anlegg"]} -{"id":"skolevei@/melde-fra","persona":"skolevei","need":"trafikkfare","page":"/melde-fra","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du melde fra om?\". Which alternative do they choose?","criteria":{"Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det."}}},"expect":["Meld fra om en trafikkfare"]} -{"id":"busslomme@/","persona":"busslomme","need":"trafikkfare","page":"/","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bidra på arrangement eller i en komité":"Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité.","Bli medlem eller endre medlemskapet ditt":"Meld deg inn, oppdater opplysningene dine eller meld deg ut.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer.","Meld fra om trafikkfare eller ødelagt anlegg":"Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien."}}},"expect":["Meld fra om trafikkfare eller ødelagt anlegg"]} -{"id":"busslomme@/melde-fra","persona":"busslomme","need":"trafikkfare","page":"/melde-fra","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du melde fra om?\". Which alternative do they choose?","criteria":{"Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det."}}},"expect":["Meld fra om en trafikkfare"]} -{"id":"huske@/","persona":"huske","need":"anleggsfeil","page":"/","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bidra på arrangement eller i en komité":"Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité.","Bli medlem eller endre medlemskapet ditt":"Meld deg inn, oppdater opplysningene dine eller meld deg ut.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer.","Meld fra om trafikkfare eller ødelagt anlegg":"Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien."}}},"expect":["Meld fra om trafikkfare eller ødelagt anlegg"]} -{"id":"huske@/melde-fra","persona":"huske","need":"anleggsfeil","page":"/melde-fra","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du melde fra om?\". Which alternative do they choose?","criteria":{"Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det."}}},"expect":["Meld fra om noe ødelagt"]} -{"id":"bru@/","persona":"bru","need":"anleggsfeil","page":"/","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bidra på arrangement eller i en komité":"Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité.","Bli medlem eller endre medlemskapet ditt":"Meld deg inn, oppdater opplysningene dine eller meld deg ut.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer.","Meld fra om trafikkfare eller ødelagt anlegg":"Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien."}}},"expect":["Meld fra om trafikkfare eller ødelagt anlegg"]} -{"id":"bru@/melde-fra","persona":"bru","need":"anleggsfeil","page":"/melde-fra","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du melde fra om?\". Which alternative do they choose?","criteria":{"Meld fra om en trafikkfare":"Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.","Meld fra om noe ødelagt":"Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det."}}},"expect":["Meld fra om noe ødelagt"]} -{"id":"blokker@/","persona":"blokker","need":"horingsinnspill","page":"/","state":{"body":"Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bidra på arrangement eller i en komité":"Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité.","Bli medlem eller endre medlemskapet ditt":"Meld deg inn, oppdater opplysningene dine eller meld deg ut.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer.","Meld fra om trafikkfare eller ødelagt anlegg":"Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien."}}},"expect":["Få din mening med i høringssvaret"]} -{"id":"togtider@/","persona":"togtider","need":"horingsinnspill","page":"/","state":{"body":"Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bidra på arrangement eller i en komité":"Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité.","Bli medlem eller endre medlemskapet ditt":"Meld deg inn, oppdater opplysningene dine eller meld deg ut.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer.","Meld fra om trafikkfare eller ødelagt anlegg":"Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien."}}},"expect":["Få din mening med i høringssvaret"]} -{"id":"vafler@/","persona":"vafler","need":"hjelpe-til","page":"/","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bidra på arrangement eller i en komité":"Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité.","Bli medlem eller endre medlemskapet ditt":"Meld deg inn, oppdater opplysningene dine eller meld deg ut.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer.","Meld fra om trafikkfare eller ødelagt anlegg":"Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien."}}},"expect":["Bidra på arrangement eller i en komité"]} -{"id":"vafler@/bidra","persona":"vafler","need":"hjelpe-til","page":"/bidra","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til i nabolaget?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Bli med på dugnad eller arrangement"]} -{"id":"motorsag@/","persona":"motorsag","need":"hjelpe-til","page":"/","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bidra på arrangement eller i en komité":"Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité.","Bli medlem eller endre medlemskapet ditt":"Meld deg inn, oppdater opplysningene dine eller meld deg ut.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer.","Meld fra om trafikkfare eller ødelagt anlegg":"Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien."}}},"expect":["Bidra på arrangement eller i en komité"]} -{"id":"motorsag@/bidra","persona":"motorsag","need":"hjelpe-til","page":"/bidra","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til i nabolaget?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Bli med på dugnad eller arrangement"]} -{"id":"pendler@/","persona":"pendler","need":"komite","page":"/","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bidra på arrangement eller i en komité":"Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité.","Bli medlem eller endre medlemskapet ditt":"Meld deg inn, oppdater opplysningene dine eller meld deg ut.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer.","Meld fra om trafikkfare eller ødelagt anlegg":"Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien."}}},"expect":["Bidra på arrangement eller i en komité"]} -{"id":"pendler@/bidra","persona":"pendler","need":"komite","page":"/bidra","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til i nabolaget?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Sitt i en komité som betyr noe for deg"]} -{"id":"planlegger@/","persona":"planlegger","need":"komite","page":"/","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bidra på arrangement eller i en komité":"Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité.","Bli medlem eller endre medlemskapet ditt":"Meld deg inn, oppdater opplysningene dine eller meld deg ut.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer.","Meld fra om trafikkfare eller ødelagt anlegg":"Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien."}}},"expect":["Bidra på arrangement eller i en komité"]} -{"id":"planlegger@/bidra","persona":"planlegger","need":"komite","page":"/bidra","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til i nabolaget?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.","Sitt i en komité som betyr noe for deg":"Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i."}}},"expect":["Sitt i en komité som betyr noe for deg"]} -{"id":"tilhenger@/","persona":"tilhenger","need":"dele-utstyr","page":"/","state":{"body":"Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bidra på arrangement eller i en komité":"Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité.","Bli medlem eller endre medlemskapet ditt":"Meld deg inn, oppdater opplysningene dine eller meld deg ut.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer.","Meld fra om trafikkfare eller ødelagt anlegg":"Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien."}}},"expect":["Få hjelp av naboer eller gi en hånd selv"]} -{"id":"tilhenger@/naboer","persona":"tilhenger","need":"dele-utstyr","page":"/naboer","state":{"body":"Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det."}}},"expect":["Lån ut eller lån av naboen"]} -{"id":"stige@/","persona":"stige","need":"dele-utstyr","page":"/","state":{"body":"Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bidra på arrangement eller i en komité":"Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité.","Bli medlem eller endre medlemskapet ditt":"Meld deg inn, oppdater opplysningene dine eller meld deg ut.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer.","Meld fra om trafikkfare eller ødelagt anlegg":"Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien."}}},"expect":["Få hjelp av naboer eller gi en hånd selv"]} -{"id":"stige@/naboer","persona":"stige","need":"dele-utstyr","page":"/naboer","state":{"body":"Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det."}}},"expect":["Lån ut eller lån av naboen"]} -{"id":"snomaking@/","persona":"snomaking","need":"trenger-hjelp","page":"/","state":{"body":"Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bidra på arrangement eller i en komité":"Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité.","Bli medlem eller endre medlemskapet ditt":"Meld deg inn, oppdater opplysningene dine eller meld deg ut.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer.","Meld fra om trafikkfare eller ødelagt anlegg":"Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien."}}},"expect":["Få hjelp av naboer eller gi en hånd selv"]} -{"id":"snomaking@/naboer","persona":"snomaking","need":"trenger-hjelp","page":"/naboer","state":{"body":"Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det."}}},"expect":["Få en nabo til å stille opp"]} -{"id":"nyoperert@/","persona":"nyoperert","need":"trenger-hjelp","page":"/","state":{"body":"Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bidra på arrangement eller i en komité":"Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité.","Bli medlem eller endre medlemskapet ditt":"Meld deg inn, oppdater opplysningene dine eller meld deg ut.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer.","Meld fra om trafikkfare eller ødelagt anlegg":"Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien."}}},"expect":["Få hjelp av naboer eller gi en hånd selv"]} -{"id":"nyoperert@/naboer","persona":"nyoperert","need":"trenger-hjelp","page":"/naboer","state":{"body":"Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det."}}},"expect":["Få en nabo til å stille opp"]} -{"id":"hjemmekontor@/","persona":"hjemmekontor","need":"kan-hjelpe","page":"/","state":{"body":"Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bidra på arrangement eller i en komité":"Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité.","Bli medlem eller endre medlemskapet ditt":"Meld deg inn, oppdater opplysningene dine eller meld deg ut.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer.","Meld fra om trafikkfare eller ødelagt anlegg":"Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien."}}},"expect":["Få hjelp av naboer eller gi en hånd selv"]} -{"id":"hjemmekontor@/naboer","persona":"hjemmekontor","need":"kan-hjelpe","page":"/naboer","state":{"body":"Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det."}}},"expect":["Bli spurt når en nabo trenger en hånd"]} -{"id":"pensjonert-elektriker@/","persona":"pensjonert-elektriker","need":"kan-hjelpe","page":"/","state":{"body":"Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bidra på arrangement eller i en komité":"Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité.","Bli medlem eller endre medlemskapet ditt":"Meld deg inn, oppdater opplysningene dine eller meld deg ut.","Få din mening med i høringssvaret":"Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.","Få hjelp av naboer eller gi en hånd selv":"Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer.","Meld fra om trafikkfare eller ødelagt anlegg":"Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien."}}},"expect":["Få hjelp av naboer eller gi en hånd selv"]} -{"id":"pensjonert-elektriker@/naboer","persona":"pensjonert-elektriker","need":"kan-hjelpe","page":"/naboer","state":{"body":"Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.","Få en nabo til å stille opp":"Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.","Lån ut eller lån av naboen":"Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det."}}},"expect":["Bli spurt når en nabo trenger en hånd"]} diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/tasks-skim.jsonl b/vendor/trainer/runs/tomtervel-opener-2026-09-23/tasks-skim.jsonl deleted file mode 100644 index b3f2df8..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/tasks-skim.jsonl +++ /dev/null @@ -1,38 +0,0 @@ -{"id":"nyinnflyttet@/","persona":"nyinnflyttet","need":"bli-medlem","page":"/","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"nyinnflyttet@/medlem","persona":"nyinnflyttet","need":"bli-medlem","page":"/medlem","state":{"body":"Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet"}}},"expect":["Bli medlem av Tomter Vel"]} -{"id":"glemte-a-betale@/","persona":"glemte-a-betale","need":"bli-medlem","page":"/","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"glemte-a-betale@/medlem","persona":"glemte-a-betale","need":"bli-medlem","page":"/medlem","state":{"body":"Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet"}}},"expect":["Bli medlem av Tomter Vel"]} -{"id":"ny-epost@/","persona":"ny-epost","need":"endre-medlemskap","page":"/","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"ny-epost@/medlem","persona":"ny-epost","need":"endre-medlemskap","page":"/medlem","state":{"body":"Vi har byttet e-postadresse og får ikke lenger noe fra dere."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet"}}},"expect":["Oppdater eller avslutt medlemskapet"]} -{"id":"flytter@/","persona":"flytter","need":"endre-medlemskap","page":"/","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Bli medlem eller endre opplysningene dine"]} -{"id":"flytter@/medlem","persona":"flytter","need":"endre-medlemskap","page":"/medlem","state":{"body":"Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du bli medlem, eller endre medlemskapet ditt?\". Which alternative do they choose?","criteria":{"Bli medlem av Tomter Vel":"Bli medlem av Tomter Vel","Oppdater eller avslutt medlemskapet":"Oppdater eller avslutt medlemskapet"}}},"expect":["Oppdater eller avslutt medlemskapet"]} -{"id":"skolevei@/","persona":"skolevei","need":"trafikkfare","page":"/","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Meld fra om noe som bør fikses"]} -{"id":"skolevei@/melde-fra","persona":"skolevei","need":"trafikkfare","page":"/melde-fra","state":{"body":"Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du melde fra om?\". Which alternative do they choose?","criteria":{"Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt"}}},"expect":["Meld fra om en trafikkfare"]} -{"id":"busslomme@/","persona":"busslomme","need":"trafikkfare","page":"/","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Meld fra om noe som bør fikses"]} -{"id":"busslomme@/melde-fra","persona":"busslomme","need":"trafikkfare","page":"/melde-fra","state":{"body":"Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du melde fra om?\". Which alternative do they choose?","criteria":{"Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt"}}},"expect":["Meld fra om en trafikkfare"]} -{"id":"huske@/","persona":"huske","need":"anleggsfeil","page":"/","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Meld fra om noe som bør fikses"]} -{"id":"huske@/melde-fra","persona":"huske","need":"anleggsfeil","page":"/melde-fra","state":{"body":"Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du melde fra om?\". Which alternative do they choose?","criteria":{"Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt"}}},"expect":["Meld fra om noe ødelagt"]} -{"id":"bru@/","persona":"bru","need":"anleggsfeil","page":"/","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Meld fra om noe som bør fikses"]} -{"id":"bru@/melde-fra","persona":"bru","need":"anleggsfeil","page":"/melde-fra","state":{"body":"Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva vil du melde fra om?\". Which alternative do they choose?","criteria":{"Meld fra om en trafikkfare":"Meld fra om en trafikkfare","Meld fra om noe ødelagt":"Meld fra om noe ødelagt"}}},"expect":["Meld fra om noe ødelagt"]} -{"id":"blokker@/","persona":"blokker","need":"horingsinnspill","page":"/","state":{"body":"Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra?","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Få din mening med i høringssvaret"]} -{"id":"togtider@/","persona":"togtider","need":"horingsinnspill","page":"/","state":{"body":"Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Få din mening med i høringssvaret"]} -{"id":"vafler@/","persona":"vafler","need":"hjelpe-til","page":"/","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Bli med og gjør en innsats"]} -{"id":"vafler@/bidra","persona":"vafler","need":"hjelpe-til","page":"/bidra","state":{"body":"Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til i nabolaget?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Bli med på dugnad eller arrangement"]} -{"id":"motorsag@/","persona":"motorsag","need":"hjelpe-til","page":"/","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Bli med og gjør en innsats"]} -{"id":"motorsag@/bidra","persona":"motorsag","need":"hjelpe-til","page":"/bidra","state":{"body":"Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til i nabolaget?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Bli med på dugnad eller arrangement"]} -{"id":"pendler@/","persona":"pendler","need":"komite","page":"/","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Bli med og gjør en innsats"]} -{"id":"pendler@/bidra","persona":"pendler","need":"komite","page":"/bidra","state":{"body":"Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til i nabolaget?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Sitt i en komité som betyr noe for deg"]} -{"id":"planlegger@/","persona":"planlegger","need":"komite","page":"/","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Bli med og gjør en innsats"]} -{"id":"planlegger@/bidra","persona":"planlegger","need":"komite","page":"/bidra","state":{"body":"Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Vil du hjelpe til i nabolaget?\". Which alternative do they choose?","criteria":{"Bli med på dugnad eller arrangement":"Bli med på dugnad eller arrangement","Sitt i en komité som betyr noe for deg":"Sitt i en komité som betyr noe for deg"}}},"expect":["Sitt i en komité som betyr noe for deg"]} -{"id":"tilhenger@/","persona":"tilhenger","need":"dele-utstyr","page":"/","state":{"body":"Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"tilhenger@/naboer","persona":"tilhenger","need":"dele-utstyr","page":"/naboer","state":{"body":"Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen"}}},"expect":["Lån ut eller lån av naboen"]} -{"id":"stige@/","persona":"stige","need":"dele-utstyr","page":"/","state":{"body":"Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"stige@/naboer","persona":"stige","need":"dele-utstyr","page":"/naboer","state":{"body":"Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen"}}},"expect":["Lån ut eller lån av naboen"]} -{"id":"snomaking@/","persona":"snomaking","need":"trenger-hjelp","page":"/","state":{"body":"Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"snomaking@/naboer","persona":"snomaking","need":"trenger-hjelp","page":"/naboer","state":{"body":"Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen"}}},"expect":["Få en nabo til å stille opp"]} -{"id":"nyoperert@/","persona":"nyoperert","need":"trenger-hjelp","page":"/","state":{"body":"Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"nyoperert@/naboer","persona":"nyoperert","need":"trenger-hjelp","page":"/naboer","state":{"body":"Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen"}}},"expect":["Få en nabo til å stille opp"]} -{"id":"hjemmekontor@/","persona":"hjemmekontor","need":"kan-hjelpe","page":"/","state":{"body":"Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"hjemmekontor@/naboer","persona":"hjemmekontor","need":"kan-hjelpe","page":"/naboer","state":{"body":"Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen"}}},"expect":["Bli spurt når en nabo trenger en hånd"]} -{"id":"pensjonert-elektriker@/","persona":"pensjonert-elektriker","need":"kan-hjelpe","page":"/","state":{"body":"Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting.","page":"Dette gjør velet: To ting først. Resten står lenger ned på siden. Et vel som taler for Tomter, og et medlemskap du styrer selv: Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil. En nabo som stiller opp når du trenger det: Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.\nSe deg rundt først: Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står. Alt som er meldt ødelagt: Lekeplassen og stien: det som er meldt, og det som er fikset. [Alt som er meldt ødelagt](/status/anleggsfeil) Oppslagstavla: Det naboene har å låne ut, og det de trenger å låne. [Oppslagstavla](/status/oppslag) Alle trafikkmeldinger: Farlige steder naboene har meldt, og hva velet har gjort med dem. [Alle trafikkmeldinger](/status/trafikkmeldinger)"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Hva gjør Tomter Vel, og hva kan du få her?\". Which alternative do they choose?","criteria":{"Bli med og gjør en innsats":"Bli med og gjør en innsats","Bli medlem eller endre opplysningene dine":"Bli medlem eller endre opplysningene dine","Få din mening med i høringssvaret":"Få din mening med i høringssvaret","Få hjelp av naboer, eller gi en hånd selv":"Få hjelp av naboer, eller gi en hånd selv","Meld fra om noe som bør fikses":"Meld fra om noe som bør fikses"}}},"expect":["Få hjelp av naboer, eller gi en hånd selv"]} -{"id":"pensjonert-elektriker@/naboer","persona":"pensjonert-elektriker","need":"kan-hjelpe","page":"/naboer","state":{"body":"Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Trenger du en hånd, eller kan du gi en?\". Which alternative do they choose?","criteria":{"Bli spurt når en nabo trenger en hånd":"Bli spurt når en nabo trenger en hånd","Få en nabo til å stille opp":"Få en nabo til å stille opp","Lån ut eller lån av naboen":"Lån ut eller lån av naboen"}}},"expect":["Bli spurt når en nabo trenger en hånd"]} diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/words-cold.json b/vendor/trainer/runs/tomtervel-opener-2026-09-23/words-cold.json deleted file mode 100644 index fbdee1b..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/words-cold.json +++ /dev/null @@ -1,953 +0,0 @@ -{ - "aggregates.yaml": { - "hjelpebehov": { - "formidlet": { - "body": "Vi har funnet en nabo som kan hjelpe. De tar kontakt med deg direkte.\n\nDet du kan gjøre nå: {site}/decide/trenger-hjelp?chain={chain}&email={email}", - "subject": "En nabo er koblet på" - }, - "open": { - "body": "Vi har mottatt det du trenger hjelp til, og ser etter en nabo som kan stille opp. Du hører fra oss så snart vi har funnet noen.", - "subject": "Vi leter etter en nabo til deg" - }, - "ordnet": { - "body": "Godt å høre at det ordnet seg. Takk for at du sa fra, og lykke til videre.", - "subject": "Bra det løste seg" - } - }, - "husstander": { - "betalt": { - "body": "Kontingenten er registrert betalt. Du er nå medlem av Tomter Vel - velkommen med!", - "subject": "Medlemskapet er i orden" - }, - "open": { - "body": "Takk for at du vil bli medlem. Du får en betalingsoppfordring med kontonummer og beløp så snart kasserer har sett på saken.\n\nDet du kan gjøre nå: {site}/decide/bli-medlem?chain={chain}&email={email}", - "subject": "Nesten i mål som medlem" - } - }, - "oppslag": { - "lagt_ut": { - "body": "Oppslaget ditt er lagt ut, og naboene kan nå se det.", - "subject": "Oppslaget er synlig for naboene" - } - } - }, - "questions/arrangementer/index.yaml": { - "buckets": { - "frivillige": { - "description": "Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem.", - "heading": "Frivillige til arrangementer og dugnad", - "moves": { - "kontaktet->satt_opp": "Sett opp", - "kontaktet->takket_nei": "Takket nei", - "open->kontaktet": "Merk som kontaktet", - "open->takket_nei": "Takket nei" - } - } - }, - "confirm": "Lagre", - "description": "Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "arrangementer": { - "button": "Inviter", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Arrangementer", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp?" - }, - "questions/bidra/index.yaml": { - "description": "Vil du stille opp for nabolaget? Her melder du deg til dugnad og arrangementer, eller til en av komiteene.", - "needs": { - "hjelpe-til": { - "button": "Meld meg på", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.", - "encouragement": "Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg.", - "form_description": "Fortell kort hva du kan hjelpe til med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli med på dugnad eller arrangement", - "hints": { - "hva": "", - "navn": "Kari Nordmann", - "telefon": "912 34 567" - }, - "icon": "hand-helping", - "labels": { - "hva": "Hva kan du hjelpe til med?", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit.", - "road_icon": "lucide:clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - }, - "komite": { - "button": "Meld interesse", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i.", - "encouragement": "Det tar bare et minutt, og noen fra styret svarer deg.", - "form_description": "Skriv hvilken komité du er interessert i.", - "form_title": "Meld deg til en komité", - "heading": "Sitt i en komité som betyr noe for deg", - "hints": { - "epost": "kari@eksempel.no", - "komite": "", - "navn": "Kari Nordmann" - }, - "icon": "users", - "labels": { - "epost": "E-post", - "komite": "Hvilken komité?", - "navn": "Navn" - }, - "road_description": "Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå.", - "road_icon": "lucide:clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:handshake", - "who_title": "Hvem leser dette" - } - }, - "question": "Vil du hjelpe til i nabolaget?" - }, - "questions/decide/bli-medlem.yaml": { - "description": "", - "moves": { - "utmeldt": { - "button": "Utmeldt", - "description": "", - "heading": "Utmeldt" - } - }, - "question": "What would you like to do?" - }, - "questions/decide/dele-utstyr.yaml": { - "description": "Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån.", - "moves": { - "tatt_ned": { - "button": "Ta ned oppslaget", - "description": "Oppslaget fjernes fra siden, så ingen flere spør om å låne det.", - "heading": "Meld at utstyret er tatt ned" - } - }, - "question": "Skal oppslaget om utstyret fortsatt stå ute?" - }, - "questions/decide/kan-hjelpe.yaml": { - "description": "Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå.", - "moves": { - "trukket": { - "button": "Trekk meg", - "description": "Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre.", - "heading": "Ta en pause fra nabohjelpen" - } - }, - "question": "Vil du fortsatt kunne bli spurt om å hjelpe en nabo?" - }, - "questions/decide/trenger-hjelp.yaml": { - "description": "Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet.", - "moves": { - "ordnet": { - "button": "Merk som ordnet", - "description": "Da vet vi at naboen har fått hjelpen sin, og saken lukkes.", - "heading": "Meld fra at hjelpen er gitt" - } - }, - "question": "Har naboen fått hjelpen de trengte?" - }, - "questions/horingsinstans/index.yaml": { - "buckets": { - "innspill": { - "description": "Her ligger innspill fra beboere til saker kommunen har på høring.", - "heading": "Innspill til høringssvar", - "moves": { - "open->ikke_tatt_med": "Ikke tatt med", - "open->tatt_med": "Tatt med i svaret" - } - } - }, - "confirm": "Send svar", - "description": "Her samler du innspillene og ser hva som er tatt med i velets høringssvar.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "horingsinstans": { - "button": "Inviter", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Høringsinstans", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva sier vi i høringssvaret?" - }, - "questions/index.yaml": { - "description": "Velforeningen for Tomter ble stiftet i 1947 og driftes på frivillig basis av lokalbefolkningen. Enhver henvendelse som fremsettes her, blir videreformidlet til komité eller styret for videre saksbehandling, og status i den enkelte sak kan følges av vedkommende selv.", - "doors": { - "bidra": { - "button": "Bli med", - "description": "Det foreligger behov for bemanning i forbindelse med 17. mai-arrangementet, dugnader samt komitéarbeid. Enhver bidragsyting, uavhengig av omfang, vil kunne mottas.", - "for_whom": "Deg som vil gjøre en innsats", - "heading": "Vedrørende deltakelse og frivillig innsats", - "icon": "hand-helping" - }, - "medlem": { - "button": "Til medlemskap", - "description": "Innmelding, innbetaling av kontingent samt melding om flytting, endret e-postadresse eller utmelding kan foretas her.", - "for_whom": "Deg som bor i Tomter", - "heading": "Vedrørende medlemskap og endring av registrerte opplysninger", - "icon": "house" - }, - "melde-fra": { - "button": "Meld fra", - "description": "Dersom det er konstatert farlige forhold i trafikken, eller skader på lekeplass eller elvesti, bes dette meldt inn.", - "for_whom": "Deg som har sett noe som bør fikses", - "heading": "Vedrørende melding om forhold som bør utbedres", - "icon": "alert-triangle" - }, - "naboer": { - "button": "Til nabohjelp", - "description": "Ved behov for bistand til snømåking, innkjøp eller transport, eller dersom det kan tilbys bistand overfor andre, kan kontakt etableres her.", - "for_whom": "Deg som trenger hjelp eller kan gi en hånd", - "heading": "Vedrørende bistand fra naboer, eventuelt tilbud om egen bistand", - "icon": "heart-handshake" - } - }, - "needs": { - "horingsinnspill": { - "button": "Send innspill", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "encouragement": "Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen.", - "form_description": "Fortell hvilken sak det gjelder og hva du mener.", - "form_title": "Send et høringsinnspill", - "heading": "Få din mening med i høringssvaret", - "hints": { - "innspill": "Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen.", - "navn": "Kari Nordmann", - "sak": "Reguleringsplan for Tomterveien" - }, - "icon": "megaphone", - "labels": { - "innspill": "Hva mener du?", - "navn": "Navn", - "sak": "Hvilken sak gjelder det?" - }, - "road_description": "Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - } - }, - "opener": { - "description": "Velforeningen for Tomter ble stiftet i 1947 og driftes på frivillig basis av lokalbefolkningen. Enhver henvendelse som fremsettes her, blir videreformidlet til komité eller styret for videre saksbehandling, og status i den enkelte sak kan følges av vedkommende selv.", - "features": { - "medlem": { - "description": "Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil.", - "heading": "Et vel som taler for Tomter, og et medlemskap du styrer selv", - "icon": "users" - }, - "nabo": { - "description": "Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.", - "heading": "En nabo som stiller opp når du trenger det", - "icon": "handshake" - } - }, - "heading": null - }, - "question": "Hva omfatter Tomter Vels virksomhet, og hvilke tjenester kan det anmodes om her?", - "shopping": { - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.", - "heading": "Se deg rundt først", - "items": { - "status-anleggsfeil": { - "description": "Lekeplassen og stien: det som er meldt, og det som er fikset.", - "heading": "Alt som er meldt ødelagt", - "icon": "list" - }, - "status-oppslag": { - "description": "Det naboene har å låne ut, og det de trenger å låne.", - "heading": "Oppslagstavla", - "icon": "list" - }, - "status-trafikkmeldinger": { - "description": "Farlige steder naboene har meldt, og hva velet har gjort med dem.", - "heading": "Alle trafikkmeldinger", - "icon": "list" - } - } - } - }, - "questions/kasserer/index.yaml": { - "buckets": { - "husstander": { - "description": "Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem.", - "heading": "Nye medlemmer som venter på registrering", - "moves": { - "open->betalt": "Registrer betaling", - "open->utmeldt": "Meld ut" - } - }, - "medlemsendringer": { - "description": "Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert.", - "heading": "Endringer som venter på å bli registrert", - "moves": { - "open->oppdatert": "Registrer endring" - } - }, - "utlegg": { - "description": "Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling.", - "heading": "Utlegg som venter på deg", - "moves": { - "godkjent->avvist": "Avvis likevel", - "godkjent->utbetalt": "Merk som utbetalt", - "open->avvist": "Avvis utlegg", - "open->godkjent": "Godkjenn utlegg" - } - } - }, - "confirm": "Lagre", - "description": "Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "kasserer": { - "button": "Inviter", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i kassereren", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva venter på meg som kasserer akkurat nå?" - }, - "questions/komiteer/index.yaml": { - "buckets": {}, - "confirm": "Confirm", - "description": "Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "komiteer": { - "button": "Inviter", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i komiteene", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": { - "utlegg": { - "button": "Send utlegg", - "description": "Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake.", - "heading": "Få tilbake det du har lagt ut" - } - }, - "question": "Hva står ubehandlet i komiteen din nå?" - }, - "questions/komiteer/utlegg-sent.yaml": { - "back": "Til forsiden", - "description": "Utlegget er sendt til kasserer. Du får beskjed når det er sjekket.", - "next_description": "Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga.", - "next_heading": "Pengene kommer på konto", - "question": "Hva skjer med utlegget mitt nå?" - }, - "questions/komiteer/utlegg.yaml": { - "button": "Send inn", - "description": "Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten.", - "encouragement": "Legg ved bilag om du har det, så går det raskere.", - "form_description": "Ha kvittering eller bilag klart før du fyller ut.", - "form_title": "Krav om refusjon", - "heading": "Få pengene tilbake", - "hints": { - "belop": "450 kr", - "hva": "Kaffe og kjeks til dugnaden", - "navn": "Kari Nordmann" - }, - "icon": "receipt", - "labels": { - "belop": "Beløp", - "hva": "Hva gjaldt det", - "navn": "Navn" - }, - "page_description": "Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake.", - "question": "Har du lagt ut penger for komiteen og vil ha dem tilbake?", - "road_description": "Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor.", - "road_icon": "lucide:wallet", - "road_title": "Fra krav til utbetaling", - "who_description": "Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster.", - "who_icon": "lucide:coins", - "who_title": "Kasserer ser dette" - }, - "questions/lekeplasser/index.yaml": { - "buckets": { - "anleggsfeil": { - "description": "Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses.", - "heading": "Det som er meldt inn av skader", - "moves": { - "open->tatt_tak_i": "Ta tak i saken", - "tatt_tak_i->utbedret": "Merk som utbedret" - } - } - }, - "confirm": "Lagre", - "description": "Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "lekeplasser": { - "button": "Inviter", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Leke- og møteplasser", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva må fikses på lekeplassene og stien nå?" - }, - "questions/medlem/index.yaml": { - "description": "Bli medlem av Tomter Vel, eller oppdater opplysningene dine hvis du allerede er medlem.", - "needs": { - "bli-medlem": { - "button": "Bli medlem", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.", - "encouragement": "Kasserer sender deg kontingenten på e-post rett etterpå.", - "form_description": "Ha adressen i Tomter og en e-post du bruker klar.", - "form_title": "Meld deg inn", - "heading": "Bli medlem av Tomter Vel", - "hints": { - "adresse": "Tomterveien 12", - "email": "", - "navn": "Ola Nordmann", - "telefon": "123 45 678" - }, - "icon": "user-plus", - "labels": { - "adresse": "Adresse", - "email": "Email", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem.", - "road_icon": "lucide:coins", - "road_title": "Etter innmelding", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "who_title": "Hvem svarer deg" - }, - "endre-medlemskap": { - "button": "Send endring", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.", - "encouragement": "Det tar bare et par minutter, og kasserer ordner resten.", - "form_description": "Skriv navnet ditt og hva som er nytt.", - "form_title": "Endre medlemskap", - "heading": "Oppdater eller avslutt medlemskapet", - "hints": { - "adresse": "Ny adresse i Tomter", - "hva_er_nytt": "Ny e-post, ny adresse, eller ønske om utmelding", - "navn": "Ola Nordmann" - }, - "icon": "pencil", - "labels": { - "adresse": "Adresse", - "hva_er_nytt": "Hva vil du endre?", - "navn": "Navn" - }, - "road_description": "Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om.", - "road_icon": "lucide:refresh-cw", - "road_title": "Etter du sender inn", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "who_title": "Hvem svarer deg" - } - }, - "question": "Vil du bli medlem, eller endre medlemskapet ditt?" - }, - "questions/melde-fra/index.yaml": { - "description": "Har du sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien? Her sier du fra til velet.", - "needs": { - "anleggsfeil": { - "button": "Send inn", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.", - "encouragement": "Det holder med noen ord om hva du så og hvor.", - "form_description": "Fortell hva som er ødelagt og omtrent hvor det er.", - "form_title": "Meld anleggsfeil", - "heading": "Meld fra om noe ødelagt", - "hints": { - "hva": "Løs planke på gjerdet ved husken", - "hvor": "" - }, - "icon": "construction", - "labels": { - "hva": "Hva er ødelagt", - "hvor": "Hvor er det" - }, - "road_description": "Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet.", - "road_icon": "lucide:wrench", - "road_title": "Hva skjer videre", - "who_description": "Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:hammer", - "who_title": "Hvem leser dette" - }, - "trafikkfare": { - "button": "Send inn", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.", - "encouragement": "Bare noen linjer om hva og hvor er nok til at vi kan følge opp.", - "form_description": "Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer.", - "form_title": "Meld trafikkfare", - "heading": "Meld fra om en trafikkfare", - "hints": { - "epost": "ola.nordmann@epost.no", - "hva": "Dårlig sikt i krysset, biler kjører fort", - "hvor": "Krysset Tomterveien / Elvestien" - }, - "icon": "alert-triangle", - "labels": { - "epost": "E-post (valgfritt)", - "hva": "Hva så du", - "hvor": "Hvor var det" - }, - "road_description": "Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:car", - "who_title": "Hvem leser dette" - } - }, - "question": "Hva vil du melde fra om?" - }, - "questions/naboer/index.yaml": { - "description": "Godt naboskap gjør hverdagen lettere. Trenger du en hånd, kan gi en, eller har noe å låne bort?", - "needs": { - "dele-utstyr": { - "button": "Legg ut oppslag", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.", - "encouragement": "Vi legger det ut så naboene kan se det.", - "form_description": "Skriv kort hva det gjelder, så folk skjønner det med en gang.", - "form_title": "Lån eller utlån", - "heading": "Lån ut eller lån av naboen", - "hints": { - "email": "ola@eksempel.no", - "har_eller_trenger": "", - "hva": "Hengerfeste til bil, tilhenger, stige", - "navn": "Ola Nordmann" - }, - "icon": "package", - "labels": { - "email": "E-post", - "har_eller_trenger": "Har du eller trenger du", - "hva": "Hva gjelder det", - "navn": "Navn" - }, - "road_description": "Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen.", - "road_icon": "lucide:clipboard-list", - "road_title": "Fra oppslag til avtale", - "who_description": "Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem ser dette" - }, - "kan-hjelpe": { - "button": "Meld deg", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.", - "encouragement": "Du blir bare kontaktet når noe passer for deg.", - "form_description": "Fortell kort hva du kan bidra med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli spurt når en nabo trenger en hånd", - "hints": { - "email": "kari@eksempel.no", - "kan": "", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "hand-helping", - "labels": { - "email": "E-post", - "kan": "Hva kan du hjelpe med", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra.", - "road_icon": "lucide:user-check", - "road_title": "Fra påmelding til spørsmål", - "who_description": "Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no.", - "who_icon": "lucide:heart-handshake", - "who_title": "Hvem ser dette" - }, - "trenger-hjelp": { - "button": "Be om hjelp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.", - "encouragement": "Vi finner en nabo som kan stille opp så fort som mulig.", - "form_description": "Skriv kort hva du trenger hjelp til.", - "form_title": "Be om en hånd", - "heading": "Få en nabo til å stille opp", - "hints": { - "adresse": "Tomterveien 12", - "email": "kari@eksempel.no", - "hva": "Måke snø på trappa, handle inn litt mat", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "heart-handshake", - "labels": { - "adresse": "Adresse", - "email": "E-post", - "hva": "Hva trenger du hjelp til", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed.", - "road_icon": "lucide:hand-helping", - "road_title": "Fra melding til hjelp", - "who_description": "Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem ser dette" - } - }, - "question": "Trenger du en hånd, eller kan du gi en?" - }, - "questions/nabohjelp/index.yaml": { - "buckets": { - "hjelpebehov": { - "description": "Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe.", - "heading": "Naboer som trenger en hånd", - "moves": { - "formidlet->ikke_lost": "Meld ikke løst", - "formidlet->ordnet": "Meld ordnet", - "open->formidlet": "Koble til nabo", - "open->ikke_lost": "Meld ikke løst" - } - }, - "hjelpere": { - "description": "Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem.", - "heading": "Naboer som kan stille opp", - "moves": { - "open->registrert": "Registrer som hjelper", - "open->trukket": "Meld trukket" - } - } - }, - "confirm": "Lagre", - "description": "Her kobler du naboer som trenger hjelp med dem som kan stille opp.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "nabohjelp": { - "button": "Inviter", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i nabohjelpen", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvem trenger hjelp, og hvem kan stille opp?" - }, - "questions/received/anleggsfeil.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt.", - "next_description": "Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg.", - "next_heading": "Komiteen tar tak i det", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se meldte feil", - "description": "Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet.", - "heading": "Se andre meldte feil" - } - }, - "questions/received/bli-medlem.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert.", - "next_description": "Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten.", - "next_heading": "Kasserer sender deg betalingsinfo", - "question": "Hva skjer etter at jeg har meldt meg inn?" - }, - "questions/received/dele-utstyr.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan.", - "next_description": "En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne.", - "next_heading": "Styret legger det ut for deg", - "question": "Hva skjer med det jeg har lagt ut?", - "see_all": { - "button": "Se hva naboer deler", - "description": "Se hva andre i Tomter har lagt ut til utlån akkurat nå.", - "heading": "Se alt naboene deler" - } - }, - "questions/received/endre-medlemskap.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut.", - "next_description": "Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg.", - "next_heading": "Kasserer retter opp opplysningene", - "question": "Hva skjer nå med det jeg meldte inn?" - }, - "questions/received/hjelpe-til.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg.", - "next_description": "Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden.", - "next_heading": "Komiteen tar kontakt", - "question": "Hva skjer nå som jeg har meldt meg?" - }, - "questions/received/horingsinnspill.yaml": { - "back": "Tilbake til forsiden", - "description": "Innspillet ditt er sendt til høringsinstansen i velet.", - "next_description": "De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med.", - "next_heading": "Innspillet ditt inn i vurderingen", - "question": "Hva skjer med det jeg har sagt om saken?" - }, - "questions/received/kan-hjelpe.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe.", - "next_description": "Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte.", - "next_heading": "Du blir kontaktet ved behov", - "question": "Hva skjer nå som jeg har registrert meg?" - }, - "questions/received/komite.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg.", - "next_description": "Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer.", - "next_heading": "Vi finner riktig komité til deg", - "question": "Hva skjer nå som jeg har meldt interesse for en komité?" - }, - "questions/received/trafikkfare.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din om trafikkfaren er sendt til komiteen for trafikk.", - "next_description": "Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs.", - "next_heading": "Trafikkomiteen tar den videre", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se andre trafikkfarer", - "description": "Se hva andre har meldt inn, og status på sakene.", - "heading": "Andre meldte trafikkfarer" - } - }, - "questions/received/trenger-hjelp.yaml": { - "back": "Til forsiden", - "description": "Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp.", - "next_description": "Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer.", - "next_heading": "Vi finner en nabo til deg", - "question": "Hva skjer nå som jeg har bedt om hjelp?" - }, - "questions/status/anleggsfeil/index.yaml": { - "back": "Tilbake til meldinger", - "description": "Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet.", - "heading": "Status på meldte anleggsfeil", - "list_description": "Alle meldinger er åpne for alle å se.", - "question": "Hva skjer med det jeg har meldt fra om?" - }, - "questions/status/oppslag/index.yaml": { - "back": "Tilbake", - "description": "Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet.", - "heading": "Oversikt over det som er meldt inn", - "list_description": "Åpen liste – navn og detaljer vises ikke.", - "question": "Hva er sendt inn, og hvor langt har det kommet?" - }, - "questions/status/trafikkmeldinger/index.yaml": { - "back": "Tilbake", - "description": "Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet.", - "heading": "Trafikkmeldinger og status", - "list_description": "Alle meldinger som er sendt inn, og hvor de står nå.", - "question": "Er det meldt fra om noe farlig i trafikken der jeg bor?" - }, - "questions/styret/index.yaml": { - "buckets": { - "innspill": { - "description": "Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar.", - "heading": "Høringsinnspill fra beboerne", - "moves": {} - }, - "komitesoknader": { - "description": "Her ligger alle som har meldt seg til en komité og venter på en plass.", - "heading": "Søknader til komiteene", - "moves": { - "open->avslatt": "Avslå søknaden", - "open->plassert": "Sett i komité" - } - }, - "oppslag": { - "description": "Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut.", - "heading": "Utstyr til utlån blant naboer", - "moves": { - "open->lagt_ut": "Legg ut oppslaget", - "open->tatt_ned": "Ta ned oppslaget" - } - }, - "trafikkmeldinger": { - "description": "Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier.", - "heading": "Meldinger om trafikkfarer", - "moves": {} - } - }, - "confirm": "Lagre", - "description": "Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "arrangementer": { - "button": "Inviter", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Arrangementer", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "horingsinstans": { - "button": "Inviter", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Høringsinstans", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "kasserer": { - "button": "Inviter", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i kassereren", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "komiteer": { - "button": "Inviter", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i komiteene", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "lekeplasser": { - "button": "Inviter", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Leke- og møteplasser", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "nabohjelp": { - "button": "Inviter", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i nabohjelpen", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "styret": { - "button": "Inviter", - "description": "De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i styret", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "trafikk": { - "button": "Inviter", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Trafikkforhold", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva venter på styret akkurat nå?" - }, - "questions/trafikk/index.yaml": { - "buckets": { - "trafikkmeldinger": { - "description": "Farlige steder i trafikken som naboer har meldt inn.", - "heading": "Farlige steder i trafikken", - "moves": { - "open->avvist": "Avvis meldingen", - "open->tatt_opp": "Ta opp med kommunen", - "tatt_opp->avvist": "Avvis meldingen", - "tatt_opp->ordnet": "Meld ordnet" - } - } - }, - "confirm": "Lagre", - "description": "Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "trafikk": { - "button": "Inviter", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Trafikkforhold", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvilke trafikkfarer må følges opp?" - } -} diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/words-r2.json b/vendor/trainer/runs/tomtervel-opener-2026-09-23/words-r2.json deleted file mode 100644 index 44c0963..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/words-r2.json +++ /dev/null @@ -1,953 +0,0 @@ -{ - "aggregates.yaml": { - "hjelpebehov": { - "formidlet": { - "body": "Vi har funnet en nabo som kan hjelpe. De tar kontakt med deg direkte.\n\nDet du kan gjøre nå: {site}/decide/trenger-hjelp?chain={chain}&email={email}", - "subject": "En nabo er koblet på" - }, - "open": { - "body": "Vi har mottatt det du trenger hjelp til, og ser etter en nabo som kan stille opp. Du hører fra oss så snart vi har funnet noen.", - "subject": "Vi leter etter en nabo til deg" - }, - "ordnet": { - "body": "Godt å høre at det ordnet seg. Takk for at du sa fra, og lykke til videre.", - "subject": "Bra det løste seg" - } - }, - "husstander": { - "betalt": { - "body": "Kontingenten er registrert betalt. Du er nå medlem av Tomter Vel - velkommen med!", - "subject": "Medlemskapet er i orden" - }, - "open": { - "body": "Takk for at du vil bli medlem. Du får en betalingsoppfordring med kontonummer og beløp så snart kasserer har sett på saken.\n\nDet du kan gjøre nå: {site}/decide/bli-medlem?chain={chain}&email={email}", - "subject": "Nesten i mål som medlem" - } - }, - "oppslag": { - "lagt_ut": { - "body": "Oppslaget ditt er lagt ut, og naboene kan nå se det.", - "subject": "Oppslaget er synlig for naboene" - } - } - }, - "questions/arrangementer/index.yaml": { - "buckets": { - "frivillige": { - "description": "Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem.", - "heading": "Frivillige til arrangementer og dugnad", - "moves": { - "kontaktet->satt_opp": "Sett opp", - "kontaktet->takket_nei": "Takket nei", - "open->kontaktet": "Merk som kontaktet", - "open->takket_nei": "Takket nei" - } - } - }, - "confirm": "Lagre", - "description": "Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "arrangementer": { - "button": "Inviter", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Arrangementer", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp?" - }, - "questions/bidra/index.yaml": { - "description": "Vil du stille opp for nabolaget? Her melder du deg til dugnad og arrangementer, eller til en av komiteene.", - "needs": { - "hjelpe-til": { - "button": "Meld meg på", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.", - "encouragement": "Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg.", - "form_description": "Fortell kort hva du kan hjelpe til med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli med på dugnad eller arrangement", - "hints": { - "hva": "", - "navn": "Kari Nordmann", - "telefon": "912 34 567" - }, - "icon": "hand-helping", - "labels": { - "hva": "Hva kan du hjelpe til med?", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit.", - "road_icon": "lucide:clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - }, - "komite": { - "button": "Meld interesse", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i.", - "encouragement": "Det tar bare et minutt, og noen fra styret svarer deg.", - "form_description": "Skriv hvilken komité du er interessert i.", - "form_title": "Meld deg til en komité", - "heading": "Sitt i en komité som betyr noe for deg", - "hints": { - "epost": "kari@eksempel.no", - "komite": "", - "navn": "Kari Nordmann" - }, - "icon": "users", - "labels": { - "epost": "E-post", - "komite": "Hvilken komité?", - "navn": "Navn" - }, - "road_description": "Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå.", - "road_icon": "lucide:clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:handshake", - "who_title": "Hvem leser dette" - } - }, - "question": "Vil du hjelpe til i nabolaget?" - }, - "questions/decide/bli-medlem.yaml": { - "description": "", - "moves": { - "utmeldt": { - "button": "Utmeldt", - "description": "", - "heading": "Utmeldt" - } - }, - "question": "What would you like to do?" - }, - "questions/decide/dele-utstyr.yaml": { - "description": "Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån.", - "moves": { - "tatt_ned": { - "button": "Ta ned oppslaget", - "description": "Oppslaget fjernes fra siden, så ingen flere spør om å låne det.", - "heading": "Meld at utstyret er tatt ned" - } - }, - "question": "Skal oppslaget om utstyret fortsatt stå ute?" - }, - "questions/decide/kan-hjelpe.yaml": { - "description": "Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå.", - "moves": { - "trukket": { - "button": "Trekk meg", - "description": "Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre.", - "heading": "Ta en pause fra nabohjelpen" - } - }, - "question": "Vil du fortsatt kunne bli spurt om å hjelpe en nabo?" - }, - "questions/decide/trenger-hjelp.yaml": { - "description": "Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet.", - "moves": { - "ordnet": { - "button": "Merk som ordnet", - "description": "Da vet vi at naboen har fått hjelpen sin, og saken lukkes.", - "heading": "Meld fra at hjelpen er gitt" - } - }, - "question": "Har naboen fått hjelpen de trengte?" - }, - "questions/horingsinstans/index.yaml": { - "buckets": { - "innspill": { - "description": "Her ligger innspill fra beboere til saker kommunen har på høring.", - "heading": "Innspill til høringssvar", - "moves": { - "open->ikke_tatt_med": "Ikke tatt med", - "open->tatt_med": "Tatt med i svaret" - } - } - }, - "confirm": "Send svar", - "description": "Her samler du innspillene og ser hva som er tatt med i velets høringssvar.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "horingsinstans": { - "button": "Inviter", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Høringsinstans", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva sier vi i høringssvaret?" - }, - "questions/index.yaml": { - "description": "Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står.", - "doors": { - "bidra": { - "button": "Bli med", - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.", - "for_whom": "Deg som vil gjøre en innsats", - "heading": "Bli med og gjør en innsats", - "icon": "hand-helping" - }, - "medlem": { - "button": "Til medlemskap", - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.", - "for_whom": "Deg som bor i Tomter", - "heading": "Bli medlem eller endre opplysningene dine", - "icon": "house" - }, - "melde-fra": { - "button": "Meld fra", - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed.", - "for_whom": "Deg som har sett noe som bør fikses", - "heading": "Meld fra om noe som bør fikses", - "icon": "alert-triangle" - }, - "naboer": { - "button": "Til nabohjelp", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.", - "for_whom": "Deg som trenger hjelp eller kan gi en hånd", - "heading": "Få hjelp av naboer, eller gi en hånd selv", - "icon": "heart-handshake" - } - }, - "needs": { - "horingsinnspill": { - "button": "Send innspill", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "encouragement": "Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen.", - "form_description": "Fortell hvilken sak det gjelder og hva du mener.", - "form_title": "Send et høringsinnspill", - "heading": "Få din mening med i høringssvaret", - "hints": { - "innspill": "Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen.", - "navn": "Kari Nordmann", - "sak": "Reguleringsplan for Tomterveien" - }, - "icon": "megaphone", - "labels": { - "innspill": "Hva mener du?", - "navn": "Navn", - "sak": "Hvilken sak gjelder det?" - }, - "road_description": "Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - } - }, - "opener": { - "description": "To ting først. Resten står lenger ned på siden.", - "features": { - "medlem": { - "description": "Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil.", - "heading": "Et vel som taler for Tomter, og et medlemskap du styrer selv", - "icon": "users" - }, - "nabo": { - "description": "Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.", - "heading": "En nabo som stiller opp når du trenger det", - "icon": "handshake" - } - }, - "heading": "Dette gjør velet" - }, - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "shopping": { - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.", - "heading": "Se deg rundt først", - "items": { - "status-anleggsfeil": { - "description": "Lekeplassen og stien: det som er meldt, og det som er fikset.", - "heading": "Alt som er meldt ødelagt", - "icon": "list" - }, - "status-oppslag": { - "description": "Det naboene har å låne ut, og det de trenger å låne.", - "heading": "Oppslagstavla", - "icon": "list" - }, - "status-trafikkmeldinger": { - "description": "Farlige steder naboene har meldt, og hva velet har gjort med dem.", - "heading": "Alle trafikkmeldinger", - "icon": "list" - } - } - } - }, - "questions/kasserer/index.yaml": { - "buckets": { - "husstander": { - "description": "Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem.", - "heading": "Nye medlemmer som venter på registrering", - "moves": { - "open->betalt": "Registrer betaling", - "open->utmeldt": "Meld ut" - } - }, - "medlemsendringer": { - "description": "Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert.", - "heading": "Endringer som venter på å bli registrert", - "moves": { - "open->oppdatert": "Registrer endring" - } - }, - "utlegg": { - "description": "Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling.", - "heading": "Utlegg som venter på deg", - "moves": { - "godkjent->avvist": "Avvis likevel", - "godkjent->utbetalt": "Merk som utbetalt", - "open->avvist": "Avvis utlegg", - "open->godkjent": "Godkjenn utlegg" - } - } - }, - "confirm": "Lagre", - "description": "Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "kasserer": { - "button": "Inviter", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i kassereren", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva venter på meg som kasserer akkurat nå?" - }, - "questions/komiteer/index.yaml": { - "buckets": {}, - "confirm": "Confirm", - "description": "Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "komiteer": { - "button": "Inviter", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i komiteene", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": { - "utlegg": { - "button": "Send utlegg", - "description": "Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake.", - "heading": "Få tilbake det du har lagt ut" - } - }, - "question": "Hva står ubehandlet i komiteen din nå?" - }, - "questions/komiteer/utlegg-sent.yaml": { - "back": "Til forsiden", - "description": "Utlegget er sendt til kasserer. Du får beskjed når det er sjekket.", - "next_description": "Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga.", - "next_heading": "Pengene kommer på konto", - "question": "Hva skjer med utlegget mitt nå?" - }, - "questions/komiteer/utlegg.yaml": { - "button": "Send inn", - "description": "Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten.", - "encouragement": "Legg ved bilag om du har det, så går det raskere.", - "form_description": "Ha kvittering eller bilag klart før du fyller ut.", - "form_title": "Krav om refusjon", - "heading": "Få pengene tilbake", - "hints": { - "belop": "450 kr", - "hva": "Kaffe og kjeks til dugnaden", - "navn": "Kari Nordmann" - }, - "icon": "receipt", - "labels": { - "belop": "Beløp", - "hva": "Hva gjaldt det", - "navn": "Navn" - }, - "page_description": "Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake.", - "question": "Har du lagt ut penger for komiteen og vil ha dem tilbake?", - "road_description": "Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor.", - "road_icon": "lucide:wallet", - "road_title": "Fra krav til utbetaling", - "who_description": "Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster.", - "who_icon": "lucide:coins", - "who_title": "Kasserer ser dette" - }, - "questions/lekeplasser/index.yaml": { - "buckets": { - "anleggsfeil": { - "description": "Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses.", - "heading": "Det som er meldt inn av skader", - "moves": { - "open->tatt_tak_i": "Ta tak i saken", - "tatt_tak_i->utbedret": "Merk som utbedret" - } - } - }, - "confirm": "Lagre", - "description": "Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "lekeplasser": { - "button": "Inviter", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Leke- og møteplasser", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva må fikses på lekeplassene og stien nå?" - }, - "questions/medlem/index.yaml": { - "description": "Bli medlem av Tomter Vel, eller oppdater opplysningene dine hvis du allerede er medlem.", - "needs": { - "bli-medlem": { - "button": "Bli medlem", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.", - "encouragement": "Kasserer sender deg kontingenten på e-post rett etterpå.", - "form_description": "Ha adressen i Tomter og en e-post du bruker klar.", - "form_title": "Meld deg inn", - "heading": "Bli medlem av Tomter Vel", - "hints": { - "adresse": "Tomterveien 12", - "email": "", - "navn": "Ola Nordmann", - "telefon": "123 45 678" - }, - "icon": "user-plus", - "labels": { - "adresse": "Adresse", - "email": "Email", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem.", - "road_icon": "lucide:coins", - "road_title": "Etter innmelding", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "who_title": "Hvem svarer deg" - }, - "endre-medlemskap": { - "button": "Send endring", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.", - "encouragement": "Det tar bare et par minutter, og kasserer ordner resten.", - "form_description": "Skriv navnet ditt og hva som er nytt.", - "form_title": "Endre medlemskap", - "heading": "Oppdater eller avslutt medlemskapet", - "hints": { - "adresse": "Ny adresse i Tomter", - "hva_er_nytt": "Ny e-post, ny adresse, eller ønske om utmelding", - "navn": "Ola Nordmann" - }, - "icon": "pencil", - "labels": { - "adresse": "Adresse", - "hva_er_nytt": "Hva vil du endre?", - "navn": "Navn" - }, - "road_description": "Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om.", - "road_icon": "lucide:refresh-cw", - "road_title": "Etter du sender inn", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "who_title": "Hvem svarer deg" - } - }, - "question": "Vil du bli medlem, eller endre medlemskapet ditt?" - }, - "questions/melde-fra/index.yaml": { - "description": "Har du sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien? Her sier du fra til velet.", - "needs": { - "anleggsfeil": { - "button": "Send inn", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.", - "encouragement": "Det holder med noen ord om hva du så og hvor.", - "form_description": "Fortell hva som er ødelagt og omtrent hvor det er.", - "form_title": "Meld anleggsfeil", - "heading": "Meld fra om noe ødelagt", - "hints": { - "hva": "Løs planke på gjerdet ved husken", - "hvor": "" - }, - "icon": "construction", - "labels": { - "hva": "Hva er ødelagt", - "hvor": "Hvor er det" - }, - "road_description": "Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet.", - "road_icon": "lucide:wrench", - "road_title": "Hva skjer videre", - "who_description": "Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:hammer", - "who_title": "Hvem leser dette" - }, - "trafikkfare": { - "button": "Send inn", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.", - "encouragement": "Bare noen linjer om hva og hvor er nok til at vi kan følge opp.", - "form_description": "Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer.", - "form_title": "Meld trafikkfare", - "heading": "Meld fra om en trafikkfare", - "hints": { - "epost": "ola.nordmann@epost.no", - "hva": "Dårlig sikt i krysset, biler kjører fort", - "hvor": "Krysset Tomterveien / Elvestien" - }, - "icon": "alert-triangle", - "labels": { - "epost": "E-post (valgfritt)", - "hva": "Hva så du", - "hvor": "Hvor var det" - }, - "road_description": "Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:car", - "who_title": "Hvem leser dette" - } - }, - "question": "Hva vil du melde fra om?" - }, - "questions/naboer/index.yaml": { - "description": "Godt naboskap gjør hverdagen lettere. Trenger du en hånd, kan gi en, eller har noe å låne bort?", - "needs": { - "dele-utstyr": { - "button": "Legg ut oppslag", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.", - "encouragement": "Vi legger det ut så naboene kan se det.", - "form_description": "Skriv kort hva det gjelder, så folk skjønner det med en gang.", - "form_title": "Lån eller utlån", - "heading": "Lån ut eller lån av naboen", - "hints": { - "email": "ola@eksempel.no", - "har_eller_trenger": "", - "hva": "Hengerfeste til bil, tilhenger, stige", - "navn": "Ola Nordmann" - }, - "icon": "package", - "labels": { - "email": "E-post", - "har_eller_trenger": "Har du eller trenger du", - "hva": "Hva gjelder det", - "navn": "Navn" - }, - "road_description": "Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen.", - "road_icon": "lucide:clipboard-list", - "road_title": "Fra oppslag til avtale", - "who_description": "Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem ser dette" - }, - "kan-hjelpe": { - "button": "Meld deg", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.", - "encouragement": "Du blir bare kontaktet når noe passer for deg.", - "form_description": "Fortell kort hva du kan bidra med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli spurt når en nabo trenger en hånd", - "hints": { - "email": "kari@eksempel.no", - "kan": "", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "hand-helping", - "labels": { - "email": "E-post", - "kan": "Hva kan du hjelpe med", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra.", - "road_icon": "lucide:user-check", - "road_title": "Fra påmelding til spørsmål", - "who_description": "Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no.", - "who_icon": "lucide:heart-handshake", - "who_title": "Hvem ser dette" - }, - "trenger-hjelp": { - "button": "Be om hjelp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.", - "encouragement": "Vi finner en nabo som kan stille opp så fort som mulig.", - "form_description": "Skriv kort hva du trenger hjelp til.", - "form_title": "Be om en hånd", - "heading": "Få en nabo til å stille opp", - "hints": { - "adresse": "Tomterveien 12", - "email": "kari@eksempel.no", - "hva": "Måke snø på trappa, handle inn litt mat", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "heart-handshake", - "labels": { - "adresse": "Adresse", - "email": "E-post", - "hva": "Hva trenger du hjelp til", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed.", - "road_icon": "lucide:hand-helping", - "road_title": "Fra melding til hjelp", - "who_description": "Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem ser dette" - } - }, - "question": "Trenger du en hånd, eller kan du gi en?" - }, - "questions/nabohjelp/index.yaml": { - "buckets": { - "hjelpebehov": { - "description": "Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe.", - "heading": "Naboer som trenger en hånd", - "moves": { - "formidlet->ikke_lost": "Meld ikke løst", - "formidlet->ordnet": "Meld ordnet", - "open->formidlet": "Koble til nabo", - "open->ikke_lost": "Meld ikke løst" - } - }, - "hjelpere": { - "description": "Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem.", - "heading": "Naboer som kan stille opp", - "moves": { - "open->registrert": "Registrer som hjelper", - "open->trukket": "Meld trukket" - } - } - }, - "confirm": "Lagre", - "description": "Her kobler du naboer som trenger hjelp med dem som kan stille opp.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "nabohjelp": { - "button": "Inviter", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i nabohjelpen", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvem trenger hjelp, og hvem kan stille opp?" - }, - "questions/received/anleggsfeil.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt.", - "next_description": "Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg.", - "next_heading": "Komiteen tar tak i det", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se meldte feil", - "description": "Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet.", - "heading": "Se andre meldte feil" - } - }, - "questions/received/bli-medlem.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert.", - "next_description": "Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten.", - "next_heading": "Kasserer sender deg betalingsinfo", - "question": "Hva skjer etter at jeg har meldt meg inn?" - }, - "questions/received/dele-utstyr.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan.", - "next_description": "En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne.", - "next_heading": "Styret legger det ut for deg", - "question": "Hva skjer med det jeg har lagt ut?", - "see_all": { - "button": "Se hva naboer deler", - "description": "Se hva andre i Tomter har lagt ut til utlån akkurat nå.", - "heading": "Se alt naboene deler" - } - }, - "questions/received/endre-medlemskap.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut.", - "next_description": "Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg.", - "next_heading": "Kasserer retter opp opplysningene", - "question": "Hva skjer nå med det jeg meldte inn?" - }, - "questions/received/hjelpe-til.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg.", - "next_description": "Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden.", - "next_heading": "Komiteen tar kontakt", - "question": "Hva skjer nå som jeg har meldt meg?" - }, - "questions/received/horingsinnspill.yaml": { - "back": "Tilbake til forsiden", - "description": "Innspillet ditt er sendt til høringsinstansen i velet.", - "next_description": "De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med.", - "next_heading": "Innspillet ditt inn i vurderingen", - "question": "Hva skjer med det jeg har sagt om saken?" - }, - "questions/received/kan-hjelpe.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe.", - "next_description": "Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte.", - "next_heading": "Du blir kontaktet ved behov", - "question": "Hva skjer nå som jeg har registrert meg?" - }, - "questions/received/komite.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg.", - "next_description": "Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer.", - "next_heading": "Vi finner riktig komité til deg", - "question": "Hva skjer nå som jeg har meldt interesse for en komité?" - }, - "questions/received/trafikkfare.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din om trafikkfaren er sendt til komiteen for trafikk.", - "next_description": "Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs.", - "next_heading": "Trafikkomiteen tar den videre", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se andre trafikkfarer", - "description": "Se hva andre har meldt inn, og status på sakene.", - "heading": "Andre meldte trafikkfarer" - } - }, - "questions/received/trenger-hjelp.yaml": { - "back": "Til forsiden", - "description": "Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp.", - "next_description": "Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer.", - "next_heading": "Vi finner en nabo til deg", - "question": "Hva skjer nå som jeg har bedt om hjelp?" - }, - "questions/status/anleggsfeil/index.yaml": { - "back": "Tilbake til meldinger", - "description": "Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet.", - "heading": "Status på meldte anleggsfeil", - "list_description": "Alle meldinger er åpne for alle å se.", - "question": "Hva skjer med det jeg har meldt fra om?" - }, - "questions/status/oppslag/index.yaml": { - "back": "Tilbake", - "description": "Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet.", - "heading": "Oversikt over det som er meldt inn", - "list_description": "Åpen liste – navn og detaljer vises ikke.", - "question": "Hva er sendt inn, og hvor langt har det kommet?" - }, - "questions/status/trafikkmeldinger/index.yaml": { - "back": "Tilbake", - "description": "Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet.", - "heading": "Trafikkmeldinger og status", - "list_description": "Alle meldinger som er sendt inn, og hvor de står nå.", - "question": "Er det meldt fra om noe farlig i trafikken der jeg bor?" - }, - "questions/styret/index.yaml": { - "buckets": { - "innspill": { - "description": "Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar.", - "heading": "Høringsinnspill fra beboerne", - "moves": {} - }, - "komitesoknader": { - "description": "Her ligger alle som har meldt seg til en komité og venter på en plass.", - "heading": "Søknader til komiteene", - "moves": { - "open->avslatt": "Avslå søknaden", - "open->plassert": "Sett i komité" - } - }, - "oppslag": { - "description": "Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut.", - "heading": "Utstyr til utlån blant naboer", - "moves": { - "open->lagt_ut": "Legg ut oppslaget", - "open->tatt_ned": "Ta ned oppslaget" - } - }, - "trafikkmeldinger": { - "description": "Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier.", - "heading": "Meldinger om trafikkfarer", - "moves": {} - } - }, - "confirm": "Lagre", - "description": "Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "arrangementer": { - "button": "Inviter", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Arrangementer", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "horingsinstans": { - "button": "Inviter", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Høringsinstans", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "kasserer": { - "button": "Inviter", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i kassereren", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "komiteer": { - "button": "Inviter", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i komiteene", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "lekeplasser": { - "button": "Inviter", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Leke- og møteplasser", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "nabohjelp": { - "button": "Inviter", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i nabohjelpen", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "styret": { - "button": "Inviter", - "description": "De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i styret", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "trafikk": { - "button": "Inviter", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Trafikkforhold", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva venter på styret akkurat nå?" - }, - "questions/trafikk/index.yaml": { - "buckets": { - "trafikkmeldinger": { - "description": "Farlige steder i trafikken som naboer har meldt inn.", - "heading": "Farlige steder i trafikken", - "moves": { - "open->avvist": "Avvis meldingen", - "open->tatt_opp": "Ta opp med kommunen", - "tatt_opp->avvist": "Avvis meldingen", - "tatt_opp->ordnet": "Meld ordnet" - } - } - }, - "confirm": "Lagre", - "description": "Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "trafikk": { - "button": "Inviter", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Trafikkforhold", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvilke trafikkfarer må følges opp?" - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-opener-2026-09-23/words-r3.json b/vendor/trainer/runs/tomtervel-opener-2026-09-23/words-r3.json deleted file mode 100644 index 6323316..0000000 --- a/vendor/trainer/runs/tomtervel-opener-2026-09-23/words-r3.json +++ /dev/null @@ -1,953 +0,0 @@ -{ - "aggregates.yaml": { - "hjelpebehov": { - "formidlet": { - "body": "Vi har funnet en nabo som kan hjelpe. De tar kontakt med deg direkte.\n\nDet du kan gjøre nå: {site}/decide/trenger-hjelp?chain={chain}&email={email}", - "subject": "En nabo er koblet på" - }, - "open": { - "body": "Vi har mottatt det du trenger hjelp til, og ser etter en nabo som kan stille opp. Du hører fra oss så snart vi har funnet noen.", - "subject": "Vi leter etter en nabo til deg" - }, - "ordnet": { - "body": "Godt å høre at det ordnet seg. Takk for at du sa fra, og lykke til videre.", - "subject": "Bra det løste seg" - } - }, - "husstander": { - "betalt": { - "body": "Kontingenten er registrert betalt. Du er nå medlem av Tomter Vel - velkommen med!", - "subject": "Medlemskapet er i orden" - }, - "open": { - "body": "Takk for at du vil bli medlem. Du får en betalingsoppfordring med kontonummer og beløp så snart kasserer har sett på saken.\n\nDet du kan gjøre nå: {site}/decide/bli-medlem?chain={chain}&email={email}", - "subject": "Nesten i mål som medlem" - } - }, - "oppslag": { - "lagt_ut": { - "body": "Oppslaget ditt er lagt ut, og naboene kan nå se det.", - "subject": "Oppslaget er synlig for naboene" - } - } - }, - "questions/arrangementer/index.yaml": { - "buckets": { - "frivillige": { - "description": "Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem.", - "heading": "Frivillige til arrangementer og dugnad", - "moves": { - "kontaktet->satt_opp": "Sett opp", - "kontaktet->takket_nei": "Takket nei", - "open->kontaktet": "Merk som kontaktet", - "open->takket_nei": "Takket nei" - } - } - }, - "confirm": "Lagre", - "description": "Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "arrangementer": { - "button": "Inviter", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Arrangementer", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp?" - }, - "questions/bidra/index.yaml": { - "description": "Vil du stille opp for nabolaget? Her melder du deg til dugnad og arrangementer, eller til en av komiteene.", - "needs": { - "hjelpe-til": { - "button": "Meld meg på", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.", - "encouragement": "Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg.", - "form_description": "Fortell kort hva du kan hjelpe til med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli med på dugnad eller arrangement", - "hints": { - "hva": "", - "navn": "Kari Nordmann", - "telefon": "912 34 567" - }, - "icon": "hand-helping", - "labels": { - "hva": "Hva kan du hjelpe til med?", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit.", - "road_icon": "lucide:clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - }, - "komite": { - "button": "Meld interesse", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i.", - "encouragement": "Det tar bare et minutt, og noen fra styret svarer deg.", - "form_description": "Skriv hvilken komité du er interessert i.", - "form_title": "Meld deg til en komité", - "heading": "Sitt i en komité som betyr noe for deg", - "hints": { - "epost": "kari@eksempel.no", - "komite": "", - "navn": "Kari Nordmann" - }, - "icon": "users", - "labels": { - "epost": "E-post", - "komite": "Hvilken komité?", - "navn": "Navn" - }, - "road_description": "Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå.", - "road_icon": "lucide:clipboard-list", - "road_title": "Hva skjer videre", - "who_description": "Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:handshake", - "who_title": "Hvem leser dette" - } - }, - "question": "Vil du hjelpe til i nabolaget?" - }, - "questions/decide/bli-medlem.yaml": { - "description": "", - "moves": { - "utmeldt": { - "button": "Utmeldt", - "description": "", - "heading": "Utmeldt" - } - }, - "question": "What would you like to do?" - }, - "questions/decide/dele-utstyr.yaml": { - "description": "Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån.", - "moves": { - "tatt_ned": { - "button": "Ta ned oppslaget", - "description": "Oppslaget fjernes fra siden, så ingen flere spør om å låne det.", - "heading": "Meld at utstyret er tatt ned" - } - }, - "question": "Skal oppslaget om utstyret fortsatt stå ute?" - }, - "questions/decide/kan-hjelpe.yaml": { - "description": "Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå.", - "moves": { - "trukket": { - "button": "Trekk meg", - "description": "Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre.", - "heading": "Ta en pause fra nabohjelpen" - } - }, - "question": "Vil du fortsatt kunne bli spurt om å hjelpe en nabo?" - }, - "questions/decide/trenger-hjelp.yaml": { - "description": "Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet.", - "moves": { - "ordnet": { - "button": "Merk som ordnet", - "description": "Da vet vi at naboen har fått hjelpen sin, og saken lukkes.", - "heading": "Meld fra at hjelpen er gitt" - } - }, - "question": "Har naboen fått hjelpen de trengte?" - }, - "questions/horingsinstans/index.yaml": { - "buckets": { - "innspill": { - "description": "Her ligger innspill fra beboere til saker kommunen har på høring.", - "heading": "Innspill til høringssvar", - "moves": { - "open->ikke_tatt_med": "Ikke tatt med", - "open->tatt_med": "Tatt med i svaret" - } - } - }, - "confirm": "Send svar", - "description": "Her samler du innspillene og ser hva som er tatt med i velets høringssvar.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "horingsinstans": { - "button": "Inviter", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Høringsinstans", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva sier vi i høringssvaret?" - }, - "questions/index.yaml": { - "description": "Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står.", - "doors": { - "bidra": { - "button": "Bli med", - "description": "Vi trenger folk til 17. mai, dugnader og arrangementer, og noen som vil sitte i en komité.", - "for_whom": "Deg som vil stille opp", - "heading": "Bidra på arrangement eller i en komité", - "icon": "hand-helping" - }, - "medlem": { - "button": "Gå videre", - "description": "Meld deg inn, oppdater opplysningene dine eller meld deg ut.", - "for_whom": "Deg som bor i en husstand på Tomter", - "heading": "Bli medlem eller endre medlemskapet ditt", - "icon": "user-check" - }, - "melde-fra": { - "button": "Meld fra", - "description": "Fortell oss om noe farlig i trafikken eller noe ødelagt på lekeplassen eller stien.", - "for_whom": "Deg som har sett noe som bør fikses", - "heading": "Meld fra om trafikkfare eller ødelagt anlegg", - "icon": "siren" - }, - "naboer": { - "button": "Se nabohjelpa", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller har du noe å låne ut? Her møtes naboer.", - "for_whom": "Deg som trenger hjelp eller kan gi en hånd", - "heading": "Få hjelp av naboer eller gi en hånd selv", - "icon": "heart-handshake" - } - }, - "needs": { - "horingsinnspill": { - "button": "Send innspill", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "encouragement": "Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen.", - "form_description": "Fortell hvilken sak det gjelder og hva du mener.", - "form_title": "Send et høringsinnspill", - "heading": "Få din mening med i høringssvaret", - "hints": { - "innspill": "Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen.", - "navn": "Kari Nordmann", - "sak": "Reguleringsplan for Tomterveien" - }, - "icon": "megaphone", - "labels": { - "innspill": "Hva mener du?", - "navn": "Navn", - "sak": "Hvilken sak gjelder det?" - }, - "road_description": "Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:users", - "who_title": "Hvem leser dette" - } - }, - "opener": { - "description": "To ting først. Resten står lenger ned på siden.", - "features": { - "medlem": { - "description": "Velet taler for Tomter overfor kommunen, holder lekeplassene og stien i stand og samler naboene på 17. mai og dugnad. 157 husstander er med. Du melder deg inn her, og ut igjen selv når du vil.", - "heading": "Et vel som taler for Tomter, og et medlemskap du styrer selv", - "icon": "users" - }, - "nabo": { - "description": "Trenger du en hånd med snømåking, handling eller skyss, kobler nabohjelpsgruppa deg med en nabo som kan. Du sier selv fra når det er ordnet.", - "heading": "En nabo som stiller opp når du trenger det", - "icon": "handshake" - } - }, - "heading": "Dette gjør velet" - }, - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "shopping": { - "description": "Ingenting å fylle ut her. Det som er meldt inn, og hvor hver sak står.", - "heading": "Se deg rundt først", - "items": { - "status-anleggsfeil": { - "description": "Lekeplassen og stien: det som er meldt, og det som er fikset.", - "heading": "Alt som er meldt ødelagt", - "icon": "list" - }, - "status-oppslag": { - "description": "Det naboene har å låne ut, og det de trenger å låne.", - "heading": "Oppslagstavla", - "icon": "list" - }, - "status-trafikkmeldinger": { - "description": "Farlige steder naboene har meldt, og hva velet har gjort med dem.", - "heading": "Alle trafikkmeldinger", - "icon": "list" - } - } - } - }, - "questions/kasserer/index.yaml": { - "buckets": { - "husstander": { - "description": "Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem.", - "heading": "Nye medlemmer som venter på registrering", - "moves": { - "open->betalt": "Registrer betaling", - "open->utmeldt": "Meld ut" - } - }, - "medlemsendringer": { - "description": "Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert.", - "heading": "Endringer som venter på å bli registrert", - "moves": { - "open->oppdatert": "Registrer endring" - } - }, - "utlegg": { - "description": "Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling.", - "heading": "Utlegg som venter på deg", - "moves": { - "godkjent->avvist": "Avvis likevel", - "godkjent->utbetalt": "Merk som utbetalt", - "open->avvist": "Avvis utlegg", - "open->godkjent": "Godkjenn utlegg" - } - } - }, - "confirm": "Lagre", - "description": "Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "kasserer": { - "button": "Inviter", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i kassereren", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva venter på meg som kasserer akkurat nå?" - }, - "questions/komiteer/index.yaml": { - "buckets": {}, - "confirm": "Confirm", - "description": "Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "komiteer": { - "button": "Inviter", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i komiteene", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": { - "utlegg": { - "button": "Send utlegg", - "description": "Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake.", - "heading": "Få tilbake det du har lagt ut" - } - }, - "question": "Hva står ubehandlet i komiteen din nå?" - }, - "questions/komiteer/utlegg-sent.yaml": { - "back": "Til forsiden", - "description": "Utlegget er sendt til kasserer. Du får beskjed når det er sjekket.", - "next_description": "Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga.", - "next_heading": "Pengene kommer på konto", - "question": "Hva skjer med utlegget mitt nå?" - }, - "questions/komiteer/utlegg.yaml": { - "button": "Send inn", - "description": "Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten.", - "encouragement": "Legg ved bilag om du har det, så går det raskere.", - "form_description": "Ha kvittering eller bilag klart før du fyller ut.", - "form_title": "Krav om refusjon", - "heading": "Få pengene tilbake", - "hints": { - "belop": "450 kr", - "hva": "Kaffe og kjeks til dugnaden", - "navn": "Kari Nordmann" - }, - "icon": "receipt", - "labels": { - "belop": "Beløp", - "hva": "Hva gjaldt det", - "navn": "Navn" - }, - "page_description": "Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake.", - "question": "Har du lagt ut penger for komiteen og vil ha dem tilbake?", - "road_description": "Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor.", - "road_icon": "lucide:wallet", - "road_title": "Fra krav til utbetaling", - "who_description": "Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster.", - "who_icon": "lucide:coins", - "who_title": "Kasserer ser dette" - }, - "questions/lekeplasser/index.yaml": { - "buckets": { - "anleggsfeil": { - "description": "Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses.", - "heading": "Det som er meldt inn av skader", - "moves": { - "open->tatt_tak_i": "Ta tak i saken", - "tatt_tak_i->utbedret": "Merk som utbedret" - } - } - }, - "confirm": "Lagre", - "description": "Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "lekeplasser": { - "button": "Inviter", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Leke- og møteplasser", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva må fikses på lekeplassene og stien nå?" - }, - "questions/medlem/index.yaml": { - "description": "Bli medlem av Tomter Vel, eller oppdater opplysningene dine hvis du allerede er medlem.", - "needs": { - "bli-medlem": { - "button": "Bli medlem", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.", - "encouragement": "Kasserer sender deg kontingenten på e-post rett etterpå.", - "form_description": "Ha adressen i Tomter og en e-post du bruker klar.", - "form_title": "Meld deg inn", - "heading": "Bli medlem av Tomter Vel", - "hints": { - "adresse": "Tomterveien 12", - "email": "", - "navn": "Ola Nordmann", - "telefon": "123 45 678" - }, - "icon": "user-plus", - "labels": { - "adresse": "Adresse", - "email": "Email", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem.", - "road_icon": "lucide:coins", - "road_title": "Etter innmelding", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "who_title": "Hvem svarer deg" - }, - "endre-medlemskap": { - "button": "Send endring", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.", - "encouragement": "Det tar bare et par minutter, og kasserer ordner resten.", - "form_description": "Skriv navnet ditt og hva som er nytt.", - "form_title": "Endre medlemskap", - "heading": "Oppdater eller avslutt medlemskapet", - "hints": { - "adresse": "Ny adresse i Tomter", - "hva_er_nytt": "Ny e-post, ny adresse, eller ønske om utmelding", - "navn": "Ola Nordmann" - }, - "icon": "pencil", - "labels": { - "adresse": "Adresse", - "hva_er_nytt": "Hva vil du endre?", - "navn": "Navn" - }, - "road_description": "Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om.", - "road_icon": "lucide:refresh-cw", - "road_title": "Etter du sender inn", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "who_title": "Hvem svarer deg" - } - }, - "question": "Vil du bli medlem, eller endre medlemskapet ditt?" - }, - "questions/melde-fra/index.yaml": { - "description": "Har du sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien? Her sier du fra til velet.", - "needs": { - "anleggsfeil": { - "button": "Send inn", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.", - "encouragement": "Det holder med noen ord om hva du så og hvor.", - "form_description": "Fortell hva som er ødelagt og omtrent hvor det er.", - "form_title": "Meld anleggsfeil", - "heading": "Meld fra om noe ødelagt", - "hints": { - "hva": "Løs planke på gjerdet ved husken", - "hvor": "" - }, - "icon": "construction", - "labels": { - "hva": "Hva er ødelagt", - "hvor": "Hvor er det" - }, - "road_description": "Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet.", - "road_icon": "lucide:wrench", - "road_title": "Hva skjer videre", - "who_description": "Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:hammer", - "who_title": "Hvem leser dette" - }, - "trafikkfare": { - "button": "Send inn", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.", - "encouragement": "Bare noen linjer om hva og hvor er nok til at vi kan følge opp.", - "form_description": "Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer.", - "form_title": "Meld trafikkfare", - "heading": "Meld fra om en trafikkfare", - "hints": { - "epost": "ola.nordmann@epost.no", - "hva": "Dårlig sikt i krysset, biler kjører fort", - "hvor": "Krysset Tomterveien / Elvestien" - }, - "icon": "alert-triangle", - "labels": { - "epost": "E-post (valgfritt)", - "hva": "Hva så du", - "hvor": "Hvor var det" - }, - "road_description": "Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist.", - "road_icon": "lucide:route", - "road_title": "Hva skjer videre", - "who_description": "Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:car", - "who_title": "Hvem leser dette" - } - }, - "question": "Hva vil du melde fra om?" - }, - "questions/naboer/index.yaml": { - "description": "Godt naboskap gjør hverdagen lettere. Trenger du en hånd, kan gi en, eller har noe å låne bort?", - "needs": { - "dele-utstyr": { - "button": "Legg ut oppslag", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.", - "encouragement": "Vi legger det ut så naboene kan se det.", - "form_description": "Skriv kort hva det gjelder, så folk skjønner det med en gang.", - "form_title": "Lån eller utlån", - "heading": "Lån ut eller lån av naboen", - "hints": { - "email": "ola@eksempel.no", - "har_eller_trenger": "", - "hva": "Hengerfeste til bil, tilhenger, stige", - "navn": "Ola Nordmann" - }, - "icon": "package", - "labels": { - "email": "E-post", - "har_eller_trenger": "Har du eller trenger du", - "hva": "Hva gjelder det", - "navn": "Navn" - }, - "road_description": "Oppslaget legges ut for naboene å se. Når det er ordnet eller ikke lenger aktuelt, tas det ned igjen.", - "road_icon": "lucide:clipboard-list", - "road_title": "Fra oppslag til avtale", - "who_description": "Styret legger ut oppslaget og kan nås på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem ser dette" - }, - "kan-hjelpe": { - "button": "Meld deg", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.", - "encouragement": "Du blir bare kontaktet når noe passer for deg.", - "form_description": "Fortell kort hva du kan bidra med.", - "form_title": "Meld deg som hjelper", - "heading": "Bli spurt når en nabo trenger en hånd", - "hints": { - "email": "kari@eksempel.no", - "kan": "", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "hand-helping", - "labels": { - "email": "E-post", - "kan": "Hva kan du hjelpe med", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra.", - "road_icon": "lucide:user-check", - "road_title": "Fra påmelding til spørsmål", - "who_description": "Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no.", - "who_icon": "lucide:heart-handshake", - "who_title": "Hvem ser dette" - }, - "trenger-hjelp": { - "button": "Be om hjelp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.", - "encouragement": "Vi finner en nabo som kan stille opp så fort som mulig.", - "form_description": "Skriv kort hva du trenger hjelp til.", - "form_title": "Be om en hånd", - "heading": "Få en nabo til å stille opp", - "hints": { - "adresse": "Tomterveien 12", - "email": "kari@eksempel.no", - "hva": "Måke snø på trappa, handle inn litt mat", - "navn": "Kari Nordmann", - "telefon": "123 45 678" - }, - "icon": "heart-handshake", - "labels": { - "adresse": "Adresse", - "email": "E-post", - "hva": "Hva trenger du hjelp til", - "navn": "Navn", - "telefon": "Telefon" - }, - "road_description": "Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed.", - "road_icon": "lucide:hand-helping", - "road_title": "Fra melding til hjelp", - "who_description": "Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "who_title": "Hvem ser dette" - } - }, - "question": "Trenger du en hånd, eller kan du gi en?" - }, - "questions/nabohjelp/index.yaml": { - "buckets": { - "hjelpebehov": { - "description": "Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe.", - "heading": "Naboer som trenger en hånd", - "moves": { - "formidlet->ikke_lost": "Meld ikke løst", - "formidlet->ordnet": "Meld ordnet", - "open->formidlet": "Koble til nabo", - "open->ikke_lost": "Meld ikke løst" - } - }, - "hjelpere": { - "description": "Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem.", - "heading": "Naboer som kan stille opp", - "moves": { - "open->registrert": "Registrer som hjelper", - "open->trukket": "Meld trukket" - } - } - }, - "confirm": "Lagre", - "description": "Her kobler du naboer som trenger hjelp med dem som kan stille opp.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "nabohjelp": { - "button": "Inviter", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i nabohjelpen", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvem trenger hjelp, og hvem kan stille opp?" - }, - "questions/received/anleggsfeil.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt.", - "next_description": "Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg.", - "next_heading": "Komiteen tar tak i det", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se meldte feil", - "description": "Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet.", - "heading": "Se andre meldte feil" - } - }, - "questions/received/bli-medlem.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert.", - "next_description": "Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten.", - "next_heading": "Kasserer sender deg betalingsinfo", - "question": "Hva skjer etter at jeg har meldt meg inn?" - }, - "questions/received/dele-utstyr.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du la ut noe naboene kan låne. Vi legger det ut på oppslaget så snart vi kan.", - "next_description": "En i styret legger utstyret ut på naboenes oppslag, så andre kan se det og spørre om å låne.", - "next_heading": "Styret legger det ut for deg", - "question": "Hva skjer med det jeg har lagt ut?", - "see_all": { - "button": "Se hva naboer deler", - "description": "Se hva andre i Tomter har lagt ut til utlån akkurat nå.", - "heading": "Se alt naboene deler" - } - }, - "questions/received/endre-medlemskap.yaml": { - "back": "Tilbake til forsiden", - "description": "Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut.", - "next_description": "Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg.", - "next_heading": "Kasserer retter opp opplysningene", - "question": "Hva skjer nå med det jeg meldte inn?" - }, - "questions/received/hjelpe-til.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg.", - "next_description": "Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden.", - "next_heading": "Komiteen tar kontakt", - "question": "Hva skjer nå som jeg har meldt meg?" - }, - "questions/received/horingsinnspill.yaml": { - "back": "Tilbake til forsiden", - "description": "Innspillet ditt er sendt til høringsinstansen i velet.", - "next_description": "De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med.", - "next_heading": "Innspillet ditt inn i vurderingen", - "question": "Hva skjer med det jeg har sagt om saken?" - }, - "questions/received/kan-hjelpe.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe.", - "next_description": "Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte.", - "next_heading": "Du blir kontaktet ved behov", - "question": "Hva skjer nå som jeg har registrert meg?" - }, - "questions/received/komite.yaml": { - "back": "Tilbake til forsiden", - "description": "Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg.", - "next_description": "Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer.", - "next_heading": "Vi finner riktig komité til deg", - "question": "Hva skjer nå som jeg har meldt interesse for en komité?" - }, - "questions/received/trafikkfare.yaml": { - "back": "Tilbake til forsiden", - "description": "Meldingen din om trafikkfaren er sendt til komiteen for trafikk.", - "next_description": "Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs.", - "next_heading": "Trafikkomiteen tar den videre", - "question": "Hva skjer med meldingen min nå?", - "see_all": { - "button": "Se andre trafikkfarer", - "description": "Se hva andre har meldt inn, og status på sakene.", - "heading": "Andre meldte trafikkfarer" - } - }, - "questions/received/trenger-hjelp.yaml": { - "back": "Til forsiden", - "description": "Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp.", - "next_description": "Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer.", - "next_heading": "Vi finner en nabo til deg", - "question": "Hva skjer nå som jeg har bedt om hjelp?" - }, - "questions/status/anleggsfeil/index.yaml": { - "back": "Tilbake til meldinger", - "description": "Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet.", - "heading": "Status på meldte anleggsfeil", - "list_description": "Alle meldinger er åpne for alle å se.", - "question": "Hva skjer med det jeg har meldt fra om?" - }, - "questions/status/oppslag/index.yaml": { - "back": "Tilbake", - "description": "Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet.", - "heading": "Oversikt over det som er meldt inn", - "list_description": "Åpen liste – navn og detaljer vises ikke.", - "question": "Hva er sendt inn, og hvor langt har det kommet?" - }, - "questions/status/trafikkmeldinger/index.yaml": { - "back": "Tilbake", - "description": "Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet.", - "heading": "Trafikkmeldinger og status", - "list_description": "Alle meldinger som er sendt inn, og hvor de står nå.", - "question": "Er det meldt fra om noe farlig i trafikken der jeg bor?" - }, - "questions/styret/index.yaml": { - "buckets": { - "innspill": { - "description": "Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar.", - "heading": "Høringsinnspill fra beboerne", - "moves": {} - }, - "komitesoknader": { - "description": "Her ligger alle som har meldt seg til en komité og venter på en plass.", - "heading": "Søknader til komiteene", - "moves": { - "open->avslatt": "Avslå søknaden", - "open->plassert": "Sett i komité" - } - }, - "oppslag": { - "description": "Her ligger det naboer har å låne ut eller trenger å låne, klart til å legges ut.", - "heading": "Utstyr til utlån blant naboer", - "moves": { - "open->lagt_ut": "Legg ut oppslaget", - "open->tatt_ned": "Ta ned oppslaget" - } - }, - "trafikkmeldinger": { - "description": "Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier.", - "heading": "Meldinger om trafikkfarer", - "moves": {} - } - }, - "confirm": "Lagre", - "description": "Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "arrangementer": { - "button": "Inviter", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Arrangementer", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "horingsinstans": { - "button": "Inviter", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Høringsinstans", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "kasserer": { - "button": "Inviter", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i kassereren", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "komiteer": { - "button": "Inviter", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i komiteene", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "lekeplasser": { - "button": "Inviter", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Leke- og møteplasser", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "nabohjelp": { - "button": "Inviter", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i nabohjelpen", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "styret": { - "button": "Inviter", - "description": "De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i styret", - "labels": { - "email": "E-post", - "name": "Navn" - } - }, - "trafikk": { - "button": "Inviter", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Trafikkforhold", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hva venter på styret akkurat nå?" - }, - "questions/trafikk/index.yaml": { - "buckets": { - "trafikkmeldinger": { - "description": "Farlige steder i trafikken som naboer har meldt inn.", - "heading": "Farlige steder i trafikken", - "moves": { - "open->avvist": "Avvis meldingen", - "open->tatt_opp": "Ta opp med kommunen", - "tatt_opp->avvist": "Avvis meldingen", - "tatt_opp->ordnet": "Meld ordnet" - } - } - }, - "confirm": "Lagre", - "description": "Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier.", - "invited": { - "description": "Hver invitasjon med lenken som ble laget. Marker som ferdig når personen er inne.", - "done": "Er inne", - "heading": "Sendte invitasjoner" - }, - "invites": { - "trafikk": { - "button": "Inviter", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "form_title": "Hvem", - "heading": "Inviter noen inn i Trafikkforhold", - "labels": { - "email": "E-post", - "name": "Navn" - } - } - }, - "links": {}, - "question": "Hvilke trafikkfarer må følges opp?" - } -} diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/README.md b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/README.md deleted file mode 100644 index 016a3bd..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/README.md +++ /dev/null @@ -1,38 +0,0 @@ -# Tomter Vel's lending board: answered from the board itself (not deployed) - -Rebuilt from `plans/tomtervel.yaml` with the words in use on -vel.klingenbergbygg.no, after the plan got its first need `about` -another: `melde-seg` answers one record of `dele-utstyr`. - -- A notice stands on the board from the moment it is sent - (`public_states: [open]`, no approval stage); styret is mailed. -- Every row on the board, on the front door and on the full list, - links to the notice's own page `/status/oppslag/[key]`, where a - neighbour leaves an email (filled and hidden when signed in) and a - line if they like. The answer is mailed straight to whoever posted - the notice, with the neighbour's address and the take-down link. - The queue is the poster's inbox; the site keeps no state about who - they picked. -- A notice comes down when the poster says so, when the redaktør - (`redaktor`, the group of the people named responsible) presses "Ta - ned oppslaget" at its own desk, or after 30 days. -- The redaktør desk also lists the answers, marked read by hand. - -Words: the model's pass (Sonnet, `--llm-for questions/status/oppslag/`) -read the answer page as the posting page and rewrote the board's tuned -headings, so the new pages' words are written by hand in -`words-board.json` instead, and `words_prompt` now says what that page -is. Also hand-written there: the two mails (a new notice to styret; an -answer to the poster), the front door's inline-list descriptions and -the invite-list lines, which the lift does not carry. - -Found on the way: the lift matched desk cards by `action`, which every -card on a desk shares, so when the notices left styret's desk their -words landed on the next card. A desk card is now identified by the -bucket its list shows. - -Lints green with iris built against portal's `answer-a-record` branch -(portal PR 4): 12 needs structurally met. On tomtervel/questions branch -`invitasjoner-og-forslag`, which needs portal v0.5.5 on the vel first. -Live records in `oppslag` at `lagt_ut` have no state after this; the -stage is gone. diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/aggregates.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/aggregates.yaml deleted file mode 100644 index 09aa611..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/aggregates.yaml +++ /dev/null @@ -1,219 +0,0 @@ -aggregates: -- bucket: anleggsfeil - initial: open - states: - open: - event: received - tatt_tak_i: - event: tatt_tak_i - utbedret: - event: utbedret - transitions: - open: - - tatt_tak_i - tatt_tak_i: - - utbedret -- bucket: frivillige - initial: open - states: - open: - event: received - kontaktet: - event: kontaktet - satt_opp: - event: satt_opp - takket_nei: - event: takket_nei - transitions: - kontaktet: - - satt_opp - - takket_nei - open: - - kontaktet - - takket_nei -- bucket: hjelpebehov - initial: open - states: - open: - event: received - mail: - to: submitter - subject: Vi leter etter en nabo til deg - body: Vi har mottatt det du trenger hjelp til, og ser etter en nabo som kan stille opp. Du hører fra oss så snart vi har funnet noen. - formidlet: - event: formidlet - mail: - to: submitter - subject: En nabo er koblet på - body: |- - Vi har funnet en nabo som kan hjelpe. De tar kontakt med deg direkte. - - Det du kan gjøre nå: {site}/decide/trenger-hjelp?chain={chain}&email={email} - ordnet: - event: ordnet - mail: - to: submitter - subject: Bra det løste seg - body: Godt å høre at det ordnet seg. Takk for at du sa fra, og lykke til videre. - ikke_lost: - event: ikke_lost - transitions: - formidlet: - - ordnet - - ikke_lost - open: - - formidlet - - ikke_lost -- bucket: hjelpere - initial: open - states: - open: - event: received - registrert: - event: registrert - trukket: - event: trukket - transitions: - open: - - registrert - - trukket -- bucket: husstander - initial: open - states: - open: - event: received - mail: - to: submitter - subject: Nesten i mål som medlem - body: |- - Takk for at du vil bli medlem. Du får en betalingsoppfordring med kontonummer og beløp så snart kasserer har sett på saken. - - Det du kan gjøre nå: {site}/decide/bli-medlem?chain={chain}&email={email} - betalt: - event: betalt - mail: - to: submitter - subject: Medlemskapet er i orden - body: Kontingenten er registrert betalt. Du er nå medlem av Tomter Vel - velkommen med! - utmeldt: - event: utmeldt - transitions: - open: - - betalt - - utmeldt -- bucket: innspill - initial: open - states: - open: - event: received - tatt_med: - event: tatt_med - ikke_tatt_med: - event: ikke_tatt_med - transitions: - open: - - tatt_med - - ikke_tatt_med -- bucket: komitesoknader - initial: open - states: - open: - event: received - plassert: - event: plassert - avslatt: - event: avslatt - transitions: - open: - - plassert - - avslatt -- bucket: medlemsendringer - initial: open - states: - open: - event: received - oppdatert: - event: oppdatert - transitions: - open: - - oppdatert -- bucket: oppslag - initial: open - states: - open: - event: received - mail: - to: post@tomtervel.no - subject: 'Nytt oppslag på tavla: {hva}' - body: |- - Et nytt oppslag står på tavla fra nå av. - - {har_eller_trenger}: {hva} - - Det står der til den som la det ut tar det ned, til redaktøren gjør det, eller i en måned. Hører det ikke hjemme, tas det ned her: {site}/redaktor - after: - days: 30 - to: tatt_ned - tatt_ned: - event: tatt_ned - transitions: - open: - - tatt_ned -- bucket: svar - initial: open - states: - open: - event: received - mail: - to: '{oppslag.email}' - subject: En nabo har svart på oppslaget ditt - body: |- - Hei, - - En nabo har svart på oppslaget ditt «{oppslag.hva}». Ta kontakt direkte: {email} - - {hilsen} - - Flere kan svare så lenge oppslaget står; du velger selv hvem du avtaler med. Når det er ordnet, tar du det ned her: - {site}/decide/dele-utstyr?chain={oppslag.id}&email={oppslag.email} - lest: - event: lest - transitions: - open: - - lest -- bucket: trafikkmeldinger - initial: open - states: - open: - event: received - tatt_opp: - event: tatt_opp - ordnet: - event: ordnet - avvist: - event: avvist - transitions: - open: - - tatt_opp - - avvist - tatt_opp: - - ordnet - - avvist -- bucket: utlegg - initial: open - states: - open: - event: received - godkjent: - event: godkjent - utbetalt: - event: utbetalt - avvist: - event: avvist - transitions: - godkjent: - - utbetalt - - avvist - open: - - godkjent - - avvist diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/needs.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/needs.yaml deleted file mode 100644 index 45da519..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/needs.yaml +++ /dev/null @@ -1,328 +0,0 @@ -needs: -- id: bli-medlem - who: en husstand i Tomter - wants: å bli medlem og få betalt kontingenten - enters: / - via: Bli medlem eller endre opplysningene dine - lands_in: husstander - handled_by: kasserer - stages: - - open - - betalt - - utmeldt - done_when: - - betalt - - utmeldt - success: - - betalt - max_steps: 2 - max_fields: 3 - stage_words: - open: mottatt - betalt: betalt - utmeldt: meldt ut -- id: endre-medlemskap - who: et medlem som har flyttet, byttet e-post eller vil melde seg ut - wants: at velet har riktige opplysninger om dem - enters: / - via: Bli medlem eller endre opplysningene dine - lands_in: medlemsendringer - handled_by: kasserer - stages: - - open - - oppdatert - done_when: - - oppdatert - success: - - oppdatert - max_steps: 2 - max_fields: 3 - stage_words: - open: mottatt - oppdatert: oppdatert -- id: trafikkfare - who: en som har sett et farlig sted i trafikken - wants: at velet tar det opp med kommunen eller den som eier veien - enters: / - via: Meld fra om noe som bør fikses - lands_in: trafikkmeldinger - handled_by: trafikk - stages: - - open - - tatt_opp - - ordnet - - avvist - done_when: - - ordnet - - avvist - success: - - ordnet - max_steps: 2 - max_fields: 2 - stage_words: - open: mottatt - tatt_opp: tatt opp med kommunen - ordnet: ordnet - avvist: avvist -- id: anleggsfeil - who: en som ser at noe på lekeplassen eller stien er ødelagt - wants: at det blir fikset før noen skader seg - enters: / - via: Meld fra om noe som bør fikses - lands_in: anleggsfeil - handled_by: lekeplasser - stages: - - open - - tatt_tak_i - - utbedret - done_when: - - utbedret - success: - - utbedret - max_steps: 2 - max_fields: 2 - stage_words: - open: mottatt - tatt_tak_i: tatt tak i - utbedret: utbedret -- id: horingsinnspill - who: en beboer som har en mening om en sak kommunen har på høring - wants: at velet tar det med i sitt svar - enters: / - via: Få din mening med i høringssvaret - lands_in: innspill - handled_by: horingsinstans - stages: - - open - - tatt_med - - ikke_tatt_med - done_when: - - tatt_med - - ikke_tatt_med - success: - - tatt_med - max_steps: 1 - max_fields: 3 - stage_words: - open: mottatt - tatt_med: tatt med i høringssvaret - ikke_tatt_med: ikke tatt med -- id: hjelpe-til - who: en som vil hjelpe til på et arrangement eller en dugnad - wants: å bli satt opp på noe som passer dem - enters: / - via: Bli med og gjør en innsats - lands_in: frivillige - handled_by: arrangementer - stages: - - open - - kontaktet - - satt_opp - - takket_nei - done_when: - - satt_opp - - takket_nei - success: - - satt_opp - max_steps: 2 - max_fields: 3 - stage_words: - open: mottatt - kontaktet: kontaktet - satt_opp: satt opp - takket_nei: takket nei -- id: komite - who: en som vil sitte i en komité - wants: en plass i den komiteen som driver med det de bryr seg om - enters: / - via: Bli med og gjør en innsats - lands_in: komitesoknader - handled_by: styret - stages: - - open - - plassert - - avslatt - done_when: - - plassert - - avslatt - success: - - plassert - max_steps: 2 - max_fields: 3 - stage_words: - open: mottatt - plassert: plassert i en komité - avslatt: avslått -- id: trenger-hjelp - who: en beboer som ikke får til noe selv for tiden, som snømåking, handling eller en skyss - wants: at en nabo stiller opp - enters: / - via: Få hjelp av naboer, eller gi en hånd selv - lands_in: hjelpebehov - handled_by: nabohjelp - stages: - - open - - formidlet - - ordnet - - ikke_lost - done_when: - - ordnet - - ikke_lost - success: - - ordnet - max_steps: 2 - max_fields: 4 - stage_words: - open: mottatt - formidlet: formidlet til en nabo - ordnet: ordnet - ikke_lost: ikke løst -- id: kan-hjelpe - who: en nabo som kan stille opp når noen trenger det - wants: å bli spurt når det passer - enters: / - via: Få hjelp av naboer, eller gi en hånd selv - lands_in: hjelpere - handled_by: nabohjelp - stages: - - open - - registrert - - trukket - done_when: - - registrert - - trukket - success: - - registrert - max_steps: 2 - max_fields: 4 - stage_words: - open: mottatt - registrert: registrert som hjelper - trukket: trukket -- id: dele-utstyr - who: en nabo som har noe å låne ut, eller trenger å låne noe - wants: et oppslag naboene ser med en gang - enters: / - via: Få hjelp av naboer, eller gi en hånd selv - lands_in: oppslag - handled_by: redaktor - stages: - - open - - tatt_ned - done_when: - - tatt_ned - success: - - tatt_ned - max_steps: 2 - max_fields: 4 - stage_words: - open: ute - tatt_ned: tatt ned -- id: melde-seg - who: en nabo som kan låne ut, eller vil låne, det et oppslag gjelder - wants: at den som la ut oppslaget får vite det - enters: /status/oppslag/[key] - via: Si fra til den som la ut oppslaget - lands_in: svar - handled_by: redaktor - stages: - - open - - lest - done_when: - - lest - success: - - lest - max_steps: 1 - max_fields: 2 - stage_words: - open: sendt - lest: lest -- id: utlegg - who: en i en komité som har lagt ut for noe - wants: pengene tilbake - enters: /komiteer/utlegg - via: Få pengene tilbake - lands_in: utlegg - handled_by: kasserer - stages: - - open - - godkjent - - utbetalt - - avvist - done_when: - - utbetalt - - avvist - success: - - utbetalt - max_steps: 1 - max_fields: 3 - stage_words: - open: mottatt - godkjent: godkjent - utbetalt: utbetalt - avvist: avvist - enters_as: komiteer -personas: -- id: nyinnflyttet - need: bli-medlem - text: Vi flyttet til Tomter i mars og har hørt at det finnes et vel. Hvordan blir vi med, og hva koster det? -- id: glemte-a-betale - need: bli-medlem - text: Jeg har vært medlem før men fikk ikke betalt i fjor. Kan jeg bare vippse, og til hvem? -- id: ny-epost - need: endre-medlemskap - text: Vi har byttet e-postadresse og får ikke lenger noe fra dere. -- id: flytter - need: endre-medlemskap - text: Vi selger huset og flytter til Ski i august, så vi må ut av medlemslista. -- id: skolevei - need: trafikkfare - text: Bilene kjører altfor fort i svingen ved skolen om morgenen, og det er ikke fortau der ungene går. -- id: busslomme - need: trafikkfare - text: Det er umulig å se om det kommer noen når man skal ut fra busslomma ved butikken, hekken har blitt kjempehøy. -- id: huske - need: anleggsfeil - text: Huska på lekeplassen henger i én kjetting. Sønnen min dro i den i går og den holdt så vidt. -- id: bru - need: anleggsfeil - text: Planken på den lille brua på stien langs elva er råtten, jeg gikk nesten gjennom. -- id: blokker - need: horingsinnspill - text: Kommunen skal bygge blokker på jordet bak stasjonen, og jeg synes det er alt for høyt. Kan velet si ifra? -- id: togtider - need: horingsinnspill - text: Ruter vil kutte det tidlige toget. Jeg pendler til Oslo hver dag og vil at velet skriver til dem om det. -- id: vafler - need: hjelpe-til - text: Jeg kan steke vafler på 17. mai-frokosten hvis dere trenger folk. -- id: motorsag - need: hjelpe-til - text: Har motorsag og ledig helg, kan ta trær langs elvestien hvis det er en dugnad. -- id: pendler - need: komite - text: Jeg pendler og er lei av at ingen snakker med Ruter. Jeg vil gjerne være med i gjengen som jobber med det. -- id: planlegger - need: komite - text: Jeg er arealplanlegger av yrke og kunne bidratt når kommunen sender saker på høring. -- id: tilhenger - need: dele-utstyr - text: Jeg har en tilhenger som står ubrukt mesteparten av året, naboer kan gjerne låne den for en hundrelapp. -- id: stige - need: dele-utstyr - text: Trenger en lang stige en dag i helga for å rense takrenna, er det noen i nærheten som har? -- id: snomaking - need: trenger-hjelp - text: Jeg er 84 og klarer ikke å måke innkjørselen lenger. Er det noen som kan hjelpe meg når det snør? -- id: nyoperert - need: trenger-hjelp - text: Jeg er nyoperert i hofta og kommer meg ikke til butikken på noen uker. Kunne noen handlet for meg? -- id: hjemmekontor - need: kan-hjelpe - text: Jeg jobber hjemmefra og kan godt måke eller handle for noen som ikke får det til selv. -- id: pensjonert-elektriker - need: kan-hjelpe - text: Pensjonert elektriker, har bil og god tid. Si fra om noen trenger skyss eller en hånd med småting. -- id: kvittering - need: utlegg - text: Jeg kjøpte pølser og kakao til skøytedagen for 1 840 kroner, her er kvitteringa, vil ha det igjen. diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/arrangementer/_section.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/arrangementer/_section.yaml deleted file mode 100644 index 94afa0f..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/arrangementer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: arrangementer diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/arrangementer/index.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/arrangementer/index.yaml deleted file mode 100644 index 22d629e..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/arrangementer/index.yaml +++ /dev/null @@ -1,71 +0,0 @@ -name: Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp? -description: Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Frivillige til arrangementer og dugnad - description: Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem. - action: /arrangementer - consequence: - - Lagre - features: - - name: Frivillige - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: frivillige - requires_group: arrangementer - transitions: - - from: kontaktet - to: satt_opp - label: Sett opp - - from: kontaktet - to: takket_nei - label: Takket nei - - from: open - to: kontaktet - label: Merk som kontaktet - - from: open - to: takket_nei - label: Takket nei -- name: Inviter noen inn i Arrangementer - description: De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /arrangementer - consequence: - - Inviter - invite: - group: arrangementer - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon og hvor den står. En lenke som går ut ubrukt, kan sendes på nytt. - action: /arrangementer - consequence: - - Lagre - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon. Den blir ferdig av seg selv når personen logger inn, og står som utløpt når lenken gikk ut ubrukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: arrangementer - transitions: - - from: open - to: done - label: Er inne - - from: expired - to: open - label: Send på nytt - - from: expired - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/bidra/index.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/bidra/index.yaml deleted file mode 100644 index 65dada0..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/bidra/index.yaml +++ /dev/null @@ -1,82 +0,0 @@ -name: Vil du hjelpe til i nabolaget? -description: Vil du stille opp for nabolaget? Her melder du deg til dugnad og arrangementer, eller til en av komiteene. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Bli med på dugnad eller arrangement - description: 17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer. - action: /received/hjelpe-til - consequence: - - Meld meg på - record_as: frivillige - features: - - name: Hva skjer videre - description: Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit. - icon: lucide:clipboard-list - - name: Hvem leser dette - description: Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:users - - name: Meld deg som hjelper - requirements: - - name: navn - label: Navn - type: text - placeholder: Kari Nordmann - - name: telefon - label: Telefon - type: tel - placeholder: 912 34 567 - - name: hva - label: Hva kan du hjelpe til med? - type: select - options: - - 17. mai - - Juletregranstenning - - Skøytedag - - Dugnad på elvestien - - Det som trengs - multiple: true - description: Fortell kort hva du kan hjelpe til med. - icon: lucide:hand-helping - encouragements: - - Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg. -- name: Sitt i en komité som betyr noe for deg - description: Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i. - action: /received/komite - consequence: - - Meld interesse - record_as: komitesoknader - features: - - name: Hva skjer videre - description: Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå. - icon: lucide:clipboard-list - - name: Hvem leser dette - description: Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden. - icon: lucide:handshake - - name: Meld deg til en komité - requirements: - - name: navn - label: Navn - type: text - placeholder: Kari Nordmann - - name: epost - label: E-post - type: email - placeholder: kari@eksempel.no - - name: komite - label: Hvilken komité? - type: select - options: - - Arrangementer - - Elvesti - - Høringsinstans - - Leke- og møteplasser - - Miljøgate - - Pendlerforhold - - Trafikkforhold - multiple: true - description: Skriv hvilken komité du er interessert i. - icon: lucide:users - encouragements: - - Det tar bare et minutt, og noen fra styret svarer deg. diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/decide/bli-medlem.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/decide/bli-medlem.yaml deleted file mode 100644 index 2453aa6..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/decide/bli-medlem.yaml +++ /dev/null @@ -1,11 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Utmeldt - description: '' - self_transition: - bucket: husstander - to: utmeldt - from: - - open - label: Utmeldt diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/decide/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/decide/dele-utstyr.yaml deleted file mode 100644 index 11765d8..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/decide/dele-utstyr.yaml +++ /dev/null @@ -1,11 +0,0 @@ -name: Skal oppslaget om utstyret fortsatt stå ute? -description: Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån. -alternatives: -- name: Meld at utstyret er tatt ned - description: Oppslaget fjernes fra siden, så ingen flere spør om å låne det. - self_transition: - bucket: oppslag - to: tatt_ned - from: - - open - label: Ta ned oppslaget diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/decide/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/decide/kan-hjelpe.yaml deleted file mode 100644 index 8205c75..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/decide/kan-hjelpe.yaml +++ /dev/null @@ -1,11 +0,0 @@ -name: Vil du fortsatt kunne bli spurt om å hjelpe en nabo? -description: Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå. -alternatives: -- name: Ta en pause fra nabohjelpen - description: Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre. - self_transition: - bucket: hjelpere - to: trukket - from: - - open - label: Trekk meg diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/decide/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/decide/trenger-hjelp.yaml deleted file mode 100644 index c7adb18..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/decide/trenger-hjelp.yaml +++ /dev/null @@ -1,11 +0,0 @@ -name: Har naboen fått hjelpen de trengte? -description: Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet. -alternatives: -- name: Meld fra at hjelpen er gitt - description: Da vet vi at naboen har fått hjelpen sin, og saken lukkes. - self_transition: - bucket: hjelpebehov - to: ordnet - from: - - formidlet - label: Merk som ordnet diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/horingsinstans/_section.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/horingsinstans/_section.yaml deleted file mode 100644 index ad97e31..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/horingsinstans/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: horingsinstans diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/horingsinstans/index.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/horingsinstans/index.yaml deleted file mode 100644 index 623da7e..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/horingsinstans/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -name: Hva sier vi i høringssvaret? -description: Her samler du innspillene og ser hva som er tatt med i velets høringssvar. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Innspill til høringssvar - description: Her ligger innspill fra beboere til saker kommunen har på høring. - action: /horingsinstans - consequence: - - Send svar - features: - - name: Innspill - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: innspill - requires_group: horingsinstans - transitions: - - from: open - to: tatt_med - label: Tatt med i svaret - - from: open - to: ikke_tatt_med - label: Ikke tatt med -- name: Inviter noen inn i Høringsinstans - description: De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /horingsinstans - consequence: - - Inviter - invite: - group: horingsinstans - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon og hvor den står. En lenke som går ut ubrukt, kan sendes på nytt. - action: /horingsinstans - consequence: - - Send svar - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon. Den blir ferdig av seg selv når personen logger inn, og står som utløpt når lenken gikk ut ubrukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: horingsinstans - transitions: - - from: open - to: done - label: Er inne - - from: expired - to: open - label: Send på nytt - - from: expired - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/index.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/index.yaml deleted file mode 100644 index 63111e0..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/index.yaml +++ /dev/null @@ -1,122 +0,0 @@ -name: Hva gjør Tomter Vel, og hva kan du få her? -description: Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Velforeningen for Tomter siden 1947 - description: Vi er sju komiteer som jobber på fritida for bygda vår. 157 husstander er med. - features: - - name: 157 husstander er medlemmer - description: Kontingenten går til arrangementer, lekeplasser, elvestien og arbeidet for tryggere trafikk. - icon: lucide:users - - name: Naboer som stiller opp for hverandre - description: Trenger du hjelp med snømåking, handling eller skyss, finner vi en nabo som kan. Du kan også låne og låne ut utstyr. - icon: lucide:heart-handshake -- name: Siste fra bygda - description: Nye meldinger og oppslag, slik de står akkurat nå. - features: - - name: Feil på lekeplasser og sti - description: Det som er meldt inn, og hvor langt vi har kommet med å fikse det. [Alle feilmeldinger](/status/anleggsfeil) - icon: lucide:construction - resource: - source: - kind: kv - bucket: anleggsfeil - public: true - states: [] - empty: Ingenting er meldt ødelagt akkurat nå. Ser du noe, si fra. - jq: 'sort_by(.submitted_ms) | reverse | .[:3] | .[] | .responses |= {hva: .hva, hvor: .hvor}' - - name: Oppslagstavla for naboer - description: Utstyr som er til låns, og det naboene leter etter. Svar rett fra oppslaget. [Hele oppslagstavla](/status/oppslag) - icon: lucide:list - resource: - source: - kind: kv - bucket: oppslag - public: true - states: - - open - empty: Tavla er tom nå. Legg gjerne ut det første oppslaget. - jq: 'sort_by(.submitted_ms) | reverse | .[:3] | .[] | .responses |= {har_eller_trenger: .har_eller_trenger, hva: .hva}' - link: - to: /status/oppslag/{id} - label: Jeg kan låne ut eller låne denne - - name: Farlige steder i trafikken - description: Det naboer har meldt fra om, og hva velet har gjort med det. [Alle trafikkmeldinger](/status/trafikkmeldinger) - icon: lucide:car - resource: - source: - kind: kv - bucket: trafikkmeldinger - public: true - states: [] - empty: Ingen farlige steder er meldt inn nå. Har du sett et, fortell oss. - jq: 'sort_by(.submitted_ms) | reverse | .[:3] | .[] | .responses |= {hva: .hva, hvor: .hvor}' -- name: Bli medlem eller endre opplysningene dine - description: Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding. - action: /medlem - consequence: - - Til medlemskap - features: - - name: Deg som bor i Tomter - description: Å bli medlem og få betalt kontingenten, at velet har riktige opplysninger om dem. - icon: lucide:house -- name: Meld fra om noe som bør fikses - description: Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed. - action: /melde-fra - consequence: - - Meld fra - features: - - name: Deg som har sett noe som bør fikses - description: At velet tar det opp med kommunen eller den som eier veien, at det blir fikset før noen skader seg. - icon: lucide:alert-triangle -- name: Bli med og gjør en innsats - description: Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse. - action: /bidra - consequence: - - Bli med - features: - - name: Deg som vil gjøre en innsats - description: Å bli satt opp på noe som passer dem, en plass i den komiteen som driver med det de bryr seg om. - icon: lucide:hand-helping -- name: Få hjelp av naboer, eller gi en hånd selv - description: Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere. - action: /naboer - consequence: - - Til nabohjelp - features: - - name: Deg som trenger hjelp eller kan gi en hånd - description: At en nabo stiller opp, å bli spurt når det passer, et oppslag som naboene ser. - icon: lucide:heart-handshake -- name: Få din mening med i høringssvaret - description: Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar. - action: /received/horingsinnspill - consequence: - - Send innspill - record_as: innspill - features: - - name: Hva skjer videre - description: Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen. - icon: lucide:route - - name: Hvem leser dette - description: Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no. - icon: lucide:users - - name: Send et høringsinnspill - requirements: - - name: navn - label: Navn - type: text - placeholder: Kari Nordmann - - name: sak - label: Hvilken sak gjelder det? - type: text - placeholder: Reguleringsplan for Tomterveien - - name: innspill - label: Hva mener du? - type: textarea - placeholder: Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen. - description: Fortell hvilken sak det gjelder og hva du mener. - icon: lucide:megaphone - encouragements: - - Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen. diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/kasserer/_section.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/kasserer/_section.yaml deleted file mode 100644 index 2f8af2f..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/kasserer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: kasserer diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/kasserer/index.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/kasserer/index.yaml deleted file mode 100644 index 72a0a62..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/kasserer/index.yaml +++ /dev/null @@ -1,108 +0,0 @@ -name: Hva venter på meg som kasserer akkurat nå? -description: Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Nye medlemmer som venter på registrering - description: Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem. - action: /kasserer - consequence: - - Lagre - features: - - name: Husstander - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: husstander - requires_group: kasserer - transitions: - - from: open - to: betalt - label: Registrer betaling - - from: open - to: utmeldt - label: Meld ut -- name: Endringer som venter på å bli registrert - description: Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert. - action: /kasserer - consequence: - - Lagre - features: - - name: Medlemsendringer - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: medlemsendringer - requires_group: kasserer - transitions: - - from: open - to: oppdatert - label: Registrer endring -- name: Utlegg som venter på deg - description: Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling. - action: /kasserer - consequence: - - Lagre - features: - - name: Utlegg - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: utlegg - requires_group: kasserer - transitions: - - from: godkjent - to: utbetalt - label: Merk som utbetalt - - from: godkjent - to: avvist - label: Avvis likevel - - from: open - to: godkjent - label: Godkjenn utlegg - - from: open - to: avvist - label: Avvis utlegg -- name: Inviter noen inn i kassereren - description: De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /kasserer - consequence: - - Inviter - invite: - group: kasserer - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon og hvor den står. En lenke som går ut ubrukt, kan sendes på nytt. - action: /kasserer - consequence: - - Lagre - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon. Den blir ferdig av seg selv når personen logger inn, og står som utløpt når lenken gikk ut ubrukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: kasserer - transitions: - - from: open - to: done - label: Er inne - - from: expired - to: open - label: Send på nytt - - from: expired - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/komiteer/_section.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/komiteer/_section.yaml deleted file mode 100644 index 57e3295..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/komiteer/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: komiteer diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/komiteer/index.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/komiteer/index.yaml deleted file mode 100644 index fb2c528..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/komiteer/index.yaml +++ /dev/null @@ -1,50 +0,0 @@ -name: Hva står ubehandlet i komiteen din nå? -description: Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Få tilbake det du har lagt ut - description: Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake. - action: /komiteer/utlegg - consequence: - - Send utlegg -- name: Inviter noen inn i komiteene - description: De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /komiteer - consequence: - - Inviter - invite: - group: komiteer - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon og hvor den står. En lenke som går ut ubrukt, kan sendes på nytt. - action: /komiteer - consequence: - - Confirm - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon. Den blir ferdig av seg selv når personen logger inn, og står som utløpt når lenken gikk ut ubrukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: komiteer - transitions: - - from: open - to: done - label: Er inne - - from: expired - to: open - label: Send på nytt - - from: expired - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/komiteer/utlegg-sent.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/komiteer/utlegg-sent.yaml deleted file mode 100644 index 92f5c74..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/komiteer/utlegg-sent.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: Hva skjer med utlegget mitt nå? -description: Utlegget er sendt til kasserer. Du får beskjed når det er sjekket. -alternatives: -- name: Pengene kommer på konto - description: Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga. diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/komiteer/utlegg.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/komiteer/utlegg.yaml deleted file mode 100644 index e419f0d..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/komiteer/utlegg.yaml +++ /dev/null @@ -1,38 +0,0 @@ -followup: false -name: Har du lagt ut penger for komiteen og vil ha dem tilbake? -description: Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Få pengene tilbake - description: Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten. - action: /komiteer/utlegg-sent - consequence: - - Send inn - record_as: utlegg - features: - - name: Fra krav til utbetaling - description: Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor. - icon: lucide:wallet - - name: Kasserer ser dette - description: Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster. - icon: lucide:coins - - name: Krav om refusjon - requirements: - - name: navn - label: Navn - type: text - placeholder: Kari Nordmann - - name: belop - label: Beløp - type: text - placeholder: 450 kr - - name: hva - label: Hva gjaldt det - type: textarea - placeholder: Kaffe og kjeks til dugnaden - description: Ha kvittering eller bilag klart før du fyller ut. - icon: lucide:receipt - encouragements: - - Legg ved bilag om du har det, så går det raskere. diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/lekeplasser/_section.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/lekeplasser/_section.yaml deleted file mode 100644 index 1652221..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/lekeplasser/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: lekeplasser diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/lekeplasser/index.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/lekeplasser/index.yaml deleted file mode 100644 index 849a19d..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/lekeplasser/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -name: Hva må fikses på lekeplassene og stien nå? -description: Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Det som er meldt inn av skader - description: Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses. - action: /lekeplasser - consequence: - - Lagre - features: - - name: Anleggsfeil - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: anleggsfeil - requires_group: lekeplasser - transitions: - - from: open - to: tatt_tak_i - label: Ta tak i saken - - from: tatt_tak_i - to: utbedret - label: Merk som utbedret -- name: Inviter noen inn i Leke- og møteplasser - description: De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /lekeplasser - consequence: - - Inviter - invite: - group: lekeplasser - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon og hvor den står. En lenke som går ut ubrukt, kan sendes på nytt. - action: /lekeplasser - consequence: - - Lagre - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon. Den blir ferdig av seg selv når personen logger inn, og står som utløpt når lenken gikk ut ubrukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: lekeplasser - transitions: - - from: open - to: done - label: Er inne - - from: expired - to: open - label: Send på nytt - - from: expired - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/medlem/index.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/medlem/index.yaml deleted file mode 100644 index 264baba..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/medlem/index.yaml +++ /dev/null @@ -1,72 +0,0 @@ -name: Vil du bli medlem, eller endre medlemskapet ditt? -description: Bli medlem av Tomter Vel, eller oppdater opplysningene dine hvis du allerede er medlem. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Bli medlem av Tomter Vel - description: Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet. - action: /received/bli-medlem - consequence: - - Bli medlem - record_as: husstander - features: - - name: Etter innmelding - description: Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem. - icon: lucide:coins - - name: Hvem svarer deg - description: Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden. - icon: lucide:user - - name: Meld deg inn - requirements: - - name: navn - label: Navn - type: text - placeholder: Ola Nordmann - - name: adresse - label: Adresse - type: text - placeholder: Tomterveien 12 - - name: email - label: Email - type: email - - name: telefon - label: Telefon - type: tel - optional: true - placeholder: 123 45 678 - description: Ha adressen i Tomter og en e-post du bruker klar. - icon: lucide:user-plus - encouragements: - - Kasserer sender deg kontingenten på e-post rett etterpå. -- name: Oppdater eller avslutt medlemskapet - description: Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger. - action: /received/endre-medlemskap - consequence: - - Send endring - record_as: medlemsendringer - features: - - name: Etter du sender inn - description: Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om. - icon: lucide:refresh-cw - - name: Hvem svarer deg - description: Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden. - icon: lucide:user - - name: Endre medlemskap - requirements: - - name: navn - label: Navn - type: text - placeholder: Ola Nordmann - - name: adresse - label: Adresse - type: text - placeholder: Ny adresse i Tomter - - name: hva_er_nytt - label: Hva vil du endre? - type: textarea - placeholder: Ny e-post, ny adresse, eller ønske om utmelding - description: Skriv navnet ditt og hva som er nytt. - icon: lucide:pencil - encouragements: - - Det tar bare et par minutter, og kasserer ordner resten. diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/melde-fra/index.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/melde-fra/index.yaml deleted file mode 100644 index cee30e1..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/melde-fra/index.yaml +++ /dev/null @@ -1,69 +0,0 @@ -name: Hva vil du melde fra om? -description: Har du sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien? Her sier du fra til velet. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Meld fra om en trafikkfare - description: Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre. - action: /received/trafikkfare - consequence: - - Send inn - record_as: trafikkmeldinger - features: - - name: Hva skjer videre - description: Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist. - icon: lucide:route - - name: Hvem leser dette - description: Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no. - icon: lucide:car - - name: Meld trafikkfare - requirements: - - name: hvor - label: Hvor var det - type: text - placeholder: Krysset Tomterveien / Elvestien - - name: hva - label: Hva så du - type: textarea - placeholder: Dårlig sikt i krysset, biler kjører fort - - name: epost - label: E-post (valgfritt) - type: email - optional: true - placeholder: ola.nordmann@epost.no - description: Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer. - icon: lucide:alert-triangle - encouragements: - - Bare noen linjer om hva og hvor er nok til at vi kan følge opp. -- name: Meld fra om noe ødelagt - description: Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det. - action: /received/anleggsfeil - consequence: - - Send inn - record_as: anleggsfeil - features: - - name: Hva skjer videre - description: Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet. - icon: lucide:wrench - - name: Hvem leser dette - description: Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no. - icon: lucide:hammer - - name: Meld anleggsfeil - requirements: - - name: hvor - label: Hvor er det - type: select - options: - - Lekeplassen - - Elvestien - - Skøytebanen - - Et annet sted - - name: hva - label: Hva er ødelagt - type: textarea - placeholder: Løs planke på gjerdet ved husken - description: Fortell hva som er ødelagt og omtrent hvor det er. - icon: lucide:construction - encouragements: - - Det holder med noen ord om hva du så og hvor. diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/naboer/index.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/naboer/index.yaml deleted file mode 100644 index 9c89f62..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/naboer/index.yaml +++ /dev/null @@ -1,125 +0,0 @@ -name: Trenger du en hånd, eller kan du gi en? -description: Godt naboskap gjør hverdagen lettere. Trenger du en hånd, kan gi en, eller har noe å låne bort? -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Få en nabo til å stille opp - description: Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp. - action: /received/trenger-hjelp - consequence: - - Be om hjelp - record_as: hjelpebehov - features: - - name: Fra melding til hjelp - description: Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed. - icon: lucide:hand-helping - - name: Hvem ser dette - description: Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden. - icon: lucide:users - - name: Be om en hånd - requirements: - - name: navn - label: Navn - type: text - placeholder: Kari Nordmann - - name: email - label: E-post - type: email - placeholder: kari@eksempel.no - - name: adresse - label: Adresse - type: text - placeholder: Tomterveien 12 - - name: hva - label: Hva trenger du hjelp til - type: textarea - placeholder: Måke snø på trappa, handle inn litt mat - - name: telefon - label: Telefon - type: tel - optional: true - placeholder: 123 45 678 - description: Skriv kort hva du trenger hjelp til. - icon: lucide:heart-handshake - encouragements: - - Vi finner en nabo som kan stille opp så fort som mulig. -- name: Bli spurt når en nabo trenger en hånd - description: Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer. - action: /received/kan-hjelpe - consequence: - - Meld deg - record_as: hjelpere - features: - - name: Fra påmelding til spørsmål - description: Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra. - icon: lucide:user-check - - name: Hvem ser dette - description: Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no. - icon: lucide:heart-handshake - - name: Meld deg som hjelper - requirements: - - name: navn - label: Navn - type: text - placeholder: Kari Nordmann - - name: email - label: E-post - type: email - placeholder: kari@eksempel.no - - name: telefon - label: Telefon - type: tel - placeholder: 123 45 678 - - name: kan - label: Hva kan du hjelpe med - type: select - options: - - Snømåking - - Handling - - Kjøring - - Småfiks i huset - - En prat og litt selskap - - Det som trengs - multiple: true - description: Fortell kort hva du kan bidra med. - icon: lucide:hand-helping - encouragements: - - Du blir bare kontaktet når noe passer for deg. -- name: Lån ut eller lån av naboen - description: Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det. - action: /received/dele-utstyr - consequence: - - Legg ut oppslag - record_as: oppslag - features: - - name: Fra oppslag til avtale - description: Oppslaget står på tavla til du tar det ned selv, redaktøren gjør det, eller en måned har gått. - icon: lucide:clipboard-list - - name: Hvem ser dette - description: Alle som åpner tavla, uten navn og e-post. Naboer som kan låne ut, eller vil låne, svarer deg rett på e-post. - icon: lucide:users - - name: Lån eller utlån - requirements: - - name: navn - label: Navn - type: text - placeholder: Ola Nordmann - - name: email - label: E-post - type: email - placeholder: ola@eksempel.no - - name: har_eller_trenger - label: Har du eller trenger du - type: select - options: - - Jeg har noe å låne ut - - Jeg trenger å låne noe - - name: hva - label: Hva gjelder det - type: textarea - placeholder: Hengerfeste til bil, tilhenger, stige - description: Skriv kort hva det gjelder, så folk skjønner det med en gang. - icon: lucide:package - encouragements: - - Det står på tavla med en gang. diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/nabohjelp/_section.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/nabohjelp/_section.yaml deleted file mode 100644 index 5b3a2ad..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/nabohjelp/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: nabohjelp diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/nabohjelp/index.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/nabohjelp/index.yaml deleted file mode 100644 index 075778c..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/nabohjelp/index.yaml +++ /dev/null @@ -1,91 +0,0 @@ -name: Hvem trenger hjelp, og hvem kan stille opp? -description: Her kobler du naboer som trenger hjelp med dem som kan stille opp. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Naboer som trenger en hånd - description: Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe. - action: /nabohjelp - consequence: - - Lagre - features: - - name: Hjelpebehov - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: hjelpebehov - requires_group: nabohjelp - transitions: - - from: formidlet - to: ordnet - label: Meld ordnet - - from: formidlet - to: ikke_lost - label: Meld ikke løst - - from: open - to: formidlet - label: Koble til nabo - - from: open - to: ikke_lost - label: Meld ikke løst -- name: Naboer som kan stille opp - description: Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem. - action: /nabohjelp - consequence: - - Lagre - features: - - name: Hjelpere - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: hjelpere - requires_group: nabohjelp - transitions: - - from: open - to: registrert - label: Registrer som hjelper - - from: open - to: trukket - label: Meld trukket -- name: Inviter noen inn i nabohjelpen - description: De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /nabohjelp - consequence: - - Inviter - invite: - group: nabohjelp - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon og hvor den står. En lenke som går ut ubrukt, kan sendes på nytt. - action: /nabohjelp - consequence: - - Lagre - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon. Den blir ferdig av seg selv når personen logger inn, og står som utløpt når lenken gikk ut ubrukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: nabohjelp - transitions: - - from: open - to: done - label: Er inne - - from: expired - to: open - label: Send på nytt - - from: expired - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/anleggsfeil.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/anleggsfeil.yaml deleted file mode 100644 index ebedd65..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/anleggsfeil.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: Hva skjer med meldingen min nå? -description: Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt. -alternatives: -- name: Komiteen tar tak i det - description: Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg. -- name: Se andre meldte feil - description: Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet. - action: /status/anleggsfeil - consequence: - - Se meldte feil diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/bli-medlem.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/bli-medlem.yaml deleted file mode 100644 index 5cab090..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/bli-medlem.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: Hva skjer etter at jeg har meldt meg inn? -description: Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert. -alternatives: -- name: Kasserer sender deg betalingsinfo - description: Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten. diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/dele-utstyr.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/dele-utstyr.yaml deleted file mode 100644 index eca5272..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/dele-utstyr.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: Hva skjer med oppslaget ditt? -description: Det står på tavla nå, uten navn og e-post. Naboer som kan låne ut, eller vil låne, svarer deg på e-post. -alternatives: -- name: Naboene svarer deg direkte - description: Hvert svar kommer som e-post med naboens adresse. Du velger selv hvem du avtaler med, og tar ned oppslaget når det er ordnet; lenken står i e-posten. Spørsmål går til styret på post@tomtervel.no. -- name: Se oppslagstavla - description: Det som står ute akkurat nå. - action: /status/oppslag - consequence: - - Til tavla diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/endre-medlemskap.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/endre-medlemskap.yaml deleted file mode 100644 index 54f47ec..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/endre-medlemskap.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: Hva skjer nå med det jeg meldte inn? -description: Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut. -alternatives: -- name: Kasserer retter opp opplysningene - description: Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg. diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/hjelpe-til.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/hjelpe-til.yaml deleted file mode 100644 index a1ec5b1..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/hjelpe-til.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: Hva skjer nå som jeg har meldt meg? -description: Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg. -alternatives: -- name: Komiteen tar kontakt - description: Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden. diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/horingsinnspill.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/horingsinnspill.yaml deleted file mode 100644 index e86afc6..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/horingsinnspill.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: Hva skjer med det jeg har sagt om saken? -description: Innspillet ditt er sendt til høringsinstansen i velet. -alternatives: -- name: Innspillet ditt inn i vurderingen - description: De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med. diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/kan-hjelpe.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/kan-hjelpe.yaml deleted file mode 100644 index 15be94e..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/kan-hjelpe.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: Hva skjer nå som jeg har registrert meg? -description: Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe. -alternatives: -- name: Du blir kontaktet ved behov - description: Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte. diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/komite.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/komite.yaml deleted file mode 100644 index 450a7c3..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/komite.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: Hva skjer nå som jeg har meldt interesse for en komité? -description: Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg. -alternatives: -- name: Vi finner riktig komité til deg - description: Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer. diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/melde-seg.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/melde-seg.yaml deleted file mode 100644 index 599b878..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/melde-seg.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: Hva skjer nå? -description: Svaret ditt er sendt til den som la ut oppslaget. -alternatives: -- name: Den som la ut oppslaget tar kontakt - description: E-posten din gikk rett til dem. Hører du ikke noe, kan det være at noen andre var først ute. Spørsmål går til styret på post@tomtervel.no. diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/trafikkfare.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/trafikkfare.yaml deleted file mode 100644 index 7fb87a9..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/trafikkfare.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: Hva skjer med meldingen min nå? -description: Meldingen din om trafikkfaren er sendt til komiteen for trafikk. -alternatives: -- name: Trafikkomiteen tar den videre - description: Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs. -- name: Andre meldte trafikkfarer - description: Se hva andre har meldt inn, og status på sakene. - action: /status/trafikkmeldinger - consequence: - - Se andre trafikkfarer diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/trenger-hjelp.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/trenger-hjelp.yaml deleted file mode 100644 index 15f7ed8..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/received/trenger-hjelp.yaml +++ /dev/null @@ -1,5 +0,0 @@ -name: Hva skjer nå som jeg har bedt om hjelp? -description: Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp. -alternatives: -- name: Vi finner en nabo til deg - description: Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer. diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/redaktor/_section.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/redaktor/_section.yaml deleted file mode 100644 index 2439638..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/redaktor/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: redaktor diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/redaktor/index.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/redaktor/index.yaml deleted file mode 100644 index bb1d965..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/redaktor/index.yaml +++ /dev/null @@ -1,79 +0,0 @@ -name: Hva står på oppslagstavla nå? -description: Redaktøren tar ned oppslag som er ordnet eller ikke hører hjemme, og ser svarene som har gått. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Oppslag som står ute - description: Det naboene har lagt ut om noe de har eller trenger. - action: /redaktor - consequence: - - Bekreft - features: - - name: Oppslag - description: Hver rad er ett oppslag. Ta det ned når det er ordnet eller ikke hører hjemme. - resource: - source: - kind: kv - bucket: oppslag - requires_group: redaktor - transitions: - - from: open - to: tatt_ned - label: Ta ned oppslaget -- name: Svar som har gått - description: Hvert svar gikk rett til den som la ut oppslaget; her ser du at det skjedde. - action: /redaktor - consequence: - - Bekreft - features: - - name: Svar - description: Hver rad er ett svar, med e-posten til den som svarte. Merk som lest når du har sett det. - resource: - source: - kind: kv - bucket: svar - requires_group: redaktor - transitions: - - from: open - to: lest - label: Lest -- name: Inviter noen inn som redaktør - description: De får en konto, plass blant redaktørene, og en engangslenke der de selv velger passord eller passnøkkel. - action: /redaktor - consequence: - - Inviter - invite: - group: redaktor - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon og hvor den står. En lenke som går ut ubrukt, kan sendes på nytt. - action: /redaktor - consequence: - - Bekreft - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon. Den blir ferdig av seg selv når personen logger inn, og står som utløpt når lenken gikk ut ubrukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: redaktor - transitions: - - from: open - to: done - label: Er inne - - from: expired - to: open - label: Send på nytt - - from: expired - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/status/anleggsfeil/index.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/status/anleggsfeil/index.yaml deleted file mode 100644 index 32a6199..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/status/anleggsfeil/index.yaml +++ /dev/null @@ -1,19 +0,0 @@ -name: Hva skjer med det jeg har meldt fra om? -description: Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Status på meldte anleggsfeil - description: Alle meldinger er åpne for alle å se. - features: - - name: Anleggsfeil - description: Hver rad er én sak og hvor langt den har kommet. Navn og kontaktopplysninger vises ikke her. - resource: - source: - kind: kv - bucket: anleggsfeil - public: true - states: [] - empty: Ingenting her ennå. - jq: 'sort_by(.submitted_ms) | reverse | .[] | .responses |= {hva: .hva, hvor: .hvor}' diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/status/oppslag/[key].yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/status/oppslag/[key].yaml deleted file mode 100644 index 8e43987..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/status/oppslag/[key].yaml +++ /dev/null @@ -1,38 +0,0 @@ -name: Vil du låne ut, eller låne, det som står i oppslaget? -description: Du svarer på ett oppslag. Den som la det ut får e-posten din med en gang, og tar kontakt. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Si fra til den som la ut oppslaget - description: Legg igjen e-posten din, så får de vite at du kan låne ut, eller vil låne. - action: /received/melde-seg - consequence: - - Send svar - record_as: svar - features: - - name: Hva skjer - description: E-posten din går rett til den som la ut oppslaget. Dere avtaler resten dere imellom. - icon: lucide:mail - - name: Hvem ser dette - description: Den som la ut oppslaget, og redaktøren. - icon: lucide:users - - name: Ditt svar - requirements: - - name: email - label: E-post - type: email - placeholder: ola@eksempel.no - value: '{user.email}' - - name: hilsen - label: En hilsen, om du vil - type: textarea - optional: true - placeholder: Jeg har en stige du kan låne i helga - - name: oppslag - type: record - of: oppslag - value: '{key}' - icon: lucide:package - encouragements: - - Flere kan svare; den som la ut velger selv. diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/status/oppslag/index.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/status/oppslag/index.yaml deleted file mode 100644 index 47add9f..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/status/oppslag/index.yaml +++ /dev/null @@ -1,23 +0,0 @@ -name: Hva er sendt inn, og hvor langt har det kommet? -description: Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Oversikt over det som er meldt inn - description: Åpen liste – navn og detaljer vises ikke. - features: - - name: Oppslag - description: Hver rad er én sak og hvor langt den har kommet. Navn og kontaktopplysninger vises ikke her. - resource: - source: - kind: kv - bucket: oppslag - public: true - states: - - open - empty: Ingenting her ennå. - jq: 'sort_by(.submitted_ms) | reverse | .[] | .responses |= {har_eller_trenger: .har_eller_trenger, hva: .hva}' - link: - to: /status/oppslag/{id} - label: Jeg kan låne ut eller låne denne diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/status/trafikkmeldinger/index.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/status/trafikkmeldinger/index.yaml deleted file mode 100644 index aa2c5ee..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/status/trafikkmeldinger/index.yaml +++ /dev/null @@ -1,19 +0,0 @@ -name: Er det meldt fra om noe farlig i trafikken der jeg bor? -description: Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Trafikkmeldinger og status - description: Alle meldinger som er sendt inn, og hvor de står nå. - features: - - name: Trafikkmeldinger - description: Hver rad er én sak og hvor langt den har kommet. Navn og kontaktopplysninger vises ikke her. - resource: - source: - kind: kv - bucket: trafikkmeldinger - public: true - states: [] - empty: Ingenting her ennå. - jq: 'sort_by(.submitted_ms) | reverse | .[] | .responses |= {hva: .hva, hvor: .hvor}' diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/styret/_section.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/styret/_section.yaml deleted file mode 100644 index 5a34160..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/styret/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: styret diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/styret/index.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/styret/index.yaml deleted file mode 100644 index 33594e4..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/styret/index.yaml +++ /dev/null @@ -1,250 +0,0 @@ -name: Hva venter på styret akkurat nå? -description: 'Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.' -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Høringsinnspill fra beboerne - description: Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar. - action: /styret - consequence: - - Lagre - features: - - name: Innspill - description: Hver rad er én sak og hvor langt den har kommet. En annen pult flytter disse. - resource: - source: - kind: kv - bucket: innspill - requires_group: styret - transitions: [] -- name: Søknader til komiteene - description: Her ligger alle som har meldt seg til en komité og venter på en plass. - action: /styret - consequence: - - Lagre - features: - - name: Komitesoknader - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: komitesoknader - requires_group: styret - transitions: - - from: open - to: plassert - label: Sett i komité - - from: open - to: avslatt - label: Avslå søknaden -- name: Meldinger om trafikkfarer - description: Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier. - action: /styret - consequence: - - Lagre - features: - - name: Trafikkmeldinger - description: Hver rad er én sak og hvor langt den har kommet. En annen pult flytter disse. - resource: - source: - kind: kv - bucket: trafikkmeldinger - requires_group: styret - transitions: [] -- name: Inviter noen inn i Arrangementer - description: De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: arrangementer - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Inviter noen inn i Høringsinstans - description: De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: horingsinstans - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Inviter noen inn i kassereren - description: De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: kasserer - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Inviter noen inn i komiteene - description: De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: komiteer - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Inviter noen inn i Leke- og møteplasser - description: De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: lekeplasser - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Inviter noen inn i nabohjelpen - description: De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: nabohjelp - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Inviter noen inn som redaktør - description: De får en konto, plass blant redaktørene, og en engangslenke der de selv velger passord eller passnøkkel. - action: /styret - consequence: - - Inviter - invite: - group: redaktor - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Inviter noen inn i styret - description: De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: styret - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Inviter noen inn i Trafikkforhold - description: De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /styret - consequence: - - Inviter - invite: - group: trafikk - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon og hvor den står. En lenke som går ut ubrukt, kan sendes på nytt. - action: /styret - consequence: - - Lagre - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon. Den blir ferdig av seg selv når personen logger inn, og står som utløpt når lenken gikk ut ubrukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: styret - transitions: - - from: open - to: done - label: Er inne - - from: expired - to: open - label: Send på nytt - - from: expired - to: done - label: Er inne -- name: Forslag til endringer på siden - description: Det de som står som ansvarlige for et spørsmål, har foreslått å endre. De får beskjed når forslaget flyttes. - action: /styret - consequence: - - Lagre - features: - - name: Forslag - description: Hver rad er ett forslag, med siden det gjelder. Knappene fører opp det du nettopp har gjort med det. - resource: - source: - kind: kv - bucket: portal_edit_suggestions - requires_group: styret - transitions: - - from: open - to: discussed - label: Vi ser på det - - from: open - to: done - label: Endringen er gjort - - from: open - to: declined - label: Gjøres ikke - - from: discussed - to: done - label: Endringen er gjort - - from: discussed - to: declined - label: Gjøres ikke diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/trafikk/_section.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/trafikk/_section.yaml deleted file mode 100644 index dbe5246..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/trafikk/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: trafikk diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/trafikk/index.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/trafikk/index.yaml deleted file mode 100644 index 1bb8e19..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/questions/trafikk/index.yaml +++ /dev/null @@ -1,71 +0,0 @@ -name: Hvilke trafikkfarer må følges opp? -description: Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier. -responsible: - name: Styret i Tomter Vel - contact: post@tomtervel.no -alternatives: -- name: Farlige steder i trafikken - description: Farlige steder i trafikken som naboer har meldt inn. - action: /trafikk - consequence: - - Lagre - features: - - name: Trafikkmeldinger - description: Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den. - resource: - source: - kind: kv - bucket: trafikkmeldinger - requires_group: trafikk - transitions: - - from: open - to: tatt_opp - label: Ta opp med kommunen - - from: open - to: avvist - label: Avvis meldingen - - from: tatt_opp - to: ordnet - label: Meld ordnet - - from: tatt_opp - to: avvist - label: Avvis meldingen -- name: Inviter noen inn i Trafikkforhold - description: De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem. - action: /trafikk - consequence: - - Inviter - invite: - group: trafikk - features: - - name: Hvem - description: Navnet deres, og adressen kontoen og engangslenken går til. - requirements: - - name: name - label: Navn - - name: email - label: E-post - type: email -- name: Sendte invitasjoner - description: Hver invitasjon og hvor den står. En lenke som går ut ubrukt, kan sendes på nytt. - action: /trafikk - consequence: - - Lagre - features: - - name: Hvem som er invitert - description: Hver rad er én invitasjon. Den blir ferdig av seg selv når personen logger inn, og står som utløpt når lenken gikk ut ubrukt. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: trafikk - transitions: - - from: open - to: done - label: Er inne - - from: expired - to: open - label: Send på nytt - - from: expired - to: done - label: Er inne diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/site.yaml b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/site.yaml deleted file mode 100644 index c264291..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/site.yaml +++ /dev/null @@ -1,16 +0,0 @@ -title: Tomter Vel -lang: no -mail: - from: Tomter Vel - reply_to: post@tomtervel.no - invite: - subject: Din konto hos {site_name} - body: |- - Hei {name}, - - {site_name} har laget en konto til deg og lagt deg til i {group}. Brukernavnet ditt er {username}. - - Velg passord her før {expires}: - {link} - - Etterpå logger du inn på {site}. diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/words.json b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/words.json deleted file mode 100644 index e1d79fa..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/site/words.json +++ /dev/null @@ -1,1172 +0,0 @@ -{ - "aggregates.yaml": { - "hjelpebehov": { - "formidlet": { - "subject": "En nabo er koblet på", - "body": "Vi har funnet en nabo som kan hjelpe. De tar kontakt med deg direkte.\n\nDet du kan gjøre nå: {site}/decide/trenger-hjelp?chain={chain}&email={email}" - }, - "open": { - "subject": "Vi leter etter en nabo til deg", - "body": "Vi har mottatt det du trenger hjelp til, og ser etter en nabo som kan stille opp. Du hører fra oss så snart vi har funnet noen." - }, - "ordnet": { - "subject": "Bra det løste seg", - "body": "Godt å høre at det ordnet seg. Takk for at du sa fra, og lykke til videre." - } - }, - "husstander": { - "betalt": { - "subject": "Medlemskapet er i orden", - "body": "Kontingenten er registrert betalt. Du er nå medlem av Tomter Vel - velkommen med!" - }, - "open": { - "subject": "Nesten i mål som medlem", - "body": "Takk for at du vil bli medlem. Du får en betalingsoppfordring med kontonummer og beløp så snart kasserer har sett på saken.\n\nDet du kan gjøre nå: {site}/decide/bli-medlem?chain={chain}&email={email}" - } - }, - "oppslag": { - "open": { - "subject": "Nytt oppslag på tavla: {hva}", - "body": "Et nytt oppslag står på tavla fra nå av.\n\n{har_eller_trenger}: {hva}\n\nDet står der til den som la det ut tar det ned, til redaktøren gjør det, eller i en måned. Hører det ikke hjemme, tas det ned her: {site}/redaktor" - } - }, - "svar": { - "open": { - "subject": "En nabo har svart på oppslaget ditt", - "body": "Hei,\n\nEn nabo har svart på oppslaget ditt «{oppslag.hva}». Ta kontakt direkte: {email}\n\n{hilsen}\n\nFlere kan svare så lenge oppslaget står; du velger selv hvem du avtaler med. Når det er ordnet, tar du det ned her:\n{site}/decide/dele-utstyr?chain={oppslag.id}&email={oppslag.email}" - } - } - }, - "questions/arrangementer/index.yaml": { - "question": "Hvem har meldt seg, og hvor langt har jeg kommet med å sette dem opp?", - "description": "Oversikt over folk som vil hjelpe til, slik at du kan følge opp og sette dem opp på noe som passer.", - "confirm": "Lagre", - "buckets": { - "frivillige": { - "heading": "Frivillige til arrangementer og dugnad", - "description": "Her ser du hvem som har meldt seg til dugnad, 17. mai eller andre arrangementer, og hvor langt du har kommet med hver av dem.", - "moves": { - "kontaktet->satt_opp": "Sett opp", - "kontaktet->takket_nei": "Takket nei", - "open->kontaktet": "Merk som kontaktet", - "open->takket_nei": "Takket nei" - }, - "list_title": "Frivillige", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - } - }, - "links": {}, - "invites": { - "arrangementer": { - "heading": "Inviter noen inn i Arrangementer", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon og hvor den står. En lenke som går ut ubrukt, kan sendes på nytt.", - "done": "Er inne", - "again": "Send på nytt", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon. Den blir ferdig av seg selv når personen logger inn, og står som utløpt når lenken gikk ut ubrukt." - }, - "suggestions": null - }, - "questions/bidra/index.yaml": { - "question": "Vil du hjelpe til i nabolaget?", - "description": "Vil du stille opp for nabolaget? Her melder du deg til dugnad og arrangementer, eller til en av komiteene.", - "needs": { - "hjelpe-til": { - "heading": "Bli med på dugnad eller arrangement", - "description": "17. mai, dugnad eller andre arrangementer trenger folk som stiller opp. Si fra hva du kan bidra med, så setter vi deg opp på noe som passer.", - "button": "Meld meg på", - "encouragement": "Det holder med noen ord om hva du kan tenke deg – vi tar kontakt når det nærmer seg.", - "icon": "hand-helping", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Hva skjer videre", - "road_description": "Arrangementskomiteen tar kontakt og finner ut hva som passer for deg. Sier du ja, blir du satt opp på en oppgave – sier du nei takk, er det helt greit.", - "road_icon": "lucide:clipboard-list", - "who_title": "Hvem leser dette", - "who_description": "Arrangementskomiteen leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "form_title": "Meld deg som hjelper", - "form_description": "Fortell kort hva du kan hjelpe til med.", - "labels": { - "navn": "Navn", - "telefon": "Telefon", - "hva": "Hva kan du hjelpe til med?" - }, - "hints": { - "navn": "Kari Nordmann", - "telefon": "912 34 567", - "hva": "" - } - }, - "komite": { - "heading": "Sitt i en komité som betyr noe for deg", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender. Si hvilken komité du har lyst til å være med i.", - "button": "Meld interesse", - "encouragement": "Det tar bare et minutt, og noen fra styret svarer deg.", - "icon": "users", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Hva skjer videre", - "road_description": "Styret ser på ønsket ditt og finner en plass i komiteen du har meldt deg til, eller sier fra hvis det ikke er rom akkurat nå.", - "road_icon": "lucide:clipboard-list", - "who_title": "Hvem leser dette", - "who_description": "Styret leser det du sender, og du kan nå dem på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:handshake", - "form_title": "Meld deg til en komité", - "form_description": "Skriv hvilken komité du er interessert i.", - "labels": { - "navn": "Navn", - "epost": "E-post", - "komite": "Hvilken komité?" - }, - "hints": { - "navn": "Kari Nordmann", - "epost": "kari@eksempel.no", - "komite": "" - } - } - } - }, - "questions/decide/bli-medlem.yaml": { - "question": "What would you like to do?", - "description": "", - "moves": { - "utmeldt": { - "heading": "Utmeldt", - "description": "", - "button": "Utmeldt" - } - } - }, - "questions/decide/dele-utstyr.yaml": { - "question": "Skal oppslaget om utstyret fortsatt stå ute?", - "description": "Her sier du fra at utstyret er hentet eller ikke lenger tilgjengelig for utlån.", - "moves": { - "tatt_ned": { - "heading": "Meld at utstyret er tatt ned", - "description": "Oppslaget fjernes fra siden, så ingen flere spør om å låne det.", - "button": "Ta ned oppslaget" - } - } - }, - "questions/decide/kan-hjelpe.yaml": { - "question": "Vil du fortsatt kunne bli spurt om å hjelpe en nabo?", - "description": "Her ser du naboer som har bedt om en hånd, og kan velge om du fortsatt kan bidra eller trekke deg for nå.", - "moves": { - "trukket": { - "heading": "Ta en pause fra nabohjelpen", - "description": "Du blir tatt av lista over naboer som kan spørres, men kan melde deg på igjen når det passer bedre.", - "button": "Trekk meg" - } - } - }, - "questions/decide/trenger-hjelp.yaml": { - "question": "Har naboen fått hjelpen de trengte?", - "description": "Her ser du henvendelsen fra naboen som trengte en hånd, og kan si fra når det er ordnet.", - "moves": { - "ordnet": { - "heading": "Meld fra at hjelpen er gitt", - "description": "Da vet vi at naboen har fått hjelpen sin, og saken lukkes.", - "button": "Merk som ordnet" - } - } - }, - "questions/horingsinstans/index.yaml": { - "question": "Hva sier vi i høringssvaret?", - "description": "Her samler du innspillene og ser hva som er tatt med i velets høringssvar.", - "confirm": "Send svar", - "buckets": { - "innspill": { - "heading": "Innspill til høringssvar", - "description": "Her ligger innspill fra beboere til saker kommunen har på høring.", - "moves": { - "open->tatt_med": "Tatt med i svaret", - "open->ikke_tatt_med": "Ikke tatt med" - }, - "list_title": "Innspill", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - } - }, - "links": {}, - "invites": { - "horingsinstans": { - "heading": "Inviter noen inn i Høringsinstans", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon og hvor den står. En lenke som går ut ubrukt, kan sendes på nytt.", - "done": "Er inne", - "again": "Send på nytt", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon. Den blir ferdig av seg selv når personen logger inn, og står som utløpt når lenken gikk ut ubrukt." - }, - "suggestions": null - }, - "questions/index.yaml": { - "question": "Hva gjør Tomter Vel, og hva kan du få her?", - "description": "Velforeningen for Tomter, stiftet i 1947, drevet på fritida av naboene dine. Alt du kan be om her havner hos en komité eller styret, og du ser selv hvor saken står.", - "opener": { - "heading": "Velforeningen for Tomter siden 1947", - "description": "Vi er sju komiteer som jobber på fritida for bygda vår. 157 husstander er med.", - "features": { - "medlem": { - "heading": "157 husstander er medlemmer", - "description": "Kontingenten går til arrangementer, lekeplasser, elvestien og arbeidet for tryggere trafikk.", - "icon": "users" - }, - "nabo": { - "heading": "Naboer som stiller opp for hverandre", - "description": "Trenger du hjelp med snømåking, handling eller skyss, finner vi en nabo som kan. Du kan også låne og låne ut utstyr.", - "icon": "heart-handshake" - } - } - }, - "shopping": { - "heading": "Siste fra bygda", - "description": "Nye meldinger og oppslag, slik de står akkurat nå.", - "items": { - "status-anleggsfeil": { - "heading": "Feil på lekeplasser og sti", - "description": "Det som er meldt inn, og hvor langt vi har kommet med å fikse det.", - "link": "Alle feilmeldinger", - "empty": "Ingenting er meldt ødelagt akkurat nå. Ser du noe, si fra.", - "icon": "construction" - }, - "status-oppslag": { - "heading": "Oppslagstavla for naboer", - "description": "Utstyr som er til låns, og det naboene leter etter. Svar rett fra oppslaget.", - "link": "Hele oppslagstavla", - "empty": "Tavla er tom nå. Legg gjerne ut det første oppslaget.", - "icon": "list" - }, - "status-trafikkmeldinger": { - "heading": "Farlige steder i trafikken", - "description": "Det naboer har meldt fra om, og hva velet har gjort med det.", - "link": "Alle trafikkmeldinger", - "empty": "Ingen farlige steder er meldt inn nå. Har du sett et, fortell oss.", - "icon": "car" - } - } - }, - "doors": { - "medlem": { - "heading": "Bli medlem eller endre opplysningene dine", - "description": "Meld deg inn, betal kontingenten, eller gi beskjed om flytting, ny e-post eller utmelding.", - "button": "Til medlemskap", - "icon": "house", - "for_whom": "Deg som bor i Tomter", - "behind": "Å bli medlem og få betalt kontingenten, at velet har riktige opplysninger om dem." - }, - "melde-fra": { - "heading": "Meld fra om noe som bør fikses", - "description": "Sett du noe farlig i trafikken, eller noe ødelagt på lekeplassen eller elvestien? Gi oss beskjed.", - "button": "Meld fra", - "icon": "alert-triangle", - "for_whom": "Deg som har sett noe som bør fikses", - "behind": "At velet tar det opp med kommunen eller den som eier veien, at det blir fikset før noen skader seg." - }, - "bidra": { - "heading": "Bli med og gjør en innsats", - "description": "Vi trenger folk på 17. mai, dugnader og i komiteene. Det trengs ikke mer enn litt tid du har å avse.", - "button": "Bli med", - "icon": "hand-helping", - "for_whom": "Deg som vil gjøre en innsats", - "behind": "Å bli satt opp på noe som passer dem, en plass i den komiteen som driver med det de bryr seg om." - }, - "naboer": { - "heading": "Få hjelp av naboer, eller gi en hånd selv", - "description": "Trenger du en hånd med snømåking, handling eller skyss? Eller kan du stille opp for en nabo? Her møtes dere.", - "button": "Til nabohjelp", - "icon": "heart-handshake", - "for_whom": "Deg som trenger hjelp eller kan gi en hånd", - "behind": "At en nabo stiller opp, å bli spurt når det passer, et oppslag som naboene ser." - } - }, - "needs": { - "horingsinnspill": { - "heading": "Få din mening med i høringssvaret", - "description": "Har kommunen en sak på høring du mener noe om? Send oss innspillet ditt, så tar vi det med i velets svar.", - "button": "Send innspill", - "encouragement": "Innspillet ditt blir lest av høringsutvalget vårt og veier inn i svaret vi sender kommunen.", - "icon": "megaphone", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Hva skjer videre", - "road_description": "Innspillet ditt kommer inn hos høringsutvalget. De vurderer om det tas med i velets svar til kommunen, eller om det ikke passer inn denne gangen.", - "road_icon": "lucide:route", - "who_title": "Hvem leser dette", - "who_description": "Høringsutvalget i Tomter Vel leser innspillet ditt; i mellomtiden kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:users", - "form_title": "Send et høringsinnspill", - "form_description": "Fortell hvilken sak det gjelder og hva du mener.", - "labels": { - "navn": "Navn", - "sak": "Hvilken sak gjelder det?", - "innspill": "Hva mener du?" - }, - "hints": { - "navn": "Kari Nordmann", - "sak": "Reguleringsplan for Tomterveien", - "innspill": "Jeg mener det bør settes opp fartsdumper langs den nye traseen, for barna krysser der til skolen." - } - } - } - }, - "questions/kasserer/index.yaml": { - "question": "Hva venter på meg som kasserer akkurat nå?", - "description": "Her har du oversikt over medlemmer, endringer og utlegg som venter på deg som kasserer.", - "confirm": "Lagre", - "buckets": { - "husstander": { - "heading": "Nye medlemmer som venter på registrering", - "description": "Husstander som har meldt seg inn og venter på å bli registrert som betalende medlem.", - "moves": { - "open->betalt": "Registrer betaling", - "open->utmeldt": "Meld ut" - }, - "list_title": "Husstander", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - }, - "medlemsendringer": { - "heading": "Endringer som venter på å bli registrert", - "description": "Medlemmer som har flyttet, byttet e-post eller vil melde seg ut, og venter på at opplysningene blir oppdatert.", - "moves": { - "open->oppdatert": "Registrer endring" - }, - "list_title": "Medlemsendringer", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - }, - "utlegg": { - "heading": "Utlegg som venter på deg", - "description": "Utlegg fra komitémedlemmer som venter på godkjenning eller utbetaling.", - "moves": { - "godkjent->utbetalt": "Merk som utbetalt", - "godkjent->avvist": "Avvis likevel", - "open->godkjent": "Godkjenn utlegg", - "open->avvist": "Avvis utlegg" - }, - "list_title": "Utlegg", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - } - }, - "links": {}, - "invites": { - "kasserer": { - "heading": "Inviter noen inn i kassereren", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon og hvor den står. En lenke som går ut ubrukt, kan sendes på nytt.", - "done": "Er inne", - "again": "Send på nytt", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon. Den blir ferdig av seg selv når personen logger inn, og står som utløpt når lenken gikk ut ubrukt." - }, - "suggestions": null - }, - "questions/komiteer/index.yaml": { - "question": "Hva står ubehandlet i komiteen din nå?", - "description": "Her holder du oversikt over sakene komiteen din har ansvar for, og flytter dem videre etter hvert som de blir fulgt opp.", - "confirm": "Confirm", - "buckets": {}, - "links": { - "utlegg": { - "heading": "Få tilbake det du har lagt ut", - "description": "Har du lagt ut for noe til komiteen? Send det inn så kasserer kan betale deg tilbake.", - "button": "Send utlegg" - } - }, - "invites": { - "komiteer": { - "heading": "Inviter noen inn i komiteene", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon og hvor den står. En lenke som går ut ubrukt, kan sendes på nytt.", - "done": "Er inne", - "again": "Send på nytt", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon. Den blir ferdig av seg selv når personen logger inn, og står som utløpt når lenken gikk ut ubrukt." - }, - "suggestions": null - }, - "questions/komiteer/utlegg-sent.yaml": { - "question": "Hva skjer med utlegget mitt nå?", - "description": "Utlegget er sendt til kasserer. Du får beskjed når det er sjekket.", - "next_heading": "Pengene kommer på konto", - "next_description": "Kasserer ser gjennom kvitteringen og overfører pengene til kontoen du oppga." - }, - "questions/komiteer/utlegg.yaml": { - "heading": "Få pengene tilbake", - "description": "Har du lagt ut for noe til komiteen? Send det inn, så ordner kasserer resten.", - "button": "Send inn", - "encouragement": "Legg ved bilag om du har det, så går det raskere.", - "icon": "receipt", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Fra krav til utbetaling", - "road_description": "Kasserer ser gjennom kravet og godkjenner det, og deretter blir pengene utbetalt til deg. Blir det avvist, hører du hvorfor.", - "road_icon": "lucide:wallet", - "who_title": "Kasserer ser dette", - "who_description": "Kasserer i styret leser kravet ditt, og kan nås på post@tomtervel.no om det haster.", - "who_icon": "lucide:coins", - "form_title": "Krav om refusjon", - "form_description": "Ha kvittering eller bilag klart før du fyller ut.", - "labels": { - "navn": "Navn", - "belop": "Beløp", - "hva": "Hva gjaldt det" - }, - "hints": { - "navn": "Kari Nordmann", - "belop": "450 kr", - "hva": "Kaffe og kjeks til dugnaden" - }, - "question": "Har du lagt ut penger for komiteen og vil ha dem tilbake?", - "page_description": "Har du betalt for noe på vegne av en komité? Send inn utlegget, så får du pengene tilbake." - }, - "questions/lekeplasser/index.yaml": { - "question": "Hva må fikses på lekeplassene og stien nå?", - "description": "Her følger komiteen for lekeplassene opp det som er meldt inn av skader, til det er fikset.", - "confirm": "Lagre", - "buckets": { - "anleggsfeil": { - "heading": "Det som er meldt inn av skader", - "description": "Meldinger om noe som er ødelagt på lekeplassen eller langs stien, og som bør fikses.", - "moves": { - "open->tatt_tak_i": "Ta tak i saken", - "tatt_tak_i->utbedret": "Merk som utbedret" - }, - "list_title": "Anleggsfeil", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - } - }, - "links": {}, - "invites": { - "lekeplasser": { - "heading": "Inviter noen inn i Leke- og møteplasser", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon og hvor den står. En lenke som går ut ubrukt, kan sendes på nytt.", - "done": "Er inne", - "again": "Send på nytt", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon. Den blir ferdig av seg selv når personen logger inn, og står som utløpt når lenken gikk ut ubrukt." - }, - "suggestions": null - }, - "questions/medlem/index.yaml": { - "question": "Vil du bli medlem, eller endre medlemskapet ditt?", - "description": "Bli medlem av Tomter Vel, eller oppdater opplysningene dine hvis du allerede er medlem.", - "needs": { - "bli-medlem": { - "heading": "Bli medlem av Tomter Vel", - "description": "Meld deg inn i velet, så holder vi deg oppdatert og du støtter arbeidet i nærmiljøet.", - "button": "Bli medlem", - "encouragement": "Kasserer sender deg kontingenten på e-post rett etterpå.", - "icon": "user-plus", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Etter innmelding", - "road_description": "Meldingen går til kasserer, som registrerer deg og sender deg kontingenten på e-post. Når den er betalt er du medlem.", - "road_icon": "lucide:coins", - "who_title": "Hvem svarer deg", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "form_title": "Meld deg inn", - "form_description": "Ha adressen i Tomter og en e-post du bruker klar.", - "labels": { - "navn": "Navn", - "adresse": "Adresse", - "email": "Email", - "telefon": "Telefon" - }, - "hints": { - "navn": "Ola Nordmann", - "adresse": "Tomterveien 12", - "email": "", - "telefon": "123 45 678" - } - }, - "endre-medlemskap": { - "heading": "Oppdater eller avslutt medlemskapet", - "description": "Har du flyttet, byttet e-post eller vil melde deg ut? Gi oss beskjed så vi har riktige opplysninger.", - "button": "Send endring", - "encouragement": "Det tar bare et par minutter, og kasserer ordner resten.", - "icon": "pencil", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Etter du sender inn", - "road_description": "Kasserer får beskjeden og oppdaterer medlemslisten, eller melder deg ut om det er det du ber om.", - "road_icon": "lucide:refresh-cw", - "who_title": "Hvem svarer deg", - "who_description": "Kasserer i styret leser dette, og du kan nå oss på post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:user", - "form_title": "Endre medlemskap", - "form_description": "Skriv navnet ditt og hva som er nytt.", - "labels": { - "navn": "Navn", - "adresse": "Adresse", - "hva_er_nytt": "Hva vil du endre?" - }, - "hints": { - "navn": "Ola Nordmann", - "adresse": "Ny adresse i Tomter", - "hva_er_nytt": "Ny e-post, ny adresse, eller ønske om utmelding" - } - } - } - }, - "questions/melde-fra/index.yaml": { - "question": "Hva vil du melde fra om?", - "description": "Har du sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien? Her sier du fra til velet.", - "needs": { - "trafikkfare": { - "heading": "Meld fra om en trafikkfare", - "description": "Sett du noe farlig i trafikken? Fortell trafikkomiteen om det, så tar de det videre.", - "button": "Send inn", - "encouragement": "Bare noen linjer om hva og hvor er nok til at vi kan følge opp.", - "icon": "alert-triangle", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Hva skjer videre", - "road_description": "Trafikkomiteen tar meldingen din opp med kommunen eller den som eier veien. Du får vite om saken blir ordnet eller avvist.", - "road_icon": "lucide:route", - "who_title": "Hvem leser dette", - "who_description": "Trafikkomiteen leser meldingen din; haster det, kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:car", - "form_title": "Meld trafikkfare", - "form_description": "Fortell hva du så, hvor det var, og legg gjerne igjen e-posten din hvis vi trenger å spørre mer.", - "labels": { - "hvor": "Hvor var det", - "hva": "Hva så du", - "epost": "E-post (valgfritt)" - }, - "hints": { - "hvor": "Krysset Tomterveien / Elvestien", - "hva": "Dårlig sikt i krysset, biler kjører fort", - "epost": "ola.nordmann@epost.no" - } - }, - "anleggsfeil": { - "heading": "Meld fra om noe ødelagt", - "description": "Se noe ødelagt på en lekeplass eller langs elvestien, så tar lekeplasskomiteen tak i det.", - "button": "Send inn", - "encouragement": "Det holder med noen ord om hva du så og hvor.", - "icon": "construction", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Hva skjer videre", - "road_description": "Meldingen går til lekeplasskomiteen, som ser på den og tar tak i saken. Når feilen er utbedret, er saken avsluttet.", - "road_icon": "lucide:wrench", - "who_title": "Hvem leser dette", - "who_description": "Lekeplasskomiteen leser meldingen din; til det haster kan du nå styret på post@tomtervel.no.", - "who_icon": "lucide:hammer", - "form_title": "Meld anleggsfeil", - "form_description": "Fortell hva som er ødelagt og omtrent hvor det er.", - "labels": { - "hvor": "Hvor er det", - "hva": "Hva er ødelagt" - }, - "hints": { - "hvor": "", - "hva": "Løs planke på gjerdet ved husken" - } - } - } - }, - "questions/naboer/index.yaml": { - "question": "Trenger du en hånd, eller kan du gi en?", - "description": "Godt naboskap gjør hverdagen lettere. Trenger du en hånd, kan gi en, eller har noe å låne bort?", - "needs": { - "trenger-hjelp": { - "heading": "Få en nabo til å stille opp", - "description": "Får du ikke til snømåking, en handletur eller skyss for tiden? Si fra, så finner vi en nabo som kan stille opp.", - "button": "Be om hjelp", - "encouragement": "Vi finner en nabo som kan stille opp så fort som mulig.", - "icon": "heart-handshake", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Fra melding til hjelp", - "road_description": "Nabohjelpen finner en nabo som kan stille opp. Er det ordnet, eller om det ikke lot seg løse, får du beskjed.", - "road_icon": "lucide:hand-helping", - "who_title": "Hvem ser dette", - "who_description": "Nabohjelpen tar imot og finner noen til deg, eller ring post@tomtervel.no i mellomtiden.", - "who_icon": "lucide:users", - "form_title": "Be om en hånd", - "form_description": "Skriv kort hva du trenger hjelp til.", - "labels": { - "navn": "Navn", - "email": "E-post", - "adresse": "Adresse", - "hva": "Hva trenger du hjelp til", - "telefon": "Telefon" - }, - "hints": { - "navn": "Kari Nordmann", - "email": "kari@eksempel.no", - "adresse": "Tomterveien 12", - "hva": "Måke snø på trappa, handle inn litt mat", - "telefon": "123 45 678" - } - }, - "kan-hjelpe": { - "heading": "Bli spurt når en nabo trenger en hånd", - "description": "Kan du stille opp med snømåking, en handletur eller skyss når en nabo trenger det? Meld deg, så blir du spurt når det passer.", - "button": "Meld deg", - "encouragement": "Du blir bare kontaktet når noe passer for deg.", - "icon": "hand-helping", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Fra påmelding til spørsmål", - "road_description": "Du blir registrert som hjelper. Trekker du deg tilbake senere, er det bare å si fra.", - "road_icon": "lucide:user-check", - "who_title": "Hvem ser dette", - "who_description": "Nabohjelpen har oversikten og ringer deg direkte når det er noe, eller nås på post@tomtervel.no.", - "who_icon": "lucide:heart-handshake", - "form_title": "Meld deg som hjelper", - "form_description": "Fortell kort hva du kan bidra med.", - "labels": { - "navn": "Navn", - "email": "E-post", - "telefon": "Telefon", - "kan": "Hva kan du hjelpe med" - }, - "hints": { - "navn": "Kari Nordmann", - "email": "kari@eksempel.no", - "telefon": "123 45 678", - "kan": "" - } - }, - "dele-utstyr": { - "heading": "Lån ut eller lån av naboen", - "description": "Har du noe naboene kan få låne, eller trenger du å låne noe selv? Legg ut et oppslag så ser de andre på Tomter det.", - "button": "Legg ut oppslag", - "encouragement": "Det står på tavla med en gang.", - "icon": "package", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Fra oppslag til avtale", - "road_description": "Oppslaget står på tavla til du tar det ned selv, redaktøren gjør det, eller en måned har gått.", - "road_icon": "lucide:clipboard-list", - "who_title": "Hvem ser dette", - "who_description": "Alle som åpner tavla, uten navn og e-post. Naboer som kan låne ut, eller vil låne, svarer deg rett på e-post.", - "who_icon": "lucide:users", - "form_title": "Lån eller utlån", - "form_description": "Skriv kort hva det gjelder, så folk skjønner det med en gang.", - "labels": { - "navn": "Navn", - "email": "E-post", - "har_eller_trenger": "Har du eller trenger du", - "hva": "Hva gjelder det" - }, - "hints": { - "navn": "Ola Nordmann", - "email": "ola@eksempel.no", - "har_eller_trenger": "", - "hva": "Hengerfeste til bil, tilhenger, stige" - } - } - } - }, - "questions/nabohjelp/index.yaml": { - "question": "Hvem trenger hjelp, og hvem kan stille opp?", - "description": "Her kobler du naboer som trenger hjelp med dem som kan stille opp.", - "confirm": "Lagre", - "buckets": { - "hjelpebehov": { - "heading": "Naboer som trenger en hånd", - "description": "Naboer som trenger en hånd med snømåking, handling eller skyss – klare til å bli koblet med noen som kan hjelpe.", - "moves": { - "formidlet->ordnet": "Meld ordnet", - "formidlet->ikke_lost": "Meld ikke løst", - "open->formidlet": "Koble til nabo", - "open->ikke_lost": "Meld ikke løst" - }, - "list_title": "Hjelpebehov", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - }, - "hjelpere": { - "heading": "Naboer som kan stille opp", - "description": "Naboer som har sagt de kan stille opp – klare til å bli spurt når noen trenger dem.", - "moves": { - "open->registrert": "Registrer som hjelper", - "open->trukket": "Meld trukket" - }, - "list_title": "Hjelpere", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - } - }, - "links": {}, - "invites": { - "nabohjelp": { - "heading": "Inviter noen inn i nabohjelpen", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon og hvor den står. En lenke som går ut ubrukt, kan sendes på nytt.", - "done": "Er inne", - "again": "Send på nytt", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon. Den blir ferdig av seg selv når personen logger inn, og står som utløpt når lenken gikk ut ubrukt." - }, - "suggestions": null - }, - "questions/received/anleggsfeil.yaml": { - "question": "Hva skjer med meldingen min nå?", - "description": "Meldingen din om skaden er sendt til lekeplasskomiteen. De ser over det du har sendt.", - "next_heading": "Komiteen tar tak i det", - "next_description": "Lekeplasskomiteen ser på meldingen og tar tak i det som må fikses før noen skader seg.", - "see_all": { - "heading": "Se andre meldte feil", - "description": "Se hva andre har meldt inn av skader på lekeplassene og stien, og hvor langt det har kommet.", - "button": "Se meldte feil" - } - }, - "questions/received/bli-medlem.yaml": { - "question": "Hva skjer etter at jeg har meldt meg inn?", - "description": "Vi har mottatt innmeldingen din. Kasserer tar kontakt med betalingsinfo så snart medlemskapet er registrert.", - "next_heading": "Kasserer sender deg betalingsinfo", - "next_description": "Kasserer går gjennom nye innmeldinger og sender deg kontonummer og beløp for kontingenten." - }, - "questions/received/dele-utstyr.yaml": { - "question": "Hva skjer med oppslaget ditt?", - "description": "Det står på tavla nå, uten navn og e-post. Naboer som kan låne ut, eller vil låne, svarer deg på e-post.", - "next_heading": "Naboene svarer deg direkte", - "next_description": "Hvert svar kommer som e-post med naboens adresse. Du velger selv hvem du avtaler med, og tar ned oppslaget når det er ordnet; lenken står i e-posten. Spørsmål går til styret på post@tomtervel.no.", - "see_all": { - "heading": "Se oppslagstavla", - "description": "Det som står ute akkurat nå.", - "button": "Til tavla" - } - }, - "questions/received/endre-medlemskap.yaml": { - "question": "Hva skjer nå med det jeg meldte inn?", - "description": "Vi har mottatt beskjeden om at du har flyttet, byttet e-post eller vil melde deg ut.", - "next_heading": "Kasserer retter opp opplysningene", - "next_description": "Kasserer oppdaterer medlemslista og gir deg beskjed hvis det er noe mer vi trenger fra deg." - }, - "questions/received/hjelpe-til.yaml": { - "question": "Hva skjer nå som jeg har meldt meg?", - "description": "Takk for at du vil hjelpe til. Arrangementskomiteen har fått beskjed og tar kontakt med deg.", - "next_heading": "Komiteen tar kontakt", - "next_description": "Du hører fra noen i komiteen når de vet hva de trenger hjelp til, gjerne noen dager før arrangementet eller dugnaden." - }, - "questions/received/horingsinnspill.yaml": { - "question": "Hva skjer med det jeg har sagt om saken?", - "description": "Innspillet ditt er sendt til høringsinstansen i velet.", - "next_heading": "Innspillet ditt inn i vurderingen", - "next_description": "De ser på om det kan tas med i velets høringssvar til kommunen, og gir beskjed om det blir med." - }, - "questions/received/kan-hjelpe.yaml": { - "question": "Hva skjer nå som jeg har registrert meg?", - "description": "Takk for at du sier fra at du kan stille opp. Nabohjelp-komiteen tar imot meldingen og legger deg inn på lista over naboer som kan hjelpe.", - "next_heading": "Du blir kontaktet ved behov", - "next_description": "Når en nabo trenger hjelp med noe du har sagt du kan bidra med, tar komiteen kontakt med deg direkte." - }, - "questions/received/komite.yaml": { - "question": "Hva skjer nå som jeg har meldt interesse for en komité?", - "description": "Takk for at du vil bidra! Styret har fått beskjed og ser på hvilken komité som passer best for deg.", - "next_heading": "Vi finner riktig komité til deg", - "next_description": "Noen fra styret tar kontakt for å høre mer om hva du liker å drive med, og finner en komité som passer." - }, - "questions/received/melde-seg.yaml": { - "question": "Hva skjer nå?", - "description": "Svaret ditt er sendt til den som la ut oppslaget.", - "next_heading": "Den som la ut oppslaget tar kontakt", - "next_description": "E-posten din gikk rett til dem. Hører du ikke noe, kan det være at noen andre var først ute. Spørsmål går til styret på post@tomtervel.no." - }, - "questions/received/trafikkfare.yaml": { - "question": "Hva skjer med meldingen min nå?", - "description": "Meldingen din om trafikkfaren er sendt til komiteen for trafikk.", - "next_heading": "Trafikkomiteen tar den videre", - "next_description": "Trafikkomiteen ser gjennom meldinger jevnlig og tar det videre med kommunen eller den som eier veien der det trengs.", - "see_all": { - "heading": "Andre meldte trafikkfarer", - "description": "Se hva andre har meldt inn, og status på sakene.", - "button": "Se andre trafikkfarer" - } - }, - "questions/received/trenger-hjelp.yaml": { - "question": "Hva skjer nå som jeg har bedt om hjelp?", - "description": "Meldingen din er sendt til nabohjelpa. Vi ser etter en nabo som kan stille opp.", - "next_heading": "Vi finner en nabo til deg", - "next_description": "Vi tar kontakt med noen som kan hjelpe, så snart vi finner en som passer." - }, - "questions/redaktor/index.yaml": { - "question": "Hva står på oppslagstavla nå?", - "description": "Redaktøren tar ned oppslag som er ordnet eller ikke hører hjemme, og ser svarene som har gått.", - "confirm": "Bekreft", - "buckets": { - "oppslag": { - "heading": "Oppslag som står ute", - "description": "Det naboene har lagt ut om noe de har eller trenger.", - "moves": { - "open->tatt_ned": "Ta ned oppslaget" - }, - "list_title": "Oppslag", - "list_note": "Hver rad er ett oppslag. Ta det ned når det er ordnet eller ikke hører hjemme." - }, - "svar": { - "heading": "Svar som har gått", - "description": "Hvert svar gikk rett til den som la ut oppslaget; her ser du at det skjedde.", - "moves": { - "open->lest": "Lest" - }, - "list_title": "Svar", - "list_note": "Hver rad er ett svar, med e-posten til den som svarte. Merk som lest når du har sett det." - } - }, - "links": {}, - "invites": { - "redaktor": { - "heading": "Inviter noen inn som redaktør", - "description": "De får en konto, plass blant redaktørene, og en engangslenke der de selv velger passord eller passnøkkel.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon og hvor den står. En lenke som går ut ubrukt, kan sendes på nytt.", - "done": "Er inne", - "again": "Send på nytt", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon. Den blir ferdig av seg selv når personen logger inn, og står som utløpt når lenken gikk ut ubrukt." - }, - "suggestions": null - }, - "questions/status/anleggsfeil/index.yaml": { - "question": "Hva skjer med det jeg har meldt fra om?", - "description": "Her ser du meldinger om ødelagt lekeutstyr og skader på elvestien, og hvor langt hver sak har kommet.", - "heading": "Status på meldte anleggsfeil", - "list_description": "Alle meldinger er åpne for alle å se.", - "list_title": "Anleggsfeil", - "list_note": "Hver rad er én sak og hvor langt den har kommet. Navn og kontaktopplysninger vises ikke her.", - "empty": "Ingenting her ennå.", - "answer": "" - }, - "questions/status/oppslag/[key].yaml": { - "question": "Vil du låne ut, eller låne, det som står i oppslaget?", - "description": "Du svarer på ett oppslag. Den som la det ut får e-posten din med en gang, og tar kontakt.", - "form": { - "heading": "Si fra til den som la ut oppslaget", - "description": "Legg igjen e-posten din, så får de vite at du kan låne ut, eller vil låne.", - "button": "Send svar", - "encouragement": "Flere kan svare; den som la ut velger selv.", - "icon": "package", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Hva skjer", - "road_description": "E-posten din går rett til den som la ut oppslaget. Dere avtaler resten dere imellom.", - "road_icon": "lucide:mail", - "who_title": "Hvem ser dette", - "who_description": "Den som la ut oppslaget, og redaktøren.", - "who_icon": "lucide:users", - "form_title": "Ditt svar", - "form_description": "", - "labels": { - "email": "E-post", - "hilsen": "En hilsen, om du vil" - }, - "hints": { - "email": "ola@eksempel.no", - "hilsen": "Jeg har en stige du kan låne i helga" - } - } - }, - "questions/status/oppslag/index.yaml": { - "question": "Hva er sendt inn, og hvor langt har det kommet?", - "description": "Her ser du alt som er sendt inn og hvor langt hvert oppslag har kommet.", - "heading": "Oversikt over det som er meldt inn", - "list_description": "Åpen liste – navn og detaljer vises ikke.", - "list_title": "Oppslag", - "list_note": "Hver rad er én sak og hvor langt den har kommet. Navn og kontaktopplysninger vises ikke her.", - "empty": "Ingenting her ennå.", - "answer": "Jeg kan låne ut eller låne denne" - }, - "questions/status/trafikkmeldinger/index.yaml": { - "question": "Er det meldt fra om noe farlig i trafikken der jeg bor?", - "description": "Her ser du farlige steder i trafikken som er meldt inn, og hvor langt saken har kommet.", - "heading": "Trafikkmeldinger og status", - "list_description": "Alle meldinger som er sendt inn, og hvor de står nå.", - "list_title": "Trafikkmeldinger", - "list_note": "Hver rad er én sak og hvor langt den har kommet. Navn og kontaktopplysninger vises ikke her.", - "empty": "Ingenting her ennå.", - "answer": "" - }, - "questions/styret/index.yaml": { - "question": "Hva venter på styret akkurat nå?", - "description": "Herfra følger styret opp det som ikke hører under en enkelt komité: høringssvar, komitéplasser og oppslag fra naboer.", - "confirm": "Lagre", - "buckets": { - "innspill": { - "heading": "Høringsinnspill fra beboerne", - "description": "Her samles meninger fra beboerne om saker kommunen har på høring, klare til å tas med i velets svar.", - "moves": {}, - "list_title": "Innspill", - "list_note": "Hver rad er én sak og hvor langt den har kommet. En annen pult flytter disse." - }, - "komitesoknader": { - "heading": "Søknader til komiteene", - "description": "Her ligger alle som har meldt seg til en komité og venter på en plass.", - "moves": { - "open->plassert": "Sett i komité", - "open->avslatt": "Avslå søknaden" - }, - "list_title": "Komitesoknader", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - }, - "trafikkmeldinger": { - "heading": "Meldinger om trafikkfarer", - "description": "Her samles meldinger om farlige steder i trafikken, klare til å tas videre med kommunen eller veieier.", - "moves": {}, - "list_title": "Trafikkmeldinger", - "list_note": "Hver rad er én sak og hvor langt den har kommet. En annen pult flytter disse." - } - }, - "links": {}, - "invites": { - "arrangementer": { - "heading": "Inviter noen inn i Arrangementer", - "description": "De får en konto, plass i Arrangementer, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - }, - "horingsinstans": { - "heading": "Inviter noen inn i Høringsinstans", - "description": "De får en konto, plass i Høringsinstans, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - }, - "kasserer": { - "heading": "Inviter noen inn i kassereren", - "description": "De får en konto, plass i kassereren, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - }, - "komiteer": { - "heading": "Inviter noen inn i komiteene", - "description": "De får en konto, plass i komiteene, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - }, - "lekeplasser": { - "heading": "Inviter noen inn i Leke- og møteplasser", - "description": "De får en konto, plass i Leke- og møteplasser, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - }, - "nabohjelp": { - "heading": "Inviter noen inn i nabohjelpen", - "description": "De får en konto, plass i nabohjelpen, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - }, - "redaktor": { - "heading": "Inviter noen inn som redaktør", - "description": "De får en konto, plass blant redaktørene, og en engangslenke der de selv velger passord eller passnøkkel.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - }, - "styret": { - "heading": "Inviter noen inn i styret", - "description": "De får en konto, plass i styret, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - }, - "trafikk": { - "heading": "Inviter noen inn i Trafikkforhold", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon og hvor den står. En lenke som går ut ubrukt, kan sendes på nytt.", - "done": "Er inne", - "again": "Send på nytt", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon. Den blir ferdig av seg selv når personen logger inn, og står som utløpt når lenken gikk ut ubrukt." - }, - "suggestions": { - "heading": "Forslag til endringer på siden", - "description": "Det de som står som ansvarlige for et spørsmål, har foreslått å endre. De får beskjed når forslaget flyttes.", - "list_title": "Forslag", - "list_note": "Hver rad er ett forslag, med siden det gjelder. Knappene fører opp det du nettopp har gjort med det.", - "looking": "Vi ser på det", - "changed": "Endringen er gjort", - "declined": "Gjøres ikke" - } - }, - "questions/trafikk/index.yaml": { - "question": "Hvilke trafikkfarer må følges opp?", - "description": "Her ser du meldinger om farlige steder i trafikken og følger dem opp overfor kommunen eller veieier.", - "confirm": "Lagre", - "buckets": { - "trafikkmeldinger": { - "heading": "Farlige steder i trafikken", - "description": "Farlige steder i trafikken som naboer har meldt inn.", - "moves": { - "open->tatt_opp": "Ta opp med kommunen", - "open->avvist": "Avvis meldingen", - "tatt_opp->ordnet": "Meld ordnet", - "tatt_opp->avvist": "Avvis meldingen" - }, - "list_title": "Trafikkmeldinger", - "list_note": "Hver rad er én sak. Knappene fører opp det du nettopp har gjort med den." - } - }, - "links": {}, - "invites": { - "trafikk": { - "heading": "Inviter noen inn i Trafikkforhold", - "description": "De får en konto, plass i Trafikkforhold, og en engangslenke der de selv velger passord eller passnøkkel. Send lenken videre til dem.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet deres, og adressen kontoen og engangslenken går til.", - "labels": { - "name": "Navn", - "email": "E-post" - } - } - }, - "invited": { - "heading": "Sendte invitasjoner", - "description": "Hver invitasjon og hvor den står. En lenke som går ut ubrukt, kan sendes på nytt.", - "done": "Er inne", - "again": "Send på nytt", - "list_title": "Hvem som er invitert", - "list_note": "Hver rad er én invitasjon. Den blir ferdig av seg selv når personen logger inn, og står som utløpt når lenken gikk ut ubrukt." - }, - "suggestions": null - }, - "site.yaml": { - "invite": { - "subject": "Din konto hos {site_name}", - "body": "Hei {name},\n\n{site_name} har laget en konto til deg og lagt deg til i {group}. Brukernavnet ditt er {username}.\n\nVelg passord her før {expires}:\n{link}\n\nEtterpå logger du inn på {site}." - } - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/words-board.json b/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/words-board.json deleted file mode 100644 index aab4f00..0000000 --- a/vendor/trainer/runs/tomtervel-oppslagstavla-2026-09-30/words-board.json +++ /dev/null @@ -1,470 +0,0 @@ -{ - "aggregates.yaml": { - "oppslag": { - "open": { - "subject": "Nytt oppslag på tavla: {hva}", - "body": "Et nytt oppslag står på tavla fra nå av.\n\n{har_eller_trenger}: {hva}\n\nDet står der til den som la det ut tar det ned, til redaktøren gjør det, eller i en måned. Hører det ikke hjemme, tas det ned her: {site}/redaktor" - } - }, - "svar": { - "open": { - "subject": "En nabo har svart på oppslaget ditt", - "body": "Hei,\n\nEn nabo har svart på oppslaget ditt «{oppslag.hva}». Ta kontakt direkte: {email}\n\n{hilsen}\n\nFlere kan svare så lenge oppslaget står; du velger selv hvem du avtaler med. Når det er ordnet, tar du det ned her:\n{site}/decide/dele-utstyr?chain={oppslag.id}&email={oppslag.email}" - } - } - }, - "questions/status/oppslag/index.yaml": { - "answer": "Jeg kan låne ut eller låne denne" - }, - "questions/status/oppslag/[key].yaml": { - "question": "Vil du låne ut, eller låne, det som står i oppslaget?", - "description": "Du svarer på ett oppslag. Den som la det ut får e-posten din med en gang, og tar kontakt.", - "forms": { - "melde-seg": { - "heading": "Si fra til den som la ut oppslaget", - "description": "Legg igjen e-posten din, så får de vite at du kan låne ut, eller vil låne.", - "button": "Send svar", - "encouragement": "Flere kan svare; den som la ut velger selv.", - "icon": "package", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Hva skjer", - "road_description": "E-posten din går rett til den som la ut oppslaget. Dere avtaler resten dere imellom.", - "road_icon": "lucide:mail", - "who_title": "Hvem ser dette", - "who_description": "Den som la ut oppslaget, og redaktøren.", - "who_icon": "lucide:users", - "form_title": "Ditt svar", - "form_description": "", - "labels": { - "email": "E-post", - "hilsen": "En hilsen, om du vil" - }, - "hints": { - "email": "ola@eksempel.no", - "hilsen": "Jeg har en stige du kan låne i helga" - } - } - } - }, - "questions/received/melde-seg.yaml": { - "question": "Hva skjer nå?", - "description": "Svaret ditt er sendt til den som la ut oppslaget.", - "next_heading": "Den som la ut oppslaget tar kontakt", - "next_description": "E-posten din gikk rett til dem. Hører du ikke noe, kan det være at noen andre var først ute. Spørsmål går til styret på post@tomtervel.no.", - "see_all": { - "heading": "Se oppslagstavla", - "description": "", - "button": "Til tavla" - } - }, - "questions/received/dele-utstyr.yaml": { - "question": "Hva skjer med oppslaget ditt?", - "description": "Det står på tavla nå, uten navn og e-post. Naboer som kan låne ut, eller vil låne, svarer deg på e-post.", - "next_heading": "Naboene svarer deg direkte", - "next_description": "Hvert svar kommer som e-post med naboens adresse. Du velger selv hvem du avtaler med, og tar ned oppslaget når det er ordnet; lenken står i e-posten. Spørsmål går til styret på post@tomtervel.no.", - "see_all": { - "heading": "Se oppslagstavla", - "description": "Det som står ute akkurat nå.", - "button": "Til tavla" - } - }, - "questions/naboer/index.yaml": { - "needs": { - "dele-utstyr": { - "encouragement": "Det står på tavla med en gang.", - "road_description": "Oppslaget står på tavla til du tar det ned selv, redaktøren gjør det, eller en måned har gått.", - "who_description": "Alle som åpner tavla, uten navn og e-post. Naboer som kan låne ut, eller vil låne, svarer deg rett på e-post." - } - } - }, - "questions/redaktor/index.yaml": { - "question": "Hva står på oppslagstavla nå?", - "description": "Redaktøren tar ned oppslag som er ordnet eller ikke hører hjemme, og ser svarene som har gått.", - "confirm": "Bekreft", - "buckets": { - "oppslag": { - "heading": "Oppslag som står ute", - "description": "Det naboene har lagt ut om noe de har eller trenger.", - "moves": { - "open->tatt_ned": "Ta ned oppslaget" - }, - "list_title": "Oppslag", - "list_note": "Hver rad er ett oppslag. Ta det ned når det er ordnet eller ikke hører hjemme." - }, - "svar": { - "heading": "Svar som har gått", - "description": "Hvert svar gikk rett til den som la ut oppslaget; her ser du at det skjedde.", - "moves": { - "open->lest": "Lest" - }, - "list_title": "Svar", - "list_note": "Hver rad er ett svar, med e-posten til den som svarte. Merk som lest når du har sett det." - } - }, - "invites": { - "redaktor": { - "heading": "Inviter noen inn som redaktør", - "description": "De får en konto, plass blant redaktørene, og en engangslenke der de selv velger passord eller passnøkkel.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet og telefonnummeret deres, og e-post om de har. Plassen er der når de logger inn.", - "labels": { - "name": "Navn", - "phone": "Telefon", - "email": "E-post (om de har)" - } - } - }, - "invited": { - "heading": "Medlemmer og invitasjoner", - "description": "Alle som er invitert inn i en gruppe denne pulten kan fylle, og om de har kommet.", - "done": "Ta ut", - "withdraw": "Trekk tilbake", - "again": "Inviter igjen", - "list_title": "Hvem som er med", - "list_note": "Hver rad er én person i én gruppe: invitert til de logger inn, så med. Å ta noen ut beholder raden, så de kan inviteres igjen." - } - }, - "questions/styret/index.yaml": { - "invites": { - "redaktor": { - "heading": "Inviter noen inn som redaktør", - "description": "De får en konto, plass blant redaktørene, og en engangslenke der de selv velger passord eller passnøkkel.", - "button": "Inviter", - "form_title": "Hvem", - "form_description": "Navnet og telefonnummeret deres, og e-post om de har. Plassen er der når de logger inn.", - "labels": { - "name": "Navn", - "phone": "Telefon", - "email": "E-post (om de har)" - } - }, - "medlemmer": { - "heading": "Legg til en husstand som medlem uten kontingent via siden", - "description": "For en husstand som har betalt på annen måte. De får en konto og plass blant medlemmene, og en engangslenke der de selv velger passord eller passnøkkel.", - "button": "Legg til", - "form_title": "Hvem", - "form_description": "Navnet og telefonnummeret deres, og e-post om de har. Plassen er der når de logger inn.", - "labels": { - "name": "Navn", - "phone": "Telefon", - "email": "E-post (om de har)" - } - }, - "arrangementer": { - "form_description": "Navnet og telefonnummeret deres, og e-post om de har. Plassen er der når de logger inn.", - "labels": { - "name": "Navn", - "phone": "Telefon", - "email": "E-post (om de har)" - } - }, - "horingsinstans": { - "form_description": "Navnet og telefonnummeret deres, og e-post om de har. Plassen er der når de logger inn.", - "labels": { - "name": "Navn", - "phone": "Telefon", - "email": "E-post (om de har)" - } - }, - "kasserer": { - "form_description": "Navnet og telefonnummeret deres, og e-post om de har. Plassen er der når de logger inn.", - "labels": { - "name": "Navn", - "phone": "Telefon", - "email": "E-post (om de har)" - } - }, - "komiteer": { - "form_description": "Navnet og telefonnummeret deres, og e-post om de har. Plassen er der når de logger inn.", - "labels": { - "name": "Navn", - "phone": "Telefon", - "email": "E-post (om de har)" - } - }, - "lekeplasser": { - "form_description": "Navnet og telefonnummeret deres, og e-post om de har. Plassen er der når de logger inn.", - "labels": { - "name": "Navn", - "phone": "Telefon", - "email": "E-post (om de har)" - } - }, - "nabohjelp": { - "form_description": "Navnet og telefonnummeret deres, og e-post om de har. Plassen er der når de logger inn.", - "labels": { - "name": "Navn", - "phone": "Telefon", - "email": "E-post (om de har)" - } - }, - "styret": { - "form_description": "Navnet og telefonnummeret deres, og e-post om de har. Plassen er der når de logger inn.", - "labels": { - "name": "Navn", - "phone": "Telefon", - "email": "E-post (om de har)" - } - }, - "trafikk": { - "form_description": "Navnet og telefonnummeret deres, og e-post om de har. Plassen er der når de logger inn.", - "labels": { - "name": "Navn", - "phone": "Telefon", - "email": "E-post (om de har)" - } - } - }, - "invited": { - "heading": "Medlemmer og invitasjoner", - "description": "Alle som er invitert inn i en gruppe denne pulten kan fylle, og om de har kommet.", - "done": "Ta ut", - "withdraw": "Trekk tilbake", - "again": "Inviter igjen", - "list_title": "Hvem som er med", - "list_note": "Hver rad er én person i én gruppe: invitert til de logger inn, så med. Å ta noen ut beholder raden, så de kan inviteres igjen." - }, - "buckets": { - "hjelpebehov": { - "heading": "Hjelpebehov ingen har tatt tak i", - "description": "Behov som har ligget en uke uten at nabohjelpsgruppa koblet på noen. Styret finner en nabo, eller sier fra at det ikke lot seg løse.", - "moves": { - "open_escalated->formidlet": "En nabo er koblet på", - "open_escalated->ikke_lost": "Lot seg ikke løse" - }, - "list_title": "Behov hos styret", - "list_note": "Hver rad er ett behov som ingen tok på en uke. Knappene fører opp det du nettopp har gjort med det." - } - } - }, - "questions/arrangementer/index.yaml": { - "invited": { - "heading": "Medlemmer og invitasjoner", - "description": "Alle som er invitert inn i en gruppe denne pulten kan fylle, og om de har kommet.", - "done": "Ta ut", - "withdraw": "Trekk tilbake", - "again": "Inviter igjen", - "list_title": "Hvem som er med", - "list_note": "Hver rad er én person i én gruppe: invitert til de logger inn, så med. Å ta noen ut beholder raden, så de kan inviteres igjen." - }, - "invites": { - "arrangementer": { - "form_description": "Navnet og telefonnummeret deres, og e-post om de har. Plassen er der når de logger inn.", - "labels": { - "name": "Navn", - "phone": "Telefon", - "email": "E-post (om de har)" - } - } - } - }, - "questions/horingsinstans/index.yaml": { - "invited": { - "heading": "Medlemmer og invitasjoner", - "description": "Alle som er invitert inn i en gruppe denne pulten kan fylle, og om de har kommet.", - "done": "Ta ut", - "withdraw": "Trekk tilbake", - "again": "Inviter igjen", - "list_title": "Hvem som er med", - "list_note": "Hver rad er én person i én gruppe: invitert til de logger inn, så med. Å ta noen ut beholder raden, så de kan inviteres igjen." - }, - "invites": { - "horingsinstans": { - "form_description": "Navnet og telefonnummeret deres, og e-post om de har. Plassen er der når de logger inn.", - "labels": { - "name": "Navn", - "phone": "Telefon", - "email": "E-post (om de har)" - } - } - } - }, - "questions/kasserer/index.yaml": { - "invited": { - "heading": "Medlemmer og invitasjoner", - "description": "Alle som er invitert inn i en gruppe denne pulten kan fylle, og om de har kommet.", - "done": "Ta ut", - "withdraw": "Trekk tilbake", - "again": "Inviter igjen", - "list_title": "Hvem som er med", - "list_note": "Hver rad er én person i én gruppe: invitert til de logger inn, så med. Å ta noen ut beholder raden, så de kan inviteres igjen." - }, - "invites": { - "kasserer": { - "form_description": "Navnet og telefonnummeret deres, og e-post om de har. Plassen er der når de logger inn.", - "labels": { - "name": "Navn", - "phone": "Telefon", - "email": "E-post (om de har)" - } - } - } - }, - "questions/komiteer/index.yaml": { - "invited": { - "heading": "Medlemmer og invitasjoner", - "description": "Alle som er invitert inn i en gruppe denne pulten kan fylle, og om de har kommet.", - "done": "Ta ut", - "withdraw": "Trekk tilbake", - "again": "Inviter igjen", - "list_title": "Hvem som er med", - "list_note": "Hver rad er én person i én gruppe: invitert til de logger inn, så med. Å ta noen ut beholder raden, så de kan inviteres igjen." - }, - "invites": { - "komiteer": { - "form_description": "Navnet og telefonnummeret deres, og e-post om de har. Plassen er der når de logger inn.", - "labels": { - "name": "Navn", - "phone": "Telefon", - "email": "E-post (om de har)" - } - } - } - }, - "questions/lekeplasser/index.yaml": { - "invited": { - "heading": "Medlemmer og invitasjoner", - "description": "Alle som er invitert inn i en gruppe denne pulten kan fylle, og om de har kommet.", - "done": "Ta ut", - "withdraw": "Trekk tilbake", - "again": "Inviter igjen", - "list_title": "Hvem som er med", - "list_note": "Hver rad er én person i én gruppe: invitert til de logger inn, så med. Å ta noen ut beholder raden, så de kan inviteres igjen." - }, - "invites": { - "lekeplasser": { - "form_description": "Navnet og telefonnummeret deres, og e-post om de har. Plassen er der når de logger inn.", - "labels": { - "name": "Navn", - "phone": "Telefon", - "email": "E-post (om de har)" - } - } - } - }, - "questions/nabohjelp/index.yaml": { - "invited": { - "heading": "Medlemmer og invitasjoner", - "description": "Alle som er invitert inn i en gruppe denne pulten kan fylle, og om de har kommet.", - "done": "Ta ut", - "withdraw": "Trekk tilbake", - "again": "Inviter igjen", - "list_title": "Hvem som er med", - "list_note": "Hver rad er én person i én gruppe: invitert til de logger inn, så med. Å ta noen ut beholder raden, så de kan inviteres igjen." - }, - "buckets": { - "hjelpebehov": { - "moves": { - "open->open_escalated": "Send til styret", - "open_escalated->formidlet": "Koble til nabo", - "open_escalated->ikke_lost": "Meld ikke løst" - } - } - }, - "invites": { - "nabohjelp": { - "form_description": "Navnet og telefonnummeret deres, og e-post om de har. Plassen er der når de logger inn.", - "labels": { - "name": "Navn", - "phone": "Telefon", - "email": "E-post (om de har)" - } - } - } - }, - "questions/trafikk/index.yaml": { - "invited": { - "heading": "Medlemmer og invitasjoner", - "description": "Alle som er invitert inn i en gruppe denne pulten kan fylle, og om de har kommet.", - "done": "Ta ut", - "withdraw": "Trekk tilbake", - "again": "Inviter igjen", - "list_title": "Hvem som er med", - "list_note": "Hver rad er én person i én gruppe: invitert til de logger inn, så med. Å ta noen ut beholder raden, så de kan inviteres igjen." - }, - "invites": { - "trafikk": { - "form_description": "Navnet og telefonnummeret deres, og e-post om de har. Plassen er der når de logger inn.", - "labels": { - "name": "Navn", - "phone": "Telefon", - "email": "E-post (om de har)" - } - } - } - }, - "questions/index.yaml": { - "shopping": { - "items": { - "status-anleggsfeil": { - "description": "Det som er meldt inn, og hvor langt vi har kommet med å fikse det.", - "link": "Alle feilmeldinger" - }, - "status-oppslag": { - "description": "Utstyr som er til låns, og det naboene leter etter. Svar rett fra oppslaget.", - "link": "Hele oppslagstavla" - }, - "status-trafikkmeldinger": { - "description": "Det naboer har meldt fra om, og hva velet har gjort med det.", - "link": "Alle trafikkmeldinger" - } - } - } - }, - "questions/medlem/index.yaml": { - "needs": { - "bli-medlem": { - "labels": { - "name": "Navn", - "adresse": "Adresse", - "email": "E-post", - "telefon": "Telefon" - } - } - } - }, - "questions/bidra/index.yaml": { - "needs": { - "komite": { - "heading": "Sitt i en komité som betyr noe for deg", - "description": "For medlemmer. Logg inn med velkontoen din, så velger du komité; kontoen fikk du da kontingenten var betalt.", - "button": "Logg inn og meld deg" - } - } - }, - "questions/medlemmer/index.yaml": { - "question": "Hva kan du gjøre som medlem?", - "description": "Det som er medlemmenes eget. Du er logget inn med kontoen du fikk da kontingenten var betalt.", - "confirm": "Bekreft", - "links": { - "komite": { - "heading": "Sitt i en komité som betyr noe for deg", - "description": "Velet drives av sju komiteer på fritida, og alle trenger flere hender.", - "button": "Velg komité" - } - }, - "invited": { - "heading": "Medlemmer og invitasjoner", - "description": "Alle som er invitert inn i en gruppe denne pulten kan fylle, og om de har kommet.", - "done": "Ta ut", - "withdraw": "Trekk tilbake", - "again": "Inviter igjen", - "list_title": "Hvem som er med", - "list_note": "Hver rad er én person i én gruppe: invitert til de logger inn, så med. Å ta noen ut beholder raden, så de kan inviteres igjen." - } - }, - "questions/medlemmer/komite.yaml": { - "question": "Hvilken komité vil du sitte i?", - "page_description": "Styret ser søknaden og finner en plass. Navn og e-post har vi fra medlemskapet ditt.", - "button": "Send søknaden" - }, - "questions/medlemmer/komite-sent.yaml": { - "question": "Hva skjer nå?", - "description": "Søknaden er hos styret.", - "next_heading": "Styret finner en plass til deg", - "next_description": "Du hører fra styret når de har plassert deg, som regel før neste styremøte. Spørsmål i mellomtiden går til post@tomtervel.no." - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-plan-claude-2026-09-22/README.md b/vendor/trainer/runs/tomtervel-plan-claude-2026-09-22/README.md deleted file mode 100644 index de298b4..0000000 --- a/vendor/trainer/runs/tomtervel-plan-claude-2026-09-22/README.md +++ /dev/null @@ -1,37 +0,0 @@ -# Tomter Vel: the intake read into a plan by Claude Opus - -`portal-trainer plan --intake intakes/tomtervel.yaml --llm -"MODEL=opus EFFORT=medium engines/claude.sh"`: Claude Opus 5 on a Max -subscription through Claude Code's print mode, one round, 57 s. The -YAML passed every check `build` makes first try. No personas attached; -`plans/tomtervel.yaml` is the hand-written plan for the same intake, -with personas, and is what was built. - -Side by side with the hand-written plan: - -| | hand-written | Opus | -|---|---|---| -| doors | 3 (medlem, melde-fra, bidra) + sharing on the front door | 4 (medlemskap, meld-fra, bidra, utstyr) + hearing input on the front door | -| needs | 9 | 10 | -| internal need for expenses | yes, `enters_as: komiteer`, 3 fields | yes, `enters_as: komite`, 6 fields | -| member leaves by own link | no | yes, `moves_by: { utmeldt: [submitter] }` | -| poster takes down own notice | yes | yes | -| sharing | one need, one form, kept small on purpose | a door of its own, offer and borrow as two needs | - -What Opus read right that the small model missed on the contractor: -every internal role became an `enters_as` need, every "they can take -it down themselves" became a submitter move, and stages were read -one verb at a time (`open -> tatt_opp -> ordnet -> avvist`). Nothing -in the intake was dropped. - -What a reader would change: - -- The expense claim asks six required fields of a volunteer with a - receipt; three is enough (who, how much, what for). -- The equipment board was meant to stay small. Two needs and a door - give it the weight of membership; one notice with "I have" or "I - need" does the job. -- `naeromraadet` in a door's `who`: the ASCII rule is for identifiers, - and the model applied it to prose a visitor reads. The words model - never sees `who`, so it costs nothing here, but a plan meant to be - read should say `nærområdet`. diff --git a/vendor/trainer/runs/tomtervel-plan-claude-2026-09-22/llm/01-prompt.md b/vendor/trainer/runs/tomtervel-plan-claude-2026-09-22/llm/01-prompt.md deleted file mode 100644 index 95a923d..0000000 --- a/vendor/trainer/runs/tomtervel-plan-claude-2026-09-22/llm/01-prompt.md +++ /dev/null @@ -1,136 +0,0 @@ -# plan.yaml - -A plan is a needs spec that also says what each form collects. A -builder turns it into a working site with no further decisions, so -every structural fact about the business has to be in it. - -```yaml -business: -language: en # the intake's language code -contact: { name: , email: } -about: > - What the business does, in its own words. - -doors: # a first question before the forms, when more than four or - - id: kebab-case # five needs would otherwise sit on the front door: one door - who: who comes through it # per kind of visitor, two or three needs behind each - -needs: - - id: kebab-case # ASCII only - who: the kind of person, in plain words, in the intake's language - wants: what they want from the business - door: # the door this public need sits behind; omit to put it on the front door - enters_as: # ONLY for a role inside the business; omit for the public - lands_in: # snake_case, ASCII - handled_by: # the role that must see and move the record - stages: [open, , ..., , ] - # EVERY stage the business said a case goes through, first to - # last, read off their own sentences one verb at a time: "they - # come in, we go and look, we send a quote, we win or lose it" - # is [open, surveyed, quoted, won, lost]. A pipeline is not an - # inbox: "answered" is rarely the real outcome. - done_when: [, ] # every stage that counts as finished, good or bad - success: [] # the finished stages that are a good outcome for the business - skippable: [] # stages a case may pass over (papers already complete) - moves_by: { : [, ...] } - # only where someone other than handled_by moves a case INTO a - # stage: another group, or `submitter` (the person who sent the - # form; the form must then collect a required `email`) - watched_by: [] # groups that see these cases and move nothing - max_fields: 4 # how many required fields THIS person will tolerate, from what - # the intake says about them: someone on a phone with gloves - # on gets 3, a first enquiry 4 to 6, a firm's paperwork 5 to 6 - collects: # the form; name is snake_case ASCII, type one of - # text (default), email, tel, textarea, date, select - - { name: name } - - { name: phone, type: tel } - - { name: problem, type: textarea } - - { name: urgency, type: select, options: [This week, This month, No rush] } - - { name: address, optional: true } -``` - -Rules: -- One need per (kind of person, thing they want). Work inside the - business counts: a role recording or posting something is a need - with `enters_as`. The intake's "what slows us down" usually names one. -- Groups are the roles the intake names, as snake_case identifiers. -- The front door holds at most five alternatives: doors plus needs - with no door. A door with no need behind it, or a door on a need with - `enters_as`, is refused. -- Needs that land in the same bucket must have the same stages, - done_when, skippable, moves_by, watched_by and handled_by. -- Every required field is one the business will use to act on the - record. If the intake gives no reason to need it, make it optional or - leave it out. The required fields must not exceed max_fields. -- Only `select` lists `options`, and it must list them. -- Everything a person reads (who, wants, about, select options) is in - the intake's language. Everything a machine reads (ids, buckets, - groups, stages, field names) is plain ASCII: no æ, ø, å. -- Write no personas. - - -# Task - -A business filled in this intake. Write its plan.yaml: every need the intake implies, for the public and for each role inside the business, with the stages read off how the business says things progress, the form each need collects, and how much each person will tolerate. - -## Intake - -# Tomter Vel, slik en i styret ville fylt det ut. Det som står om -# velet er hentet fra tomtervel.no (komiteer, kontingent, medlemstall, -# arrangementer); det som står om deling av utstyr er et forslag til -# en ny tjeneste. -business: Tomter Vel -contact: { name: Styret i Tomter Vel, email: post@tomtervel.example } -language: nb - -what_we_do: > - Velforeningen for Tomter, stiftet i 1947. Vi er et styre på sju og - sju komiteer som alle drives av folk på fritida: arrangementer - (17. mai-frokost, juletregranstenning, skøytedag), elvestien langs - Hobølelva, to lekeplasser vi holder i stand og får kontrollert hvert - år, høringssvar til kommunen, miljøgata i sentrum, pendlerforhold - mot Ruter, og trafikkforhold. 157 husstander betaler kontingent på - 250 kroner i året. - -who_comes_to_us: > - Husstander som vil bli medlem, eller som har flyttet eller byttet - e-post og vil at vi skal ha det riktig. Folk som har sett noe i - nabolaget som ikke er som det skal: en farlig sving, en huske som - henger i én kjetting, en råtten planke på stien. Beboere som vil - si sin mening om en sak kommunen har på høring. Folk som vil hjelpe - til på et arrangement eller en dugnad, eller sitte i en komité. - Og naboer som har en tilhenger, en stige eller en hekksaks som står - ubrukt, og naboer som trenger å låne en. - -what_we_keep_track_of: > - Medlemskap: en husstand melder seg inn, kassereren ser at - kontingenten er betalt, og noen melder seg ut når de flytter. - Meldinger om trafikk: noen melder fra, trafikkomiteen tar det opp - med kommunen eller veieier, og det blir ordnet eller avvist. - Feil på lekeplass og sti: noen melder fra, komiteen tar tak i det - og utbedrer det. - Høringsinnspill: en beboer sender inn, styret tar det med i svaret - eller lar være. - Frivillige: noen tilbyr seg, arrangementskomiteen tar kontakt og - setter dem opp, eller takker nei. - Komitésøknader: noen vil være med, styret plasserer dem eller sier - nei. - Utlegg: en i en komité har lagt ut for noe, kassereren godkjenner og - betaler ut, eller avviser. - Deling av utstyr: en nabo melder at de har noe å låne ut, eller - trenger å låne noe; styret legger det ut på oppslagstavla og tar - det ned når det er gjort. - -who_is_involved: > - Kassereren har medlemskap og utlegg. Trafikkomiteen har - trafikkmeldinger, lekeplasskomiteen har feil på anlegg, - arrangementskomiteen har frivillige. Styret har høringsinnspill, - komitésøknader og oppslagstavla. Komiteene leverer utlegg. - -what_slows_us_down: > - Medlemslista er en bankutskrift og et regneark. Ting som meldes på - Facebook eller i butikken blir husket av den som hørte det. Folk - som tilbyr seg å hjelpe får svar sent eller aldri. - - -Reply with the YAML only, no prose, no code fences. \ No newline at end of file diff --git a/vendor/trainer/runs/tomtervel-plan-claude-2026-09-22/llm/01-reply.md b/vendor/trainer/runs/tomtervel-plan-claude-2026-09-22/llm/01-reply.md deleted file mode 100644 index 0dad0f5..0000000 --- a/vendor/trainer/runs/tomtervel-plan-claude-2026-09-22/llm/01-reply.md +++ /dev/null @@ -1,196 +0,0 @@ -business: Tomter Vel -language: nb -contact: { name: Styret i Tomter Vel, email: post@tomtervel.example } -about: > - Velforeningen for Tomter, stiftet i 1947. Et styre paa sju og sju - komiteer som drives paa fritida: arrangementer, elvestien langs - Hobolelva, to lekeplasser, horingssvar til kommunen, miljogata, - pendlerforhold og trafikk. 157 husstander betaler 250 kroner i - kontingent i aaret. - -doors: - - id: medlemskap - who: Du vil bli medlem, eller har flyttet eller byttet e-post - - id: meld-fra - who: Du har sett noe i naeromraadet som ikke er som det skal - - id: bidra - who: Du vil hjelpe til paa et arrangement eller sitte i en komite - - id: utstyr - who: Du har utstyr til laans, eller trenger aa laane noe - -needs: - - id: bli-medlem - who: En husstand paa Tomter - wants: Bli medlem i velforeningen og betale kontingenten - door: medlemskap - lands_in: medlemskap - handled_by: kasserer - stages: [open, betalt, utmeldt] - done_when: [betalt, utmeldt] - success: [betalt] - moves_by: { utmeldt: [submitter] } - watched_by: [styret] - max_fields: 5 - collects: - - { name: name } - - { name: adresse } - - { name: email, type: email } - - { name: antall_voksne, type: select, options: [En, To, Flere] } - - { name: phone, type: tel, optional: true } - - - id: endre-kontaktinfo - who: Et medlem som har flyttet eller byttet e-post - wants: At velet har riktig adresse og e-post - door: medlemskap - lands_in: kontaktendring - handled_by: kasserer - stages: [open, oppdatert] - done_when: [oppdatert] - success: [oppdatert] - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: ny_adresse } - - { name: gammel_adresse, optional: true } - - { name: phone, type: tel, optional: true } - - - id: melde-trafikkforhold - who: En beboer som har sett en farlig sving eller et trafikkproblem - wants: At noen tar det opp med kommunen eller veieier - door: meld-fra - lands_in: trafikk - handled_by: trafikkomite - stages: [open, tatt_opp, ordnet, avvist] - done_when: [ordnet, avvist] - success: [ordnet] - watched_by: [styret] - max_fields: 3 - collects: - - { name: sted } - - { name: hva_er_problemet, type: textarea } - - { name: name } - - { name: phone, type: tel, optional: true } - - - id: melde-feil-paa-anlegg - who: En beboer som har sett noe odelagt paa en lekeplass eller elvestien - wants: At det blir utbedret - door: meld-fra - lands_in: anlegg - handled_by: lekeplasskomite - stages: [open, under_arbeid, utbedret] - done_when: [utbedret] - success: [utbedret] - watched_by: [styret] - max_fields: 3 - collects: - - { name: hvor, type: select, options: [Lekeplass, Elvestien, Annet sted] } - - { name: hva_er_feil, type: textarea } - - { name: name } - - { name: phone, type: tel, optional: true } - - - id: horingsinnspill - who: En beboer som vil si sin mening om en sak kommunen har paa horing - wants: At meningen blir med i velets horingssvar - lands_in: horing - handled_by: styret - stages: [open, med_i_svaret, ikke_brukt] - done_when: [med_i_svaret, ikke_brukt] - success: [med_i_svaret] - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: hvilken_sak } - - { name: innspill, type: textarea } - - { name: adresse, optional: true } - - - id: melde-seg-som-frivillig - who: En beboer som vil hjelpe til paa et arrangement eller en dugnad - wants: Faa en oppgave og vite naar de skal mote - door: bidra - lands_in: frivillige - handled_by: arrangementskomite - stages: [open, kontaktet, satt_opp, takket_nei] - done_when: [satt_opp, takket_nei] - success: [satt_opp] - skippable: [kontaktet] - max_fields: 4 - collects: - - { name: name } - - { name: phone, type: tel } - - { name: hva_vil_du_hjelpe_til_med, type: select, options: [17. mai-frokost, Juletregranstenning, Skoytedag, Dugnad paa elvestien, Det som trengs] } - - { name: email, type: email, optional: true } - - { name: naar_passer_det, optional: true } - - - id: soke-komite - who: En beboer som vil sitte i en komite - wants: Bli plassert i en komite - door: bidra - lands_in: komitesoknad - handled_by: styret - stages: [open, plassert, avslatt] - done_when: [plassert, avslatt] - success: [plassert] - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: hvilken_komite, type: select, options: [Arrangementskomiteen, Elvestikomiteen, Lekeplasskomiteen, Horingskomiteen, Miljogatekomiteen, Pendlerkomiteen, Trafikkomiteen] } - - { name: om_deg, type: textarea, optional: true } - - - id: tilby-utstyr - who: En nabo som har en tilhenger, stige eller hekksaks staaende ubrukt - wants: At naboer faar vite at den kan laanes - door: utstyr - lands_in: oppslagstavle - handled_by: styret - stages: [open, publisert, tatt_ned] - done_when: [tatt_ned] - success: [tatt_ned] - moves_by: { tatt_ned: [submitter] } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: hva_gjelder_det } - - { name: type, type: select, options: [Jeg har noe aa laane ut, Jeg trenger aa laane noe] } - - { name: phone, type: tel, optional: true } - - - id: trenger-aa-laane - who: En nabo som trenger aa laane utstyr til en jobb hjemme - wants: Faa tak i noen i nabolaget som har det - door: utstyr - lands_in: oppslagstavle - handled_by: styret - stages: [open, publisert, tatt_ned] - done_when: [tatt_ned] - success: [tatt_ned] - moves_by: { tatt_ned: [submitter] } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: hva_gjelder_det } - - { name: type, type: select, options: [Jeg har noe aa laane ut, Jeg trenger aa laane noe] } - - { name: naar_trenger_du_det, optional: true } - - - id: levere-utlegg - who: En i en komite som har lagt ut for noe av egen lomme - wants: Faa pengene tilbake - enters_as: komite - lands_in: utlegg - handled_by: kasserer - stages: [open, godkjent, utbetalt, avvist] - done_when: [utbetalt, avvist] - success: [utbetalt] - watched_by: [styret] - max_fields: 6 - collects: - - { name: name } - - { name: komite, type: select, options: [Arrangementskomiteen, Elvestikomiteen, Lekeplasskomiteen, Horingskomiteen, Miljogatekomiteen, Pendlerkomiteen, Trafikkomiteen] } - - { name: hva_ble_kjopt, type: textarea } - - { name: belop } - - { name: dato, type: date } - - { name: kontonummer } diff --git a/vendor/trainer/runs/tomtervel-plan-claude-2026-09-22/plan.log b/vendor/trainer/runs/tomtervel-plan-claude-2026-09-22/plan.log deleted file mode 100644 index feafec0..0000000 --- a/vendor/trainer/runs/tomtervel-plan-claude-2026-09-22/plan.log +++ /dev/null @@ -1,12 +0,0 @@ -plan round 1: 10 need(s), 6 group(s), 9 bucket(s), 0 persona(s) attached - bli-medlem: open -> betalt -> utmeldt -> medlemskap (kasserer), 4 of 5 field(s) required - endre-kontaktinfo: open -> oppdatert -> kontaktendring (kasserer), 3 of 4 field(s) required - melde-trafikkforhold: open -> tatt_opp -> ordnet -> avvist -> trafikk (trafikkomite), 3 of 3 field(s) required - melde-feil-paa-anlegg: open -> under_arbeid -> utbedret -> anlegg (lekeplasskomite), 3 of 3 field(s) required - horingsinnspill: open -> med_i_svaret -> ikke_brukt -> horing (styret), 4 of 4 field(s) required - melde-seg-som-frivillig: open -> kontaktet -> satt_opp -> takket_nei -> frivillige (arrangementskomite), 3 of 4 field(s) required - soke-komite: open -> plassert -> avslatt -> komitesoknad (styret), 4 of 4 field(s) required - tilby-utstyr: open -> publisert -> tatt_ned -> oppslagstavle (styret), 4 of 4 field(s) required - trenger-aa-laane: open -> publisert -> tatt_ned -> oppslagstavle (styret), 4 of 4 field(s) required - levere-utlegg: open -> godkjent -> utbetalt -> avvist -> utlegg (kasserer), 6 of 6 field(s) required -plan written to runs/tomtervel-plan-claude-2026-09-22/plan.yaml; read it before building from it diff --git a/vendor/trainer/runs/tomtervel-plan-claude-2026-09-22/plan.yaml b/vendor/trainer/runs/tomtervel-plan-claude-2026-09-22/plan.yaml deleted file mode 100644 index 0dad0f5..0000000 --- a/vendor/trainer/runs/tomtervel-plan-claude-2026-09-22/plan.yaml +++ /dev/null @@ -1,196 +0,0 @@ -business: Tomter Vel -language: nb -contact: { name: Styret i Tomter Vel, email: post@tomtervel.example } -about: > - Velforeningen for Tomter, stiftet i 1947. Et styre paa sju og sju - komiteer som drives paa fritida: arrangementer, elvestien langs - Hobolelva, to lekeplasser, horingssvar til kommunen, miljogata, - pendlerforhold og trafikk. 157 husstander betaler 250 kroner i - kontingent i aaret. - -doors: - - id: medlemskap - who: Du vil bli medlem, eller har flyttet eller byttet e-post - - id: meld-fra - who: Du har sett noe i naeromraadet som ikke er som det skal - - id: bidra - who: Du vil hjelpe til paa et arrangement eller sitte i en komite - - id: utstyr - who: Du har utstyr til laans, eller trenger aa laane noe - -needs: - - id: bli-medlem - who: En husstand paa Tomter - wants: Bli medlem i velforeningen og betale kontingenten - door: medlemskap - lands_in: medlemskap - handled_by: kasserer - stages: [open, betalt, utmeldt] - done_when: [betalt, utmeldt] - success: [betalt] - moves_by: { utmeldt: [submitter] } - watched_by: [styret] - max_fields: 5 - collects: - - { name: name } - - { name: adresse } - - { name: email, type: email } - - { name: antall_voksne, type: select, options: [En, To, Flere] } - - { name: phone, type: tel, optional: true } - - - id: endre-kontaktinfo - who: Et medlem som har flyttet eller byttet e-post - wants: At velet har riktig adresse og e-post - door: medlemskap - lands_in: kontaktendring - handled_by: kasserer - stages: [open, oppdatert] - done_when: [oppdatert] - success: [oppdatert] - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: ny_adresse } - - { name: gammel_adresse, optional: true } - - { name: phone, type: tel, optional: true } - - - id: melde-trafikkforhold - who: En beboer som har sett en farlig sving eller et trafikkproblem - wants: At noen tar det opp med kommunen eller veieier - door: meld-fra - lands_in: trafikk - handled_by: trafikkomite - stages: [open, tatt_opp, ordnet, avvist] - done_when: [ordnet, avvist] - success: [ordnet] - watched_by: [styret] - max_fields: 3 - collects: - - { name: sted } - - { name: hva_er_problemet, type: textarea } - - { name: name } - - { name: phone, type: tel, optional: true } - - - id: melde-feil-paa-anlegg - who: En beboer som har sett noe odelagt paa en lekeplass eller elvestien - wants: At det blir utbedret - door: meld-fra - lands_in: anlegg - handled_by: lekeplasskomite - stages: [open, under_arbeid, utbedret] - done_when: [utbedret] - success: [utbedret] - watched_by: [styret] - max_fields: 3 - collects: - - { name: hvor, type: select, options: [Lekeplass, Elvestien, Annet sted] } - - { name: hva_er_feil, type: textarea } - - { name: name } - - { name: phone, type: tel, optional: true } - - - id: horingsinnspill - who: En beboer som vil si sin mening om en sak kommunen har paa horing - wants: At meningen blir med i velets horingssvar - lands_in: horing - handled_by: styret - stages: [open, med_i_svaret, ikke_brukt] - done_when: [med_i_svaret, ikke_brukt] - success: [med_i_svaret] - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: hvilken_sak } - - { name: innspill, type: textarea } - - { name: adresse, optional: true } - - - id: melde-seg-som-frivillig - who: En beboer som vil hjelpe til paa et arrangement eller en dugnad - wants: Faa en oppgave og vite naar de skal mote - door: bidra - lands_in: frivillige - handled_by: arrangementskomite - stages: [open, kontaktet, satt_opp, takket_nei] - done_when: [satt_opp, takket_nei] - success: [satt_opp] - skippable: [kontaktet] - max_fields: 4 - collects: - - { name: name } - - { name: phone, type: tel } - - { name: hva_vil_du_hjelpe_til_med, type: select, options: [17. mai-frokost, Juletregranstenning, Skoytedag, Dugnad paa elvestien, Det som trengs] } - - { name: email, type: email, optional: true } - - { name: naar_passer_det, optional: true } - - - id: soke-komite - who: En beboer som vil sitte i en komite - wants: Bli plassert i en komite - door: bidra - lands_in: komitesoknad - handled_by: styret - stages: [open, plassert, avslatt] - done_when: [plassert, avslatt] - success: [plassert] - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: phone, type: tel } - - { name: hvilken_komite, type: select, options: [Arrangementskomiteen, Elvestikomiteen, Lekeplasskomiteen, Horingskomiteen, Miljogatekomiteen, Pendlerkomiteen, Trafikkomiteen] } - - { name: om_deg, type: textarea, optional: true } - - - id: tilby-utstyr - who: En nabo som har en tilhenger, stige eller hekksaks staaende ubrukt - wants: At naboer faar vite at den kan laanes - door: utstyr - lands_in: oppslagstavle - handled_by: styret - stages: [open, publisert, tatt_ned] - done_when: [tatt_ned] - success: [tatt_ned] - moves_by: { tatt_ned: [submitter] } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: hva_gjelder_det } - - { name: type, type: select, options: [Jeg har noe aa laane ut, Jeg trenger aa laane noe] } - - { name: phone, type: tel, optional: true } - - - id: trenger-aa-laane - who: En nabo som trenger aa laane utstyr til en jobb hjemme - wants: Faa tak i noen i nabolaget som har det - door: utstyr - lands_in: oppslagstavle - handled_by: styret - stages: [open, publisert, tatt_ned] - done_when: [tatt_ned] - success: [tatt_ned] - moves_by: { tatt_ned: [submitter] } - max_fields: 4 - collects: - - { name: name } - - { name: email, type: email } - - { name: hva_gjelder_det } - - { name: type, type: select, options: [Jeg har noe aa laane ut, Jeg trenger aa laane noe] } - - { name: naar_trenger_du_det, optional: true } - - - id: levere-utlegg - who: En i en komite som har lagt ut for noe av egen lomme - wants: Faa pengene tilbake - enters_as: komite - lands_in: utlegg - handled_by: kasserer - stages: [open, godkjent, utbetalt, avvist] - done_when: [utbetalt, avvist] - success: [utbetalt] - watched_by: [styret] - max_fields: 6 - collects: - - { name: name } - - { name: komite, type: select, options: [Arrangementskomiteen, Elvestikomiteen, Lekeplasskomiteen, Horingskomiteen, Miljogatekomiteen, Pendlerkomiteen, Trafikkomiteen] } - - { name: hva_ble_kjopt, type: textarea } - - { name: belop } - - { name: dato, type: date } - - { name: kontonummer } diff --git a/vendor/trainer/runs/uhhm-2026-09-21/answers-full.jsonl b/vendor/trainer/runs/uhhm-2026-09-21/answers-full.jsonl deleted file mode 100644 index eb8f7c1..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-21/answers-full.jsonl +++ /dev/null @@ -1,8 +0,0 @@ -{"id":"architecture-firm@/","choice":"Good software begins with a clear argument","confidence":0.9} -{"id":"climbing-gym-founder@/","choice":"Work happens through dialogue, not tickets","confidence":0.75} -{"id":"municipality-buyer@/","choice":"Good software begins with a clear argument","confidence":0.95} -{"id":"exhibition-visitor@/","choice":"Attention is earned","confidence":0.95} -{"id":"tech-journalist@/","choice":"Attention is earned","confidence":0.9} -{"id":"rust-developer@/","choice":"Work happens through dialogue, not tickets","confidence":0.8} -{"id":"interaction-designer@/","choice":"Work happens through dialogue, not tickets","confidence":0.85} -{"id":"student-intern@/","choice":"Work happens through dialogue, not tickets","confidence":0.65} diff --git a/vendor/trainer/runs/uhhm-2026-09-21/answers-skim.jsonl b/vendor/trainer/runs/uhhm-2026-09-21/answers-skim.jsonl deleted file mode 100644 index 58fa88f..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-21/answers-skim.jsonl +++ /dev/null @@ -1,8 +0,0 @@ -{"id":"architecture-firm@/","choice":"Work happens through dialogue, not tickets","confidence":0.70} -{"id":"climbing-gym-founder@/","choice":"Work happens through dialogue, not tickets","confidence":0.85} -{"id":"municipality-buyer@/","choice":"Good software begins with a clear argument","confidence":0.60} -{"id":"exhibition-visitor@/","choice":"Attention is earned","confidence":0.80} -{"id":"tech-journalist@/","choice":"Attention is earned","confidence":0.80} -{"id":"rust-developer@/","choice":"Work happens through dialogue, not tickets","confidence":0.75} -{"id":"interaction-designer@/","choice":"Work happens through dialogue, not tickets","confidence":0.80} -{"id":"student-intern@/","choice":"Attention is earned","confidence":0.55} diff --git a/vendor/trainer/runs/uhhm-2026-09-21/ollama/ans-full-granite4.1.jsonl b/vendor/trainer/runs/uhhm-2026-09-21/ollama/ans-full-granite4.1.jsonl deleted file mode 100644 index b78e9f4..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-21/ollama/ans-full-granite4.1.jsonl +++ /dev/null @@ -1,8 +0,0 @@ -{"id":"architecture-firm@/","choice":"Work happens through dialogue, not tickets","confidence":0.95} -{"id":"climbing-gym-founder@/","choice":"Good software begins with a clear argument","confidence":0.98} -{"id":"municipality-buyer@/","choice":"Good software begins with a clear argument","confidence":0.97} -{"id":"exhibition-visitor@/","choice":"Attention is earned","confidence":0.9} -{"id":"tech-journalist@/","choice":"Attention is earned","confidence":0.92} -{"id":"rust-developer@/","choice":"Work happens through dialogue, not tickets","confidence":0.96} -{"id":"interaction-designer@/","choice":"Work happens through dialogue, not tickets","confidence":0.94} -{"id":"student-intern@/","choice":"Work happens through dialogue, not tickets","confidence":0.88} diff --git a/vendor/trainer/runs/uhhm-2026-09-21/ollama/ans-full-qwen3.jsonl b/vendor/trainer/runs/uhhm-2026-09-21/ollama/ans-full-qwen3.jsonl deleted file mode 100644 index 53c02f2..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-21/ollama/ans-full-qwen3.jsonl +++ /dev/null @@ -1,8 +0,0 @@ -{"id":"architecture-firm@/","choice":"Good software begins with a clear argument","confidence":0.95} -{"id":"climbing-gym-founder@/","choice":"Work happens through dialogue, not tickets","confidence":0.95} -{"id":"municipality-buyer@/","choice":"Good software begins with a clear argument","confidence":0.95} -{"id":"exhibition-visitor@/","choice":"Attention is earned","confidence":0.95} -{"id":"tech-journalist@/","choice":"Attention is earned","confidence":0.95} -{"id":"rust-developer@/","choice":"Work happens through dialogue, not tickets","confidence":0.95} -{"id":"interaction-designer@/","choice":"Work happens through dialogue, not tickets","confidence":0.95} -{"id":"student-intern@/","choice":"Work happens through dialogue, not tickets","confidence":0.95} diff --git a/vendor/trainer/runs/uhhm-2026-09-21/ollama/ans-skim-granite4.1.jsonl b/vendor/trainer/runs/uhhm-2026-09-21/ollama/ans-skim-granite4.1.jsonl deleted file mode 100644 index 5ebca4a..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-21/ollama/ans-skim-granite4.1.jsonl +++ /dev/null @@ -1,8 +0,0 @@ -{"id":"architecture-firm@/","choice":"Work happens through dialogue, not tickets","confidence":0.95} -{"id":"climbing-gym-founder@/","choice":"Good software begins with a clear argument","confidence":0.9} -{"id":"municipality-buyer@/","choice":"Good software begins with a clear argument","confidence":0.93} -{"id":"exhibition-visitor@/","choice":"Attention is earned","confidence":0.96} -{"id":"tech-journalist@/","choice":"Attention is earned","confidence":0.94} -{"id":"rust-developer@/","choice":"Work happens through dialogue, not tickets","confidence":0.92} -{"id":"interaction-designer@/","choice":"Good software begins with a clear argument","confidence":0.91} -{"id":"student-intern@/","choice":"Work happens through dialogue, not tickets","confidence":0.88} diff --git a/vendor/trainer/runs/uhhm-2026-09-21/ollama/ans-skim-qwen3.jsonl b/vendor/trainer/runs/uhhm-2026-09-21/ollama/ans-skim-qwen3.jsonl deleted file mode 100644 index 880c1e2..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-21/ollama/ans-skim-qwen3.jsonl +++ /dev/null @@ -1,8 +0,0 @@ -{"id":"architecture-firm@/","choice":"Good software begins with a clear argument","confidence":0.95} -{"id":"climbing-gym-founder@/","choice":"Work happens through dialogue, not tickets","confidence":0.85} -{"id":"municipality-buyer@/","choice":"Good software begins with a clear argument","confidence":0.90} -{"id":"exhibition-visitor@/","choice":"Attention is earned","confidence":0.80} -{"id":"tech-journalist@/","choice":"Attention is earned","confidence":0.85} -{"id":"rust-developer@/","choice":"Work happens through dialogue, not tickets","confidence":0.80} -{"id":"interaction-designer@/","choice":"Work happens through dialogue, not tickets","confidence":0.90} -{"id":"student-intern@/","choice":"Work happens through dialogue, not tickets","confidence":0.75} diff --git a/vendor/trainer/runs/uhhm-2026-09-21/tasks.jsonl b/vendor/trainer/runs/uhhm-2026-09-21/tasks.jsonl deleted file mode 100644 index 0a0bb8b..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-21/tasks.jsonl +++ /dev/null @@ -1,8 +0,0 @@ -{"id":"architecture-firm@/","persona":"architecture-firm","need":"commission","page":"/","state":{"body":"We run a small architecture firm and our project files are scattered across three cloud drives. We want to pay someone to set up proper storage and backups we control ourselves."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What are you here for?\". Which alternative do they choose?","criteria":{"Attention is earned":"Considered notes on what we're building, and why — sent only when there's something worth saying.","Good software begins with a clear argument":"Infrastructure, tools, or a product — bring the problem, and we read the whole brief before answering.","Work happens through dialogue, not tickets":"What you bring shapes what gets built. We onboard collaborators the same deliberate way we build — by hand, through a real conversation."}}},"expect":["Good software begins with a clear argument"]} -{"id":"climbing-gym-founder@/","persona":"climbing-gym-founder","need":"commission","page":"/","state":{"body":"I have an idea for a booking app for climbing gyms and I'm looking for a team that can build the first version with me."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What are you here for?\". Which alternative do they choose?","criteria":{"Attention is earned":"Considered notes on what we're building, and why — sent only when there's something worth saying.","Good software begins with a clear argument":"Infrastructure, tools, or a product — bring the problem, and we read the whole brief before answering.","Work happens through dialogue, not tickets":"What you bring shapes what gets built. We onboard collaborators the same deliberate way we build — by hand, through a real conversation."}}},"expect":["Good software begins with a clear argument"]} -{"id":"municipality-buyer@/","persona":"municipality-buyer","need":"commission","page":"/","state":{"body":"Our municipality needs an internal tool for tracking building permits. We are looking for a vendor who can scope it and deliver it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What are you here for?\". Which alternative do they choose?","criteria":{"Attention is earned":"Considered notes on what we're building, and why — sent only when there's something worth saying.","Good software begins with a clear argument":"Infrastructure, tools, or a product — bring the problem, and we read the whole brief before answering.","Work happens through dialogue, not tickets":"What you bring shapes what gets built. We onboard collaborators the same deliberate way we build — by hand, through a real conversation."}}},"expect":["Good software begins with a clear argument"]} -{"id":"exhibition-visitor@/","persona":"exhibition-visitor","need":"follow","page":"/","state":{"body":"I saw your drawing network at an exhibition and liked it. I don't want to get involved, I'd just like to know when there is news."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What are you here for?\". Which alternative do they choose?","criteria":{"Attention is earned":"Considered notes on what we're building, and why — sent only when there's something worth saying.","Good software begins with a clear argument":"Infrastructure, tools, or a product — bring the problem, and we read the whole brief before answering.","Work happens through dialogue, not tickets":"What you bring shapes what gets built. We onboard collaborators the same deliberate way we build — by hand, through a real conversation."}}},"expect":["Attention is earned"]} -{"id":"tech-journalist@/","persona":"tech-journalist","need":"follow","page":"/","state":{"body":"I write about Nordic technology. Keep me posted on what you release so I can cover it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What are you here for?\". Which alternative do they choose?","criteria":{"Attention is earned":"Considered notes on what we're building, and why — sent only when there's something worth saying.","Good software begins with a clear argument":"Infrastructure, tools, or a product — bring the problem, and we read the whole brief before answering.","Work happens through dialogue, not tickets":"What you bring shapes what gets built. We onboard collaborators the same deliberate way we build — by hand, through a real conversation."}}},"expect":["Attention is earned"]} -{"id":"rust-developer@/","persona":"rust-developer","need":"collaborate","page":"/","state":{"body":"I'm a Rust developer between jobs and I like that you build in the open. I would love to contribute, and maybe join you."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What are you here for?\". Which alternative do they choose?","criteria":{"Attention is earned":"Considered notes on what we're building, and why — sent only when there's something worth saying.","Good software begins with a clear argument":"Infrastructure, tools, or a product — bring the problem, and we read the whole brief before answering.","Work happens through dialogue, not tickets":"What you bring shapes what gets built. We onboard collaborators the same deliberate way we build — by hand, through a real conversation."}}},"expect":["Work happens through dialogue, not tickets"]} -{"id":"interaction-designer@/","persona":"interaction-designer","need":"collaborate","page":"/","state":{"body":"I'm an interaction designer. I want to work with you on the drawing interface."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What are you here for?\". Which alternative do they choose?","criteria":{"Attention is earned":"Considered notes on what we're building, and why — sent only when there's something worth saying.","Good software begins with a clear argument":"Infrastructure, tools, or a product — bring the problem, and we read the whole brief before answering.","Work happens through dialogue, not tickets":"What you bring shapes what gets built. We onboard collaborators the same deliberate way we build — by hand, through a real conversation."}}},"expect":["Work happens through dialogue, not tickets"]} -{"id":"student-intern@/","persona":"student-intern","need":"collaborate","page":"/","state":{"body":"I'm a computer science student looking for a summer internship doing infrastructure work."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What are you here for?\". Which alternative do they choose?","criteria":{"Attention is earned":"Considered notes on what we're building, and why — sent only when there's something worth saying.","Good software begins with a clear argument":"Infrastructure, tools, or a product — bring the problem, and we read the whole brief before answering.","Work happens through dialogue, not tickets":"What you bring shapes what gets built. We onboard collaborators the same deliberate way we build — by hand, through a real conversation."}}},"expect":["Work happens through dialogue, not tickets"]} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/README.md b/vendor/trainer/runs/uhhm-2026-09-23/README.md deleted file mode 100644 index 2d003ae..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/README.md +++ /dev/null @@ -1,133 +0,0 @@ -# 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`. - -## Rounds 4 and 5: the front door opens modestly, no doors - -The same plan flattened the same afternoon: no doors, and the front -door opens with what UHHM does, two cards for the two roles it exists -for (a brief, and the redoal network), then a look-around card (what -was built, the relay's live count), and only then the six offers. -Round 5 heads each opener card with what that role gets, and gives -both roles a move after sending: the client withdraws a brief, the -person on the network says when a case is resolved. - -| Round | Front door | With descriptions | Headings only | -|---|---|---|---| -| 3 (`r3/`) | two doors, the custody card | 19 of 27 | 21 of 27 | -| 4 (`r4/`) | opener, look around, six offers | 12 of 15 | 12 of 15 | -| 5 (`site/`) | + wins as headings, players' moves | 11 of 15 | 12 of 15 | - -Fewer tasks, since no persona is asked twice. Per persona the flat -page routes at least as well as the doored one, and the misses are -the same judgment calls: the interaction designer and the app builder -between "Work with us" and the trial or the network, the dance school -anywhere. Two personas now pick the opener itself on headings alone -(the journalist, the rewriter): they are browsing, which is what the -card is for, and the scorer counts it as a miss. `words-r5.json` is -the words as used. - -## Round 6: the mails - -Same words as round 5, plus `mails:` on the brief, the trial and the -custody case: the submitter hears on arrival and on every decision, -from portal@uhhm.no. The subjects and bodies are the builder's -fallbacks (what happened, and the link to the submitter's own move -where they have one); a model has not reworded them yet. This is what -the `trainer-rebuild` branch carries. - -## Round 7: the mails, worded by a model - -`build --llm-for aggregates.yaml` lets Sonnet write the ten mails -alone, every other word as in round 5. It dropped the submitter's -link the first time (a bare `{chain}` in its place), so the builder -now puts the link back whenever a model loses it. `rate --repo` rates -each mail's prose on its own: - -| Mail | Fallback LIX | Sonnet LIX | -|---|---|---| -| projects:open | 18 | 9 | -| trials:open | 18 | 13 | -| custody_requests:open | 25 | 32 | -| all ten, range | 18 to 28 | 9 to 33 | - -Easier on the whole, and specific where the fallback was formulaic: -"Your brief is in front of us. We read the whole thing before we -reply, so it may take a few days." `words-r7.json` is the words as -used; the branch carries them. - -## Round 8: stage words, and turned down only where the plan says - -`stages_text` on every need, three owners' desk buttons reworded by -hand ("Archive as past client", "Part ways", "Withdraw the invite"), -and `turned_down_from: [open, invited]` on the collaborators, so a -person is declined before they start and departs after - the live -site's machine exactly. Desks: 18 of 18, from 15 of 18 read against -state ids. `words-r8.json` is the words as used; the branch carries -them. diff --git a/vendor/trainer/runs/uhhm-2026-09-23/answers-full-seed1.jsonl b/vendor/trainer/runs/uhhm-2026-09-23/answers-full-seed1.jsonl deleted file mode 100644 index 6299d7c..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/answers-full-seed1.jsonl +++ /dev/null @@ -1,15 +0,0 @@ -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"architecture-firm@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"climbing-gym-founder@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"municipality-buyer@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"exhibition-visitor@/"} -{"choice":"What UHHM does","confidence":0.85,"id":"tech-journalist@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"rust-developer@/"} -{"choice":"What UHHM does","confidence":0.95,"id":"interaction-designer@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"student-intern@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"plumber-owner@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"dance-school@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"node-runner@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"recorded-name@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"app-builder@/"} -{"choice":"Suggest a change to this website","confidence":0.95,"id":"wording-fix@/"} -{"choice":"Suggest a change to this website","confidence":0.95,"id":"rewrite@/"} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/answers-full-seed2.jsonl b/vendor/trainer/runs/uhhm-2026-09-23/answers-full-seed2.jsonl deleted file mode 100644 index 60ed03c..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/answers-full-seed2.jsonl +++ /dev/null @@ -1,15 +0,0 @@ -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"architecture-firm@/"} -{"choice":"Work with us","confidence":0.95,"id":"climbing-gym-founder@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"municipality-buyer@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"exhibition-visitor@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"tech-journalist@/"} -{"choice":"Work with us","confidence":0.95,"id":"rust-developer@/"} -{"choice":"Have us build it: send the brief","confidence":0.85,"id":"interaction-designer@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"student-intern@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"plumber-owner@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"dance-school@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"node-runner@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"recorded-name@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"app-builder@/"} -{"choice":"Suggest a change to this website","confidence":0.95,"id":"wording-fix@/"} -{"choice":"Suggest a change to this website","confidence":0.95,"id":"rewrite@/"} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/answers-full-seed3.jsonl b/vendor/trainer/runs/uhhm-2026-09-23/answers-full-seed3.jsonl deleted file mode 100644 index e4d0ae3..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/answers-full-seed3.jsonl +++ /dev/null @@ -1,15 +0,0 @@ -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"architecture-firm@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"climbing-gym-founder@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"municipality-buyer@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"exhibition-visitor@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.85,"id":"tech-journalist@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"rust-developer@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"interaction-designer@/"} -{"choice":"Work with us","confidence":0.95,"id":"student-intern@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"plumber-owner@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"dance-school@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"node-runner@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"recorded-name@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"app-builder@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"wording-fix@/"} -{"choice":"Suggest a change to this website","confidence":0.95,"id":"rewrite@/"} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/answers-full.jsonl b/vendor/trainer/runs/uhhm-2026-09-23/answers-full.jsonl deleted file mode 100644 index 1961dc2..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/answers-full.jsonl +++ /dev/null @@ -1,15 +0,0 @@ -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"architecture-firm@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"climbing-gym-founder@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"municipality-buyer@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"exhibition-visitor@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"tech-journalist@/"} -{"choice":"Work with us","confidence":0.95,"id":"rust-developer@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"interaction-designer@/"} -{"choice":"Work with us","confidence":0.95,"id":"student-intern@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"plumber-owner@/"} -{"choice":"Work with us","confidence":0.95,"id":"dance-school@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"node-runner@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"recorded-name@/"} -{"choice":"Work with us","confidence":0.95,"id":"app-builder@/"} -{"choice":"Suggest a change to this website","confidence":0.95,"id":"wording-fix@/"} -{"choice":"What UHHM does","confidence":0.95,"id":"rewrite@/"} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/answers-skim-seed1.jsonl b/vendor/trainer/runs/uhhm-2026-09-23/answers-skim-seed1.jsonl deleted file mode 100644 index af3d71d..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/answers-skim-seed1.jsonl +++ /dev/null @@ -1,15 +0,0 @@ -{"choice":"See your own business as a site, before you buy anything","confidence":0.85,"id":"architecture-firm@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"climbing-gym-founder@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"municipality-buyer@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"exhibition-visitor@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"tech-journalist@/"} -{"choice":"Work with us","confidence":0.95,"id":"rust-developer@/"} -{"choice":"Work with us","confidence":0.95,"id":"interaction-designer@/"} -{"choice":"Work with us","confidence":0.95,"id":"student-intern@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"plumber-owner@/"} -{"choice":"Work with us","confidence":0.95,"id":"dance-school@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"node-runner@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"recorded-name@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"app-builder@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"wording-fix@/"} -{"choice":"Suggest a change to this website","confidence":0.95,"id":"rewrite@/"} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/answers-skim-seed2.jsonl b/vendor/trainer/runs/uhhm-2026-09-23/answers-skim-seed2.jsonl deleted file mode 100644 index 8121d42..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/answers-skim-seed2.jsonl +++ /dev/null @@ -1,15 +0,0 @@ -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"architecture-firm@/"} -{"choice":"Work with us","confidence":0.85,"id":"climbing-gym-founder@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"municipality-buyer@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"exhibition-visitor@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"tech-journalist@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"rust-developer@/"} -{"choice":"Have us build it: send the brief","confidence":0.85,"id":"interaction-designer@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"student-intern@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"plumber-owner@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"dance-school@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"node-runner@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"recorded-name@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"app-builder@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"wording-fix@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"rewrite@/"} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/answers-skim-seed3.jsonl b/vendor/trainer/runs/uhhm-2026-09-23/answers-skim-seed3.jsonl deleted file mode 100644 index cde0b06..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/answers-skim-seed3.jsonl +++ /dev/null @@ -1,15 +0,0 @@ -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"architecture-firm@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"climbing-gym-founder@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"municipality-buyer@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"exhibition-visitor@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"tech-journalist@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"rust-developer@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"interaction-designer@/"} -{"choice":"Work with us","confidence":0.95,"id":"student-intern@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"plumber-owner@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"dance-school@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"node-runner@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"recorded-name@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"app-builder@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"wording-fix@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"rewrite@/"} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/answers-skim.jsonl b/vendor/trainer/runs/uhhm-2026-09-23/answers-skim.jsonl deleted file mode 100644 index 49ba944..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/answers-skim.jsonl +++ /dev/null @@ -1,15 +0,0 @@ -{"choice":"Work with us","confidence":0.85,"id":"architecture-firm@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"climbing-gym-founder@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"municipality-buyer@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"exhibition-visitor@/"} -{"choice":"What UHHM does","confidence":0.95,"id":"tech-journalist@/"} -{"choice":"Work with us","confidence":0.95,"id":"rust-developer@/"} -{"choice":"Work with us","confidence":0.85,"id":"interaction-designer@/"} -{"choice":"Work with us","confidence":0.95,"id":"student-intern@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"plumber-owner@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.85,"id":"dance-school@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"node-runner@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"recorded-name@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"app-builder@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"wording-fix@/"} -{"choice":"Suggest a change to this website","confidence":0.95,"id":"rewrite@/"} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/iris.log b/vendor/trainer/runs/uhhm-2026-09-23/iris.log deleted file mode 100644 index 2196453..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/iris.log +++ /dev/null @@ -1,23 +0,0 @@ -OK: 14 question(s), 9 aggregate(s) valid -OK: access policy, 57 rule(s), validates -need "commission": / [Have us build it: send the brief] -> "projects" -need "trial": / [See your own business as a site, before you buy anything] -> "trials" -need "collaborate": / [Work with us] -> "applicants" -need "subscribe": / [Hear from us now and then] -> "subscribers" -need "propose": / [Suggest a change to this website] -> "development_proposals" -need "custody": / [You are on the redoal network: a node, an app, or a recording that concerns you] -> "custody_requests" -need "prospect": /owners/prospect [Keep an organization on your radar] -> "organizations" -OK: 7 need(s) structurally met, 0 planned, 15 persona(s) -wrote the simulation model to model.json -wrote 15 wording task(s) to tasks-full.jsonl -OK: 14 question(s), 9 aggregate(s) valid -OK: access policy, 57 rule(s), validates -need "commission": / [Have us build it: send the brief] -> "projects" -need "trial": / [See your own business as a site, before you buy anything] -> "trials" -need "collaborate": / [Work with us] -> "applicants" -need "subscribe": / [Hear from us now and then] -> "subscribers" -need "propose": / [Suggest a change to this website] -> "development_proposals" -need "custody": / [You are on the redoal network: a node, an app, or a recording that concerns you] -> "custody_requests" -need "prospect": /owners/prospect [Keep an organization on your radar] -> "organizations" -OK: 7 need(s) structurally met, 0 planned, 15 persona(s) -wrote 15 wording task(s) to tasks-skim.jsonl diff --git a/vendor/trainer/runs/uhhm-2026-09-23/model.json b/vendor/trainer/runs/uhhm-2026-09-23/model.json deleted file mode 100644 index 3a95bea..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/model.json +++ /dev/null @@ -1,956 +0,0 @@ -{ - "needs": [ - { - "id": "commission", - "who": "an organization with a problem it wants software to solve", - "wants": "a considered reply to a brief, from people who read the whole thing", - "enters_as": null, - "lands_in": "projects", - "handled_by": "owners", - "done_when": [ - "accepted", - "declined" - ], - "success": [ - "accepted" - ], - "steps": [ - { - "page": "/", - "question": "What is UHHM, and what can you get here?", - "options": [ - { - "name": "What UHHM does", - "description": "Two things, both built here and both running." - }, - { - "name": "Have a look around first", - "description": "Nothing to fill in here. What is already out in the world, and the network as it runs right now." - }, - { - "name": "Have us build it: send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing." - }, - { - "name": "See your own business as a site, before you buy anything", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through." - }, - { - "name": "Work with us", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit." - }, - { - "name": "Hear from us now and then", - "description": "You'd rather hear from us now and then than check back on your own." - }, - { - "name": "Suggest a change to this website", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how." - }, - { - "name": "You are on the redoal network: a node, an app, or a recording that concerns you", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at." - } - ], - "expect": [ - "Have us build it: send the brief" - ], - "alternative": "Have us build it: send the brief", - "fields": [ - { - "name": "name", - "label": "Your name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Your email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "project", - "label": "The problem you want solved", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "organization", - "label": "Your organization", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "org_contact", - "label": "Who we should talk to", - "type": "text", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "trial", - "who": "someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything", - "wants": "a first draft of a site for their own roles, built from their own words and approved by a person first", - "enters_as": null, - "lands_in": "trials", - "handled_by": "owners", - "done_when": [ - "previewed", - "declined" - ], - "success": [ - "previewed" - ], - "steps": [ - { - "page": "/", - "question": "What is UHHM, and what can you get here?", - "options": [ - { - "name": "What UHHM does", - "description": "Two things, both built here and both running." - }, - { - "name": "Have a look around first", - "description": "Nothing to fill in here. What is already out in the world, and the network as it runs right now." - }, - { - "name": "Have us build it: send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing." - }, - { - "name": "See your own business as a site, before you buy anything", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through." - }, - { - "name": "Work with us", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit." - }, - { - "name": "Hear from us now and then", - "description": "You'd rather hear from us now and then than check back on your own." - }, - { - "name": "Suggest a change to this website", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how." - }, - { - "name": "You are on the redoal network: a node, an app, or a recording that concerns you", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at." - } - ], - "expect": [ - "See your own business as a site, before you buy anything" - ], - "alternative": "See your own business as a site, before you buy anything", - "fields": [ - { - "name": "business", - "label": "Your business", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Your email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "what_we_do", - "label": "What you do", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "who_comes_to_us", - "label": "Who comes to you", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "what_we_keep_track_of", - "label": "What you keep track of", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "who_is_involved", - "label": "Who's involved", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "what_slows_us_down", - "label": "What slows you down", - "type": "textarea", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "collaborate", - "who": "someone who wants to work with us on what we build", - "wants": "to be read as a person, and invited in if there is a fit", - "enters_as": null, - "lands_in": "applicants", - "handled_by": "owners", - "done_when": [ - "departed", - "declined" - ], - "success": [ - "departed" - ], - "steps": [ - { - "page": "/", - "question": "What is UHHM, and what can you get here?", - "options": [ - { - "name": "What UHHM does", - "description": "Two things, both built here and both running." - }, - { - "name": "Have a look around first", - "description": "Nothing to fill in here. What is already out in the world, and the network as it runs right now." - }, - { - "name": "Have us build it: send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing." - }, - { - "name": "See your own business as a site, before you buy anything", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through." - }, - { - "name": "Work with us", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit." - }, - { - "name": "Hear from us now and then", - "description": "You'd rather hear from us now and then than check back on your own." - }, - { - "name": "Suggest a change to this website", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how." - }, - { - "name": "You are on the redoal network: a node, an app, or a recording that concerns you", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at." - } - ], - "expect": [ - "Work with us" - ], - "alternative": "Work with us", - "fields": [ - { - "name": "name", - "label": "Name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "interest", - "label": "What kind of work", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "note", - "label": "Tell us more", - "type": "textarea", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "subscribe", - "who": "someone who wants to hear from us when there is something to say", - "wants": "a note now and then, and an easy way out", - "enters_as": null, - "lands_in": "subscribers", - "handled_by": "owners", - "done_when": [ - "unsubscribed" - ], - "success": [], - "steps": [ - { - "page": "/", - "question": "What is UHHM, and what can you get here?", - "options": [ - { - "name": "What UHHM does", - "description": "Two things, both built here and both running." - }, - { - "name": "Have a look around first", - "description": "Nothing to fill in here. What is already out in the world, and the network as it runs right now." - }, - { - "name": "Have us build it: send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing." - }, - { - "name": "See your own business as a site, before you buy anything", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through." - }, - { - "name": "Work with us", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit." - }, - { - "name": "Hear from us now and then", - "description": "You'd rather hear from us now and then than check back on your own." - }, - { - "name": "Suggest a change to this website", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how." - }, - { - "name": "You are on the redoal network: a node, an app, or a recording that concerns you", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at." - } - ], - "expect": [ - "Hear from us now and then" - ], - "alternative": "Hear from us now and then", - "fields": [ - { - "name": "name", - "label": "Name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "propose", - "who": "a visitor who sees how a page on this site should change", - "wants": "the change read by a person and, if approved, made", - "enters_as": null, - "lands_in": "development_proposals", - "handled_by": "owners", - "done_when": [ - "approved", - "rejected" - ], - "success": [ - "approved" - ], - "steps": [ - { - "page": "/", - "question": "What is UHHM, and what can you get here?", - "options": [ - { - "name": "What UHHM does", - "description": "Two things, both built here and both running." - }, - { - "name": "Have a look around first", - "description": "Nothing to fill in here. What is already out in the world, and the network as it runs right now." - }, - { - "name": "Have us build it: send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing." - }, - { - "name": "See your own business as a site, before you buy anything", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through." - }, - { - "name": "Work with us", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit." - }, - { - "name": "Hear from us now and then", - "description": "You'd rather hear from us now and then than check back on your own." - }, - { - "name": "Suggest a change to this website", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how." - }, - { - "name": "You are on the redoal network: a node, an app, or a recording that concerns you", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at." - } - ], - "expect": [ - "Suggest a change to this website" - ], - "alternative": "Suggest a change to this website", - "fields": [ - { - "name": "submitted_by", - "label": "Your name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": true, - "options": [] - }, - { - "name": "page", - "label": "Which page", - "type": "text", - "optional": true, - "options": [] - }, - { - "name": "rationale", - "label": "Why this is better", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "proposed_yaml", - "label": "Your proposed text", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "custody", - "who": "someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node", - "wants": "an answer from a custodian, and action where the network keeps something it should not", - "enters_as": null, - "lands_in": "custody_requests", - "handled_by": "custodians", - "done_when": [ - "resolved", - "declined" - ], - "success": [ - "resolved" - ], - "steps": [ - { - "page": "/", - "question": "What is UHHM, and what can you get here?", - "options": [ - { - "name": "What UHHM does", - "description": "Two things, both built here and both running." - }, - { - "name": "Have a look around first", - "description": "Nothing to fill in here. What is already out in the world, and the network as it runs right now." - }, - { - "name": "Have us build it: send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing." - }, - { - "name": "See your own business as a site, before you buy anything", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through." - }, - { - "name": "Work with us", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit." - }, - { - "name": "Hear from us now and then", - "description": "You'd rather hear from us now and then than check back on your own." - }, - { - "name": "Suggest a change to this website", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how." - }, - { - "name": "You are on the redoal network: a node, an app, or a recording that concerns you", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at." - } - ], - "expect": [ - "You are on the redoal network: a node, an app, or a recording that concerns you" - ], - "alternative": "You are on the redoal network: a node, an app, or a recording that concerns you", - "fields": [ - { - "name": "name", - "label": "Name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "about", - "label": "What's going on", - "type": "select", - "optional": false, - "options": [ - "Running a node of my own", - "Building on the network", - "Something the network keeps about me", - "Something else" - ] - }, - { - "name": "what", - "label": "In short", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "prospect", - "who": "an owner who has met an organization worth following up", - "wants": "it written down and walked through its states from the desk", - "enters_as": "owners", - "lands_in": "organizations", - "handled_by": "owners", - "done_when": [ - "past_client" - ], - "success": [], - "steps": [ - { - "page": "/owners/prospect", - "question": "Is there an organization I should be keeping track of?", - "options": [ - { - "name": "Keep an organization on your radar", - "description": "One line per organization worth watching, moved through the stages as things develop." - } - ], - "expect": [ - "Keep an organization on your radar" - ], - "alternative": "Keep an organization on your radar", - "fields": [ - { - "name": "name", - "label": "Organization", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "contact", - "label": "Contact", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "note", - "label": "Note", - "type": "textarea", - "optional": true, - "options": [] - } - ] - } - ] - } - ], - "buckets": { - "projects": { - "initial": "open", - "transitions": { - "open": [ - "accepted", - "declined" - ] - }, - "desks": [ - { - "page": "/owners", - "group": "owners", - "moves": [ - { - "from": "open", - "to": "accepted", - "label": "Accept brief" - }, - { - "from": "open", - "to": "declined", - "label": "Decline brief" - } - ] - } - ], - "self_moves": [ - "declined" - ] - }, - "trials": { - "initial": "open", - "transitions": { - "approved": [ - "previewed", - "declined" - ], - "open": [ - "approved", - "declined" - ] - }, - "desks": [ - { - "page": "/owners", - "group": "owners", - "moves": [ - { - "from": "approved", - "to": "previewed", - "label": "Mark previewed" - }, - { - "from": "approved", - "to": "declined", - "label": "Decline trial" - }, - { - "from": "open", - "to": "approved", - "label": "Approve trial" - }, - { - "from": "open", - "to": "declined", - "label": "Decline trial" - } - ] - } - ], - "self_moves": [] - }, - "applicants": { - "initial": "open", - "transitions": { - "open": [ - "invited", - "declined" - ], - "active": [ - "departed", - "declined" - ], - "invited": [ - "active", - "declined" - ] - }, - "desks": [ - { - "page": "/owners", - "group": "owners", - "moves": [ - { - "from": "active", - "to": "departed", - "label": "Mark departed" - }, - { - "from": "active", - "to": "declined", - "label": "End collaboration" - }, - { - "from": "invited", - "to": "active", - "label": "Confirm active" - }, - { - "from": "invited", - "to": "declined", - "label": "Withdraw invite" - }, - { - "from": "open", - "to": "invited", - "label": "Send invite" - }, - { - "from": "open", - "to": "declined", - "label": "Decline applicant" - } - ] - } - ], - "self_moves": [] - }, - "subscribers": { - "initial": "open", - "transitions": { - "open": [ - "unsubscribed" - ] - }, - "desks": [ - { - "page": "/owners", - "group": "owners", - "moves": [ - { - "from": "open", - "to": "unsubscribed", - "label": "Unsubscribe them" - } - ] - } - ], - "self_moves": [ - "unsubscribed" - ] - }, - "development_proposals": { - "initial": "open", - "transitions": { - "open": [ - "approved", - "rejected" - ] - }, - "desks": [ - { - "page": "/owners", - "group": "owners", - "moves": [ - { - "from": "open", - "to": "approved", - "label": "Approve change" - }, - { - "from": "open", - "to": "rejected", - "label": "Reject change" - } - ] - } - ], - "self_moves": [] - }, - "custody_requests": { - "initial": "open", - "transitions": { - "in_dialogue": [ - "resolved", - "declined" - ], - "open": [ - "in_dialogue", - "declined" - ] - }, - "desks": [ - { - "page": "/custodians", - "group": "custodians", - "moves": [ - { - "from": "in_dialogue", - "to": "resolved", - "label": "Mark resolved" - }, - { - "from": "in_dialogue", - "to": "declined", - "label": "Close, no action" - }, - { - "from": "open", - "to": "in_dialogue", - "label": "Open dialogue" - }, - { - "from": "open", - "to": "declined", - "label": "Decline case" - } - ] - }, - { - "page": "/owners", - "group": "owners", - "moves": [] - } - ], - "self_moves": [ - "resolved" - ] - }, - "organizations": { - "initial": "prospect", - "transitions": { - "client": [ - "past_client" - ], - "prospect": [ - "client", - "past_client" - ] - }, - "desks": [ - { - "page": "/owners", - "group": "owners", - "moves": [ - { - "from": "client", - "to": "past_client", - "label": "Mark past client" - }, - { - "from": "prospect", - "to": "client", - "label": "Mark as client" - }, - { - "from": "prospect", - "to": "past_client", - "label": "Mark not pursued" - } - ] - } - ], - "self_moves": [] - } - }, - "personas": [ - { - "id": "architecture-firm", - "need": "commission", - "text": "We run a small architecture firm and our project files are scattered across three cloud drives. We want to pay someone to set up proper storage and backups we control ourselves." - }, - { - "id": "climbing-gym-founder", - "need": "commission", - "text": "I have an idea for a booking app for climbing gyms and I'm looking for a team that can build the first version with me." - }, - { - "id": "municipality-buyer", - "need": "commission", - "text": "Our municipality needs an internal tool for tracking building permits. We are looking for a vendor who can scope it and deliver it." - }, - { - "id": "exhibition-visitor", - "need": "subscribe", - "text": "I saw your drawing network at an exhibition and liked it. I don't want to get involved, I'd just like to know when there is news." - }, - { - "id": "tech-journalist", - "need": "subscribe", - "text": "I write about Nordic technology. Keep me posted on what you release so I can cover it." - }, - { - "id": "rust-developer", - "need": "collaborate", - "text": "I'm a Rust developer between jobs and I like that you build in the open. I would love to contribute, and maybe join you." - }, - { - "id": "interaction-designer", - "need": "collaborate", - "text": "I'm an interaction designer. I want to work with you on the drawing interface." - }, - { - "id": "student-intern", - "need": "collaborate", - "text": "I'm a computer science student looking for a summer internship doing infrastructure work." - }, - { - "id": "plumber-owner", - "need": "trial", - "text": "I run a plumbing company with four vans. Jobs come in by phone and text and some get lost. I'd like to see how this would look for us before I spend any money." - }, - { - "id": "dance-school", - "need": "trial", - "text": "We are a dance school. Enrolments, cancellations and invoices all go through one email inbox that only I understand. Can you show me a version made for us?" - }, - { - "id": "node-runner", - "need": "custody", - "text": "I run a small server in Berlin and want to host a redoal node that peers with yours. Who do I talk to?" - }, - { - "id": "recorded-name", - "need": "custody", - "text": "Someone left a recording on redoal that says my full name and where I live. I want it gone, and I want to know who is responsible for that network." - }, - { - "id": "app-builder", - "need": "custody", - "text": "I'm building a music app and would like to use redoal's gesture addresses in it. Is that possible, and who decides?" - }, - { - "id": "wording-fix", - "need": "propose", - "text": "The subscribe page should say how often you actually write. I'd like to suggest that exact change to the page." - }, - { - "id": "rewrite", - "need": "propose", - "text": "One page on this site reads wrong to me and I know exactly how I'd rewrite it. Where do I send the new text?" - } - ] -} \ No newline at end of file diff --git a/vendor/trainer/runs/uhhm-2026-09-23/overrides-r3.json b/vendor/trainer/runs/uhhm-2026-09-23/overrides-r3.json deleted file mode 100644 index 33c3c1a..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/overrides-r3.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "questions/index.yaml": { - "question": "Who are you, and what do you need from UHHM?", - "doors": { - "build": { - "heading": "You run an organization that needs software built", - "description": "Send us a brief, or first describe how work flows through your business and see it as a working site before you pay for anything.", - "for_whom": "For a business or an organization with a job for us" - }, - "join": { - "heading": "You want to join us, follow us, or fix a page on this site", - "description": "A developer, designer or student who wants in; someone who wants a note now and then; or a reader who would reword a page on uhhm.no.", - "for_whom": "For a person, on their own behalf" - } - }, - "needs": { - "custody": { - "heading": "You are on the redoal network: a node, an app, or a recording that concerns you", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at." - } - } - } -} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/overrides-r4.json b/vendor/trainer/runs/uhhm-2026-09-23/overrides-r4.json deleted file mode 100644 index 1b350bc..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/overrides-r4.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "questions/index.yaml": { - "question": "What is UHHM, and what can you get here?", - "opener": { - "heading": "What UHHM does", - "description": "Two things, both built here and both running.", - "features": { - "software": { "heading": "Software built around a clear argument", "description": "Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything.", "icon": "layers" }, - "redoal": { "heading": "The redoal network, built and carried here", "description": "The gesture math, the relay, the first node, and the portal this page runs on. UHHM answers for what that network keeps.", "icon": "waypoints" } - } - }, - "shopping": { - "heading": "Have a look around first", - "description": "Nothing to fill in here. What is already out in the world, and the network as it runs right now.", - "items": { - "built": { "heading": "What we have built", "description": "A few things already out in the world.", "icon": "hammer" }, - "voices": { "heading": "The redoal network, live", "description": "Straight from the relay, the first node of the network.", "icon": "activity" } - } - } - } -} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/overrides-r5.json b/vendor/trainer/runs/uhhm-2026-09-23/overrides-r5.json deleted file mode 100644 index 8d794f9..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/overrides-r5.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "questions/index.yaml": { - "opener": { - "features": { - "software": { "heading": "A considered reply to your brief, and software that fits the argument", "description": "Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself." }, - "redoal": { "heading": "A network that answers to you", "description": "UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved." } - } - } - } -} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/overrides.json b/vendor/trainer/runs/uhhm-2026-09-23/overrides.json deleted file mode 100644 index 41be94e..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/overrides.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "questions/index.yaml": { - "doors": { - "build": { - "heading": "Get software built, or try a site for your business first", - "description": "Send us a brief, or describe how work flows through your business and see it as a working site before you pay for anything." - }, - "join": { - "heading": "Work with us, hear from us, or change this website", - "description": "Join us as a collaborator, get a note now and then, or suggest a change to a page on uhhm.no." - } - }, - "needs": { - "custody": { - "heading": "About the redoal network: run a node, build on it, or have something removed", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at.", - "road_description": "A custodian opens a dialogue with you. A node gets its peer, a builder gets an answer, and something the network should not keep gets removed. Either way you hear what was decided.", - "form_description": "Say which of the four it is, and what you need, in a few lines." - } - } - }, - "questions/build/index.yaml": { - "question": "Do you have a brief, or do you want to see your business as a site first?", - "needs": { - "commission": { - "heading": "Have us build it: send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing." - }, - "trial": { - "heading": "See your own business as a site, before you buy anything", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through." - } - } - }, - "questions/join/index.yaml": { - "needs": { - "collaborate": { - "heading": "Work with us", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit." - }, - "subscribe": { - "heading": "Hear from us now and then" - }, - "propose": { - "heading": "Suggest a change to this website", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how." - } - } - }, - "questions/custodians/index.yaml": { - "question": "What is waiting on the custodians?", - "confirm": "Confirm" - } -} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/answers-full.jsonl b/vendor/trainer/runs/uhhm-2026-09-23/r1/answers-full.jsonl deleted file mode 100644 index cdb9842..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/answers-full.jsonl +++ /dev/null @@ -1,27 +0,0 @@ -{"choice":"Get an answer from the people who keep the network","confidence":0.95,"id":"architecture-firm@/"} -{"choice":"A considered reply to your brief","confidence":0.95,"id":"architecture-firm@/build"} -{"choice":"Get software built around your problem","confidence":0.85,"id":"climbing-gym-founder@/"} -{"choice":"A first draft of your own site","confidence":0.95,"id":"climbing-gym-founder@/build"} -{"choice":"Get software built around your problem","confidence":0.85,"id":"municipality-buyer@/"} -{"choice":"A considered reply to your brief","confidence":0.95,"id":"municipality-buyer@/build"} -{"choice":"Get an answer from the people who keep the network","confidence":0.85,"id":"exhibition-visitor@/"} -{"choice":"Hear from us only when there's something to say","confidence":1.0,"id":"exhibition-visitor@/join"} -{"choice":"Get an answer from the people who keep the network","confidence":0.95,"id":"tech-journalist@/"} -{"choice":"Hear from us only when there's something to say","confidence":0.95,"id":"tech-journalist@/join"} -{"choice":"Work with us, or just stay in touch","confidence":0.85,"id":"rust-developer@/"} -{"choice":"Work with people who read the whole thing","confidence":0.95,"id":"rust-developer@/join"} -{"choice":"Get an answer from the people who keep the network","confidence":0.95,"id":"interaction-designer@/"} -{"choice":"Get a page fixed the way you'd write it","confidence":0.95,"id":"interaction-designer@/join"} -{"choice":"Work with us, or just stay in touch","confidence":0.95,"id":"student-intern@/"} -{"choice":"Work with people who read the whole thing","confidence":0.95,"id":"student-intern@/join"} -{"choice":"Get software built around your problem","confidence":0.95,"id":"plumber-owner@/"} -{"choice":"A first draft of your own site","confidence":0.95,"id":"plumber-owner@/build"} -{"choice":"Get an answer from the people who keep the network","confidence":0.95,"id":"dance-school@/"} -{"choice":"A first draft of your own site","confidence":0.95,"id":"dance-school@/build"} -{"choice":"Get an answer from the people who keep the network","confidence":0.95,"id":"node-runner@/"} -{"choice":"Get an answer from the people who keep the network","confidence":0.95,"id":"recorded-name@/"} -{"choice":"Get software built around your problem","confidence":0.95,"id":"app-builder@/"} -{"choice":"Get an answer from the people who keep the network","confidence":0.95,"id":"wording-fix@/"} -{"choice":"Work with people who read the whole thing","confidence":0.95,"id":"wording-fix@/join"} -{"choice":"Get an answer from the people who keep the network","confidence":0.95,"id":"rewrite@/"} -{"choice":"Get a page fixed the way you'd write it","confidence":1.0,"id":"rewrite@/join"} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/answers-skim.jsonl b/vendor/trainer/runs/uhhm-2026-09-23/r1/answers-skim.jsonl deleted file mode 100644 index 4e314fb..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/answers-skim.jsonl +++ /dev/null @@ -1,27 +0,0 @@ -{"choice":"Get an answer from the people who keep the network","confidence":0.95,"id":"architecture-firm@/"} -{"choice":"A considered reply to your brief","confidence":0.95,"id":"architecture-firm@/build"} -{"choice":"Get software built around your problem","confidence":0.95,"id":"climbing-gym-founder@/"} -{"choice":"A considered reply to your brief","confidence":0.85,"id":"climbing-gym-founder@/build"} -{"choice":"Get software built around your problem","confidence":0.95,"id":"municipality-buyer@/"} -{"choice":"A considered reply to your brief","confidence":0.95,"id":"municipality-buyer@/build"} -{"choice":"Work with us, or just stay in touch","confidence":0.95,"id":"exhibition-visitor@/"} -{"choice":"Hear from us only when there's something to say","confidence":1.0,"id":"exhibition-visitor@/join"} -{"choice":"Work with us, or just stay in touch","confidence":0.95,"id":"tech-journalist@/"} -{"choice":"Hear from us only when there's something to say","confidence":0.95,"id":"tech-journalist@/join"} -{"choice":"Work with us, or just stay in touch","confidence":0.95,"id":"rust-developer@/"} -{"choice":"Get a page fixed the way you'd write it","confidence":0.95,"id":"rust-developer@/join"} -{"choice":"Work with us, or just stay in touch","confidence":0.95,"id":"interaction-designer@/"} -{"choice":"Get a page fixed the way you'd write it","confidence":0.95,"id":"interaction-designer@/join"} -{"choice":"Get an answer from the people who keep the network","confidence":0.95,"id":"student-intern@/"} -{"choice":"Hear from us only when there's something to say","confidence":0.95,"id":"student-intern@/join"} -{"choice":"Get software built around your problem","confidence":0.95,"id":"plumber-owner@/"} -{"choice":"A first draft of your own site","confidence":0.85,"id":"plumber-owner@/build"} -{"choice":"Get software built around your problem","confidence":0.95,"id":"dance-school@/"} -{"choice":"A considered reply to your brief","confidence":0.95,"id":"dance-school@/build"} -{"choice":"Get an answer from the people who keep the network","confidence":0.95,"id":"node-runner@/"} -{"choice":"Get an answer from the people who keep the network","confidence":0.95,"id":"recorded-name@/"} -{"choice":"Get software built around your problem","confidence":0.95,"id":"app-builder@/"} -{"choice":"Work with us, or just stay in touch","confidence":0.95,"id":"wording-fix@/"} -{"choice":"Hear from us only when there's something to say","confidence":0.95,"id":"wording-fix@/join"} -{"choice":"Work with us, or just stay in touch","confidence":0.95,"id":"rewrite@/"} -{"choice":"Get a page fixed the way you'd write it","confidence":1.0,"id":"rewrite@/join"} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/rated/rate.json b/vendor/trainer/runs/uhhm-2026-09-23/r1/rated/rate.json deleted file mode 100644 index 3da88cf..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/rated/rate.json +++ /dev/null @@ -1,274 +0,0 @@ -{ - "collaborate": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 1, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 25.48076923076923, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 3, - "required_fields": 0, - "understanding": { - "asked": 3, - "next": null, - "where": 3, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 21.791208791208792, - "options": 3, - "overloaded": false, - "page": "/join", - "personas": 3, - "required_fields": 3, - "understanding": { - "asked": 3, - "next": 3, - "where": 3, - "which": 3 - } - } - ], - "steps": 2 - }, - "commission": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 25.48076923076923, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 3, - "required_fields": 0, - "understanding": { - "asked": 3, - "next": null, - "where": 2, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 27.436974789915965, - "options": 2, - "overloaded": false, - "page": "/build", - "personas": 3, - "required_fields": 4, - "understanding": { - "asked": 3, - "next": 3, - "where": 3, - "which": 3 - } - } - ], - "steps": 2 - }, - "custody": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 27.28985507246377, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 3, - "required_fields": 4, - "understanding": { - "asked": 3, - "next": 3, - "where": 3, - "which": 3 - } - } - ], - "steps": 1 - }, - "propose": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 25.48076923076923, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 1, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 26.186813186813186, - "options": 3, - "overloaded": false, - "page": "/join", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "subscribe": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 25.48076923076923, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 23.909407665505228, - "options": 3, - "overloaded": false, - "page": "/join", - "personas": 2, - "required_fields": 2, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "trial": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 25.48076923076923, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 0, - "which": 0 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 29.46376811594203, - "options": 2, - "overloaded": true, - "page": "/build", - "personas": 2, - "required_fields": 6, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/score.log b/vendor/trainer/runs/uhhm-2026-09-23/r1/score.log deleted file mode 100644 index 4e473b7..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/score.log +++ /dev/null @@ -1,39 +0,0 @@ -== answer full -== answer skim -== score full -MISROUTE: architecture-firm@/: picked "Get an answer from the people who keep the network" (0.95), the need is met by ["Get software built around your problem"] -MISROUTE: climbing-gym-founder@/build: picked "A first draft of your own site" (0.95), the need is met by ["A considered reply to your brief"] -MISROUTE: exhibition-visitor@/: picked "Get an answer from the people who keep the network" (0.85), the need is met by ["Work with us, or just stay in touch"] -MISROUTE: tech-journalist@/: picked "Get an answer from the people who keep the network" (0.95), the need is met by ["Work with us, or just stay in touch"] -MISROUTE: interaction-designer@/: picked "Get an answer from the people who keep the network" (0.95), the need is met by ["Work with us, or just stay in touch"] -MISROUTE: interaction-designer@/join: picked "Get a page fixed the way you'd write it" (0.95), the need is met by ["Work with people who read the whole thing"] -MISROUTE: dance-school@/: picked "Get an answer from the people who keep the network" (0.95), the need is met by ["Get software built around your problem"] -MISROUTE: app-builder@/: picked "Get software built around your problem" (0.95), the need is met by ["Get an answer from the people who keep the network"] -MISROUTE: wording-fix@/: picked "Get an answer from the people who keep the network" (0.95), the need is met by ["Work with us, or just stay in touch"] -MISROUTE: wording-fix@/join: picked "Work with people who read the whole thing" (0.95), the need is met by ["Get a page fixed the way you'd write it"] -MISROUTE: rewrite@/: picked "Get an answer from the people who keep the network" (0.95), the need is met by ["Work with us, or just stay in touch"] -wording: 16/27 routed right (59%) -== score skim -MISROUTE: architecture-firm@/: picked "Get an answer from the people who keep the network" (0.95), the need is met by ["Get software built around your problem"] -MISROUTE: rust-developer@/join: picked "Get a page fixed the way you'd write it" (0.95), the need is met by ["Work with people who read the whole thing"] -MISROUTE: interaction-designer@/join: picked "Get a page fixed the way you'd write it" (0.95), the need is met by ["Work with people who read the whole thing"] -MISROUTE: student-intern@/: picked "Get an answer from the people who keep the network" (0.95), the need is met by ["Work with us, or just stay in touch"] -MISROUTE: student-intern@/join: picked "Hear from us only when there's something to say" (0.95), the need is met by ["Work with people who read the whole thing"] -MISROUTE: dance-school@/build: picked "A considered reply to your brief" (0.95), the need is met by ["A first draft of your own site"] -MISROUTE: app-builder@/: picked "Get software built around your problem" (0.95), the need is met by ["Get an answer from the people who keep the network"] -MISROUTE: wording-fix@/join: picked "Hear from us only when there's something to say" (0.95), the need is met by ["Get a page fixed the way you'd write it"] -wording: 19/27 routed right (70%) -== rate -need LIX which where asked next gutted twin says page load -commission @/ 25 very easy 2/3 2/3 3/3 - 0/0/0/- ok 3 options, 0 required -commission @/build 27 very easy 3/3 3/3 3/3 3/3 0/0/0/0 ok 2 options, 4 required -trial @/ 25 very easy 0/2 0/2 2/2 - 0/0/0/- ok 3 options, 0 required -trial @/build 29 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 6 required - SPLIT -collaborate @/ 25 very easy 2/3 3/3 3/3 - 0/1/0/- ok 3 options, 0 required -collaborate @/join 22 very easy 3/3 3/3 3/3 3/3 0/0/0/0 ok 3 options, 3 required -subscribe @/ 25 very easy 2/2 2/2 2/2 - 0/0/0/- ok 3 options, 0 required -subscribe @/join 24 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 3 options, 2 required -propose @/ 25 very easy 1/2 1/2 2/2 - 0/0/0/- ok 3 options, 0 required -propose @/join 26 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 3 options, 3 required -custody 27 very easy 3/3 3/3 3/3 3/3 0/0/0/0 ok 3 options, 4 required -== done diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/aggregates.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/aggregates.yaml deleted file mode 100644 index cccafd2..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/aggregates.yaml +++ /dev/null @@ -1,113 +0,0 @@ -aggregates: -- bucket: applicants - initial: open - states: - active: - event: onboarded - declined: - event: declined - departed: - event: departed - invited: - event: invited - open: - event: applied - transitions: - active: - - departed - - declined - invited: - - active - - declined - open: - - invited - - declined -- bucket: custody_requests - initial: open - states: - declined: - event: declined - in_dialogue: - event: in_dialogue - open: - event: received - resolved: - event: resolved - transitions: - in_dialogue: - - resolved - - declined - open: - - in_dialogue - - declined -- bucket: development_proposals - initial: open - states: - approved: - event: approved - open: - event: proposed - rejected: - event: rejected - transitions: - open: - - approved - - rejected -- bucket: organizations - initial: prospect - states: - client: - event: became_client - past_client: - event: churned - prospect: - event: identified - transitions: - client: - - past_client - prospect: - - client - - past_client -- bucket: projects - initial: open - states: - accepted: - event: accepted - declined: - event: declined - open: - event: submitted - transitions: - open: - - accepted - - declined -- bucket: subscribers - initial: open - states: - open: - event: subscribed - unsubscribed: - event: unsubscribed - transitions: - open: - - unsubscribed -- attended_by: | - approved -> previewed: the n8n workflow that builds the draft site from an approved intake (docker, rauthy, portal content) and sends the preview link. Until it exists, owners run portal-trainer by hand and press the button. - bucket: trials - initial: open - states: - approved: - event: approved - declined: - event: declined - open: - event: received - previewed: - event: previewed - transitions: - approved: - - previewed - - declined - open: - - approved - - declined diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/01-questions_build_index.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/01-questions_build_index.yaml.md deleted file mode 100644 index 8517c6a..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/01-questions_build_index.yaml.md +++ /dev/null @@ -1,174 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/build/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "commission": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "name": "", - "org_contact": "", - "organization": "", - "project": "" - }, - "icon": "", - "labels": { - "email": "", - "name": "", - "org_contact": "", - "organization": "", - "project": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "trial": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "business": "", - "email": "", - "what_slows_us_down": "", - "what_we_do": "", - "what_we_keep_track_of": "", - "who_comes_to_us": "", - "who_is_involved": "" - }, - "icon": "", - "labels": { - "business": "", - "email": "", - "what_slows_us_down": "", - "what_we_do": "", - "what_we_keep_track_of": "", - "who_comes_to_us": "", - "who_is_involved": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Have a problem software should solve, or want to see your own way of working as a site before you pay anyone?", - "needs": { - "commission": { - "button": "Send the brief", - "description": "You know the problem and want it solved. Write it up and send it to people who will read the whole thing.", - "encouragement": "Someone here reads every brief in full before writing back.", - "form_description": "The more of the problem you put in, the better the reply.", - "form_title": "Tell us the problem", - "heading": "A considered reply to your brief", - "hints": { - "email": "sara@company.com", - "name": "Sara Nilsen", - "org_contact": "Sara Nilsen, ops manager", - "organization": "Nilsen Transport AS", - "project": "Our drivers log hours on paper and it takes a day to get them into payroll." - }, - "icon": "briefcase", - "labels": { - "email": "Your email", - "name": "Your name", - "org_contact": "Who we should talk to", - "organization": "Your organization", - "project": "The problem you want solved" - }, - "road_description": "We read your brief and either take it on or tell you honestly if it's not a fit.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads it; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "trial": { - "button": "Start the draft", - "description": "See your own requests, approvals and handovers as a working site, before you commit to anything.", - "encouragement": "A person looks at what you send before anything gets built.", - "form_description": "Answer in your own words - there's no wrong way to describe your business.", - "form_title": "Describe your business", - "heading": "A first draft of your own site", - "hints": { - "business": "Nilsen Transport AS", - "email": "sara@company.com", - "what_slows_us_down": "Approvals sit in someone's inbox for days before anyone acts on them.", - "what_we_do": "We move freight for local businesses and handle the paperwork for them.", - "what_we_keep_track_of": "Bookings, driver hours, and which loads are still waiting on a signature.", - "who_comes_to_us": "Local businesses that need something moved on short notice.", - "who_is_involved": "Drivers, dispatchers, and the customers waiting on their delivery." - }, - "icon": "layers", - "labels": { - "business": "Your business", - "email": "Your email", - "what_slows_us_down": "What slows you down", - "what_we_do": "What you do", - "what_we_keep_track_of": "What you keep track of", - "who_comes_to_us": "Who comes to you", - "who_is_involved": "Who's involved" - }, - "road_description": "We look at what you sent and, if it's a fit, build a draft from your own roles and words for you to see before anything moves further.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner looks at what you send; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "Do you already know the problem, or do you want to see your own business as a site first?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/02-questions_custodians_index.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/02-questions_custodians_index.yaml.md deleted file mode 100644 index c9aeeb9..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/02-questions_custodians_index.yaml.md +++ /dev/null @@ -1,108 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/custodians/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. Under `invites`, each entry is a form that invites a person into that group - they get an account and a one-time link - and `invited` is the list of invites sent. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "custody_requests": { - "description": "", - "heading": "", - "moves": { - "in_dialogue->declined": "declined>", - "in_dialogue->resolved": "resolved>", - "open->declined": "declined>", - "open->in_dialogue": "in_dialogue>" - } - } - }, - "confirm": "", - "description": "", - "invited": { - "description": "", - "done": "", - "heading": "" - }, - "invites": { - "custodians": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "email": "", - "name": "" - } - } - }, - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "custody_requests": { - "description": "Cases from people who use, build on, or answer for something the redoal network touches, and need a custodian's word on it.", - "heading": "Custody cases waiting on you", - "moves": { - "in_dialogue->declined": "Close, no action", - "in_dialogue->resolved": "Mark resolved", - "open->declined": "Decline case", - "open->in_dialogue": "Open dialogue" - } - } - }, - "confirm": "Send invite", - "description": "The desk for custodians: open custody cases, and the people invited to answer them.", - "invited": { - "description": "Custodians invited but not yet signed in.", - "done": "Signed in", - "heading": "Invited custodians" - }, - "invites": { - "custodians": { - "button": "Invite custodian", - "description": "Give someone an account and a one-time link to join as a custodian.", - "form_title": "Invite a custodian", - "heading": "Bring in another custodian", - "labels": { - "email": "Email", - "name": "Name" - } - } - }, - "links": {}, - "question": "What does the network owe the people it affects, right now?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/03-questions_decide_subscribe.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/03-questions_decide_subscribe.yaml.md deleted file mode 100644 index 729c7c0..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/03-questions_decide_subscribe.yaml.md +++ /dev/null @@ -1,60 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/decide/subscribe.yaml -It is a page the person who sent a form reaches later, through a private link, to make a decision that is theirs: under `moves`, each entry is one thing they can decide. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "moves": { - "unsubscribed": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "You're on our list. Change your mind whenever you like.", - "moves": { - "unsubscribed": { - "button": "Unsubscribe", - "description": "You'll stop hearing from us. Nothing else changes.", - "heading": "Stop getting notes from us" - } - }, - "question": "Do you want to keep hearing from us?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/04-questions_index.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/04-questions_index.yaml.md deleted file mode 100644 index e11b912..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/04-questions_index.yaml.md +++ /dev/null @@ -1,136 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/index.yaml -It is the front door: the first page any visitor sees. `question` is the page's one question. Under `doors`, each entry is one alternative that leads to a page of its own for one kind of visitor: its heading must let that visitor recognise themselves from the heading alone. Under `needs`, each entry is one alternative with a form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "doors": { - "build": { - "button": "", - "description": "", - "for_whom": "", - "heading": "", - "icon": "" - }, - "join": { - "button": "", - "description": "", - "for_whom": "", - "heading": "", - "icon": "" - } - }, - "needs": { - "custody": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "about": "", - "email": "", - "name": "", - "what": "" - }, - "icon": "", - "labels": { - "about": "", - "email": "", - "name": "", - "what": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "UHHM builds software for organisations that can say what problem they have, and keeps the redoal network underneath.", - "doors": { - "build": { - "button": "Start here", - "description": "Send us the problem, or try your own workflow as a working site before you pay for anything.", - "for_whom": "For an organisation with a problem, or a business sizing us up", - "heading": "Get software built around your problem", - "icon": "hammer" - }, - "join": { - "button": "Start here", - "description": "Build with us, hear from us now and then, or tell us what should change on this page.", - "for_whom": "For anyone who wants in, on their own terms", - "heading": "Work with us, or just stay in touch", - "icon": "handshake" - } - }, - "needs": { - "custody": { - "button": "Send to a custodian", - "description": "For anyone who runs on, builds on, or is affected by the redoal network and needs to reach the people who keep its first node.", - "encouragement": "A custodian reads every message that comes in here.", - "form_description": "Tell us what the network is doing, or not doing, and how we can reach you.", - "form_title": "Reach a custodian", - "heading": "Get an answer from the people who keep the network", - "hints": { - "about": "We run our order system on a relay node and it's been dropping messages since Tuesday", - "email": "you@yourcompany.com", - "name": "Your name", - "what": "A relay node is misbehaving" - }, - "icon": "shield", - "labels": { - "about": "What's going on", - "email": "Email", - "name": "Name", - "what": "In short" - }, - "road_description": "We open it and start a dialogue with you. Once we understand what the network is keeping that it shouldn't, we work it through to resolved, or tell you plainly if we can't.", - "road_icon": "route", - "road_title": "What happens next", - "who_title": "Who reads this", - "who_icon": "user-check", - "who_description": "A custodian reads it directly; if it's urgent, write to bl@uhhm.no in the meantime." - } - }, - "question": "What brings you here?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/05-questions_join_index.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/05-questions_join_index.yaml.md deleted file mode 100644 index 493c581..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/05-questions_join_index.yaml.md +++ /dev/null @@ -1,208 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/join/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "collaborate": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "interest": "", - "name": "", - "note": "" - }, - "icon": "", - "labels": { - "email": "", - "interest": "", - "name": "", - "note": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "propose": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "page": "", - "proposed_yaml": "", - "rationale": "", - "submitted_by": "" - }, - "icon": "", - "labels": { - "email": "", - "page": "", - "proposed_yaml": "", - "rationale": "", - "submitted_by": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "subscribe": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "name": "" - }, - "icon": "", - "labels": { - "email": "", - "name": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Three ways to be part of what UHHM builds: work with us, hear from us, or fix something on this site.", - "needs": { - "collaborate": { - "button": "Get in touch", - "description": "You want to build software with people who read the whole brief, not just the summary.", - "encouragement": "A person reads this, not a form filter — worth the ten minutes.", - "form_description": "Tell us who you are and what kind of work you're after.", - "form_title": "Say hello", - "heading": "Work with people who read the whole thing", - "hints": { - "email": "you@example.com", - "interest": "Backend work, or something design-heavy", - "name": "Your name", - "note": "A bit about what you'd want to work on, or a link to your work" - }, - "icon": "handshake", - "labels": { - "email": "Email", - "interest": "What kind of work", - "name": "Name", - "note": "Tell us more" - }, - "road_description": "We read what you send and get back to you. If there's a fit, we invite you in and you start working with us — and if things ever change, that's fine too.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads this directly — for anything urgent, write to bl@uhhm.no.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "propose": { - "button": "Send change", - "description": "You've spotted something on this site that should read differently, and you know roughly how.", - "encouragement": "Even a rough version helps — we can tidy the wording ourselves.", - "form_description": "Point us to the page and show us the change.", - "form_title": "Propose a change", - "heading": "Get a page fixed the way you'd write it", - "hints": { - "email": "you@example.com", - "page": "questions/join/index.yaml", - "proposed_yaml": "heading: \"A clearer way to say this\"", - "rationale": "The current heading doesn't say what you actually get", - "submitted_by": "Your name" - }, - "icon": "pencil", - "labels": { - "email": "Email", - "page": "Which page", - "proposed_yaml": "Your proposed text", - "rationale": "Why this is better", - "submitted_by": "Your name" - }, - "road_description": "Someone here reads your proposal and either makes the change or explains why not. Either way, you'll hear back.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner reads every proposal before anything changes — reach us at bl@uhhm.no if it's time-sensitive.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "subscribe": { - "button": "Sign up", - "description": "You'd rather hear from us now and then than check back on your own.", - "encouragement": "One click unsubscribes you later, no questions asked.", - "form_description": "Just your email, or your name too if you'd like.", - "form_title": "Stay in the loop", - "heading": "Hear from us only when there's something to say", - "hints": { - "email": "you@example.com", - "name": "Your name" - }, - "icon": "mail", - "labels": { - "email": "Email", - "name": "Name" - }, - "road_description": "You're on the list. We write when there's something worth saying, and you can leave the list whenever you like.", - "road_icon": "bell", - "road_title": "What happens next", - "who_description": "An owner sends these notes directly — write to bl@uhhm.no if you'd rather ask something first.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "How do you want to be part of this?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/06-questions_owners_index.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/06-questions_owners_index.yaml.md deleted file mode 100644 index 56e3fe7..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/06-questions_owners_index.yaml.md +++ /dev/null @@ -1,236 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/owners/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. Under `invites`, each entry is a form that invites a person into that group - they get an account and a one-time link - and `invited` is the list of invites sent. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "applicants": { - "description": "", - "heading": "", - "moves": { - "active->declined": "declined>", - "active->departed": "departed>", - "invited->active": "active>", - "invited->declined": "declined>", - "open->declined": "declined>", - "open->invited": "invited>" - } - }, - "custody_requests": { - "description": "", - "heading": "", - "moves": {} - }, - "development_proposals": { - "description": "", - "heading": "", - "moves": { - "open->approved": "approved>", - "open->rejected": "rejected>" - } - }, - "organizations": { - "description": "", - "heading": "", - "moves": { - "client->past_client": "past_client>", - "prospect->client": "client>", - "prospect->past_client": "past_client>" - } - }, - "projects": { - "description": "", - "heading": "", - "moves": { - "open->accepted": "accepted>", - "open->declined": "declined>" - } - }, - "subscribers": { - "description": "", - "heading": "", - "moves": { - "open->unsubscribed": "unsubscribed>" - } - }, - "trials": { - "description": "", - "heading": "", - "moves": { - "approved->declined": "declined>", - "approved->previewed": "previewed>", - "open->approved": "approved>", - "open->declined": "declined>" - } - } - }, - "confirm": "", - "description": "", - "invited": { - "description": "", - "done": "", - "heading": "" - }, - "invites": { - "custodians": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "email": "", - "name": "" - } - }, - "owners": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "email": "", - "name": "" - } - } - }, - "links": { - "prospect": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "buckets": { - "applicants": { - "description": "People who've asked to build with us, waiting on a decision or already working alongside us.", - "heading": "People who want to build with us", - "moves": { - "active->declined": "End collaboration", - "active->departed": "Mark departed", - "invited->active": "Confirm active", - "invited->declined": "Withdraw invite", - "open->declined": "Decline applicant", - "open->invited": "Send invite" - } - }, - "custody_requests": { - "description": "Questions and issues raised with the people who keep the first node - custodians handle these, but you can see where each one stands.", - "heading": "What's been raised with custodians", - "moves": {} - }, - "development_proposals": { - "description": "Changes visitors have proposed for pages on this site, waiting on a yes or no.", - "heading": "Proposed changes to the site", - "moves": { - "open->approved": "Approve change", - "open->rejected": "Reject change" - } - }, - "organizations": { - "description": "Organizations you've met, tracked from first contact through to client and beyond.", - "heading": "Organizations you're tracking", - "moves": { - "client->past_client": "Mark past client", - "prospect->client": "Mark as client", - "prospect->past_client": "Mark not pursued" - } - }, - "projects": { - "description": "Briefs sent in by organizations with a problem they want solved.", - "heading": "Briefs waiting on a reply", - "moves": { - "open->accepted": "Accept brief", - "open->declined": "Decline brief" - } - }, - "subscribers": { - "description": "People who want to hear from you now and then.", - "heading": "Who's hearing from you", - "moves": { - "open->unsubscribed": "Unsubscribe them" - } - }, - "trials": { - "description": "Businesses who want to see their own workflow as a working site before committing to anything.", - "heading": "Trial sites in progress", - "moves": { - "approved->declined": "Decline trial", - "approved->previewed": "Mark previewed", - "open->approved": "Approve trial", - "open->declined": "Decline trial" - } - } - }, - "confirm": "Confirm", - "description": "Everything waiting on you: briefs, trials, applicants, subscribers, and proposals, all in one place.", - "invited": { - "description": "People you've invited in, and whether they've taken it up yet.", - "done": "Taken up", - "heading": "Invites you've sent" - }, - "invites": { - "custodians": { - "button": "Send invite", - "description": "Bring someone in to help keep the first node and answer for the network.", - "form_title": "Invite a custodian", - "heading": "Bring in a custodian", - "labels": { - "email": "Their email", - "name": "Their name" - } - }, - "owners": { - "button": "Send invite", - "description": "Bring someone in to work this desk alongside you.", - "form_title": "Invite an owner", - "heading": "Bring in another owner", - "labels": { - "email": "Their email", - "name": "Their name" - } - } - }, - "links": { - "prospect": { - "button": "Add prospect", - "description": "Write down an organization worth following up, and track it from first contact onward.", - "heading": "Track a new organization" - } - }, - "question": "What's waiting on me today?" -} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/07-questions_owners_prospect-sent.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/07-questions_owners_prospect-sent.yaml.md deleted file mode 100644 index 2bc4507..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/07-questions_owners_prospect-sent.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/owners/prospect-sent.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to site", - "description": "Thanks — we've got your prospect written down, and it now moves through the desk with everything else we're tracking.", - "next_description": "An owner walks it from prospect to client, and on to past client, as the relationship moves.", - "next_heading": "It's on the desk now", - "question": "What happens to this now?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/08-questions_owners_prospect.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/08-questions_owners_prospect.yaml.md deleted file mode 100644 index 290d1f2..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/08-questions_owners_prospect.yaml.md +++ /dev/null @@ -1,92 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/owners/prospect.yaml -It is a page only one role inside the business can open, holding one form. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "contact": "", - "name": "", - "note": "" - }, - "icon": "", - "labels": { - "contact": "", - "name": "", - "note": "" - }, - "page_description": "", - "question": "", - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "button": "Add to prospects", - "description": "One line per organization worth watching, moved through the stages as things develop.", - "encouragement": "Takes a minute, and it's yours to update later.", - "form_description": "Name the organization and where things stand.", - "form_title": "New prospect", - "heading": "Keep an organization on your radar", - "hints": { - "contact": "met at the bakers' conference, [email protected]", - "name": "Nordvik Bakery", - "note": "wants a booking flow, follow up after harvest season" - }, - "icon": "briefcase", - "labels": { - "contact": "Contact", - "name": "Organization", - "note": "Note" - }, - "page_description": "Write down an organization worth following up, and move it through client and past client as things develop.", - "question": "Is there an organization I should be keeping track of?", - "road_description": "It sits as a prospect until something moves - then you mark it client, and later past client if the work ends.", - "road_icon": "route", - "road_title": "Moves as you update it", - "who_description": "Only you see this, so keep it wherever you check next.", - "who_icon": "user", - "who_title": "Just for you" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/09-questions_received_collaborate.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/09-questions_received_collaborate.yaml.md deleted file mode 100644 index 6f83c69..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/09-questions_received_collaborate.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/collaborate.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to site", - "description": "Your note is in. An owner reads every one and will get back to you if there's a fit worth exploring.", - "next_description": "If it looks like a fit, we'll reach out to talk about where you could help.", - "next_heading": "We'll write if there's a fit", - "question": "What happens to what I just sent?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/10-questions_received_commission.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/10-questions_received_commission.yaml.md deleted file mode 100644 index 225f61e..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/10-questions_received_commission.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/commission.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to home", - "description": "Your brief is in. An owner reads every commission end to end before replying.", - "next_description": "Expect a reply within a few working days, either way, straight to your inbox.", - "next_heading": "A real reply from someone who read it", - "question": "What happens now that we've sent our brief?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/11-questions_received_custody.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/11-questions_received_custody.yaml.md deleted file mode 100644 index ee326dc..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/11-questions_received_custody.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/custody.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to the site", - "description": "A custodian reads every message about the redoal network and what it keeps.", - "next_description": "Expect a reply once your report has been looked at and the network checked.", - "next_heading": "A custodian is on it", - "question": "Who looks after what the network keeps?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/12-questions_received_propose.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/12-questions_received_propose.yaml.md deleted file mode 100644 index 1ddaf45..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/12-questions_received_propose.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/propose.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back home", - "description": "Your proposal is in. Someone here will read it and decide whether it fits before anything changes on the page.", - "next_description": "We'll write back once it's been read — approved and made live, or turned down with a reason.", - "next_heading": "A read, then a decision", - "question": "What happens to my proposal now?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/13-questions_received_subscribe.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/13-questions_received_subscribe.yaml.md deleted file mode 100644 index 2760f6f..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/13-questions_received_subscribe.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/subscribe.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to site", - "description": "You'll hear from us when there's something worth saying, not on a schedule.", - "next_description": "You're on the list. Every note has an unsubscribe link if it stops being useful.", - "next_heading": "You're on the list", - "question": "What happens now that I've subscribed?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/14-questions_received_trial.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/14-questions_received_trial.yaml.md deleted file mode 100644 index 062e729..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/llm/14-questions_received_trial.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/trial.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to site", - "description": "We read every trial request ourselves before anything gets built.", - "next_description": "If it looks like a fit, we'll draft your site from your own words and send it back for your say before anything goes live.", - "next_heading": "A first draft, built from your own words", - "question": "What happens now that you've sent this?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/needs.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/needs.yaml deleted file mode 100644 index bfc3639..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/needs.yaml +++ /dev/null @@ -1,173 +0,0 @@ -needs: -- done_when: - - accepted - - declined - enters: / - handled_by: owners - id: commission - lands_in: projects - max_fields: 4 - max_steps: 2 - stages: - - open - - accepted - - declined - success: - - accepted - via: Get software built around your problem - wants: a considered reply to a brief, from people who read the whole thing - who: an organization with a problem it wants software to solve -- done_when: - - previewed - - declined - enters: / - handled_by: owners - id: trial - lands_in: trials - max_fields: 6 - max_steps: 2 - stages: - - open - - approved - - previewed - - declined - success: - - previewed - via: Get software built around your problem - wants: a first draft of a site for their own roles, built from their own words and approved by a person first - who: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything -- done_when: - - departed - - declined - enters: / - handled_by: owners - id: collaborate - lands_in: applicants - max_fields: 3 - max_steps: 2 - stages: - - open - - invited - - active - - departed - - declined - success: - - departed - via: Work with us, or just stay in touch - wants: to be read as a person, and invited in if there is a fit - who: someone who wants to work with us on what we build -- done_when: - - unsubscribed - enters: / - handled_by: owners - id: subscribe - lands_in: subscribers - max_fields: 2 - max_steps: 2 - stages: - - open - - unsubscribed - success: [] - via: Work with us, or just stay in touch - wants: a note now and then, and an easy way out - who: someone who wants to hear from us when there is something to say -- done_when: - - approved - - rejected - enters: / - handled_by: owners - id: propose - lands_in: development_proposals - max_fields: 3 - max_steps: 2 - stages: - - open - - approved - - rejected - success: - - approved - via: Work with us, or just stay in touch - wants: the change read by a person and, if approved, made - who: a visitor who sees how a page on this site should change -- done_when: - - resolved - - declined - enters: / - handled_by: custodians - id: custody - lands_in: custody_requests - max_fields: 4 - max_steps: 1 - stages: - - open - - in_dialogue - - resolved - - declined - success: - - resolved - via: Get an answer from the people who keep the network - wants: an answer from a custodian, and action where the network keeps something it should not - who: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node -- done_when: - - past_client - enters: /owners/prospect - enters_as: owners - handled_by: owners - id: prospect - lands_in: organizations - max_fields: 2 - max_steps: 1 - stages: - - prospect - - client - - past_client - success: [] - via: Keep an organization on your radar - wants: it written down and walked through its states from the desk - who: an owner who has met an organization worth following up -personas: -- id: architecture-firm - need: commission - text: We run a small architecture firm and our project files are scattered across three cloud drives. We want to pay someone to set up proper storage and backups we control ourselves. -- id: climbing-gym-founder - need: commission - text: I have an idea for a booking app for climbing gyms and I'm looking for a team that can build the first version with me. -- id: municipality-buyer - need: commission - text: Our municipality needs an internal tool for tracking building permits. We are looking for a vendor who can scope it and deliver it. -- id: exhibition-visitor - need: subscribe - text: I saw your drawing network at an exhibition and liked it. I don't want to get involved, I'd just like to know when there is news. -- id: tech-journalist - need: subscribe - text: I write about Nordic technology. Keep me posted on what you release so I can cover it. -- id: rust-developer - need: collaborate - text: I'm a Rust developer between jobs and I like that you build in the open. I would love to contribute, and maybe join you. -- id: interaction-designer - need: collaborate - text: I'm an interaction designer. I want to work with you on the drawing interface. -- id: student-intern - need: collaborate - text: I'm a computer science student looking for a summer internship doing infrastructure work. -- id: plumber-owner - need: trial - text: I run a plumbing company with four vans. Jobs come in by phone and text and some get lost. I'd like to see how this would look for us before I spend any money. -- id: dance-school - need: trial - text: We are a dance school. Enrolments, cancellations and invoices all go through one email inbox that only I understand. Can you show me a version made for us? -- id: node-runner - need: custody - text: I run a small server in Berlin and want to host a redoal node that peers with yours. Who do I talk to? -- id: recorded-name - need: custody - text: Someone left a recording on redoal that says my full name and where I live. I want it gone, and I want to know who is responsible for that network. -- id: app-builder - need: custody - text: I'm building a music app and would like to use redoal's gesture addresses in it. Is that possible, and who decides? -- id: wording-fix - need: propose - text: The subscribe page should say how often you actually write. I'd like to suggest that exact change to the page. -- id: rewrite - need: propose - text: One page on this site reads wrong to me and I know exactly how I'd rewrite it. Where do I send the new text? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/build/index.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/build/index.yaml deleted file mode 100644 index ddedf51..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/build/index.yaml +++ /dev/null @@ -1,94 +0,0 @@ -alternatives: -- action: /received/commission - consequence: - - Send the brief - description: You know the problem and want it solved. Write it up and send it to people who will read the whole thing. - encouragements: - - Someone here reads every brief in full before writing back. - features: - - description: We read your brief and either take it on or tell you honestly if it's not a fit. - icon: lucide:route - name: What happens next - - description: One of the owners reads it; write to bl@uhhm.no if you'd rather reach us directly. - icon: lucide:user-check - name: Who reads this - - description: The more of the problem you put in, the better the reply. - icon: lucide:briefcase - name: Tell us the problem - requirements: - - label: Your name - name: name - placeholder: Sara Nilsen - type: text - - label: Your email - name: email - placeholder: sara@company.com - type: email - - label: The problem you want solved - name: project - placeholder: Our drivers log hours on paper and it takes a day to get them into payroll. - type: textarea - - label: Your organization - name: organization - placeholder: Nilsen Transport AS - type: text - - label: Who we should talk to - name: org_contact - optional: true - placeholder: Sara Nilsen, ops manager - type: text - name: A considered reply to your brief - record_as: projects -- action: /received/trial - consequence: - - Start the draft - description: See your own requests, approvals and handovers as a working site, before you commit to anything. - encouragements: - - A person looks at what you send before anything gets built. - features: - - description: We look at what you sent and, if it's a fit, build a draft from your own roles and words for you to see before anything moves further. - icon: lucide:route - name: What happens next - - description: An owner looks at what you send; write to bl@uhhm.no if you'd rather reach us directly. - icon: lucide:user-check - name: Who reads this - - description: Answer in your own words - there's no wrong way to describe your business. - icon: lucide:layers - name: Describe your business - requirements: - - label: Your business - name: business - placeholder: Nilsen Transport AS - type: text - - label: Your email - name: email - placeholder: sara@company.com - type: email - - label: What you do - name: what_we_do - placeholder: We move freight for local businesses and handle the paperwork for them. - type: textarea - - label: Who comes to you - name: who_comes_to_us - placeholder: Local businesses that need something moved on short notice. - type: textarea - - label: What you keep track of - name: what_we_keep_track_of - placeholder: Bookings, driver hours, and which loads are still waiting on a signature. - type: textarea - - label: Who's involved - name: who_is_involved - placeholder: Drivers, dispatchers, and the customers waiting on their delivery. - type: textarea - - label: What slows you down - name: what_slows_us_down - optional: true - placeholder: Approvals sit in someone's inbox for days before anyone acts on them. - type: textarea - name: A first draft of your own site - record_as: trials -description: Have a problem software should solve, or want to see your own way of working as a site before you pay anyone? -name: Do you already know the problem, or do you want to see your own business as a site first? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/custodians/_section.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/custodians/_section.yaml deleted file mode 100644 index de40ef5..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/custodians/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: custodians diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/custodians/index.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/custodians/index.yaml deleted file mode 100644 index cd65870..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/custodians/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -alternatives: -- action: /custodians - consequence: - - Send invite - description: Cases from people who use, build on, or answer for something the redoal network touches, and need a custodian's word on it. - features: - - description: '' - name: '' - resource: - requires_group: custodians - source: - bucket: custody_requests - kind: kv - transitions: - - from: in_dialogue - label: Mark resolved - to: resolved - - from: in_dialogue - label: Close, no action - to: declined - - from: open - label: Open dialogue - to: in_dialogue - - from: open - label: Decline case - to: declined - name: Custody cases waiting on you -- action: /custodians - consequence: - - Invite custodian - description: Give someone an account and a one-time link to join as a custodian. - features: - - description: '' - name: Invite a custodian - requirements: - - label: Name - name: name - - label: Email - name: email - type: email - invite: - group: custodians - name: Bring in another custodian -- action: /custodians - consequence: - - Send invite - description: Custodians invited but not yet signed in. - features: - - description: '' - name: '' - resource: - requires_group: custodians - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Signed in - to: done - name: Invited custodians -description: 'The desk for custodians: open custody cases, and the people invited to answer them.' -name: What does the network owe the people it affects, right now? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/decide/subscribe.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/decide/subscribe.yaml deleted file mode 100644 index 45114ca..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/decide/subscribe.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: You'll stop hearing from us. Nothing else changes. - name: Stop getting notes from us - self_transition: - bucket: subscribers - label: Unsubscribe - to: unsubscribed -description: You're on our list. Change your mind whenever you like. -name: Do you want to keep hearing from us? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/index.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/index.yaml deleted file mode 100644 index 490af4f..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/index.yaml +++ /dev/null @@ -1,63 +0,0 @@ -alternatives: -- action: /build - consequence: - - Start here - description: Send us the problem, or try your own workflow as a working site before you pay for anything. - features: - - description: '' - icon: lucide:hammer - name: For an organisation with a problem, or a business sizing us up - name: Get software built around your problem -- action: /join - consequence: - - Start here - description: Build with us, hear from us now and then, or tell us what should change on this page. - features: - - description: '' - icon: lucide:handshake - name: For anyone who wants in, on their own terms - name: Work with us, or just stay in touch -- action: /received/custody - consequence: - - Send to a custodian - description: For anyone who runs on, builds on, or is affected by the redoal network and needs to reach the people who keep its first node. - encouragements: - - A custodian reads every message that comes in here. - features: - - description: We open it and start a dialogue with you. Once we understand what the network is keeping that it shouldn't, we work it through to resolved, or tell you plainly if we can't. - icon: lucide:route - name: What happens next - - description: A custodian reads it directly; if it's urgent, write to bl@uhhm.no in the meantime. - icon: lucide:user-check - name: Who reads this - - description: Tell us what the network is doing, or not doing, and how we can reach you. - icon: lucide:shield - name: Reach a custodian - requirements: - - label: Name - name: name - placeholder: Your name - type: text - - label: Email - name: email - placeholder: you@yourcompany.com - type: email - - label: What's going on - name: about - options: - - Running a node of my own - - Building on the network - - Something the network keeps about me - - Something else - type: select - - label: In short - name: what - placeholder: A relay node is misbehaving - type: textarea - name: Get an answer from the people who keep the network - record_as: custody_requests -description: UHHM builds software for organisations that can say what problem they have, and keeps the redoal network underneath. -name: What brings you here? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/join/index.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/join/index.yaml deleted file mode 100644 index cb40db7..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/join/index.yaml +++ /dev/null @@ -1,110 +0,0 @@ -alternatives: -- action: /received/collaborate - consequence: - - Get in touch - description: You want to build software with people who read the whole brief, not just the summary. - encouragements: - - A person reads this, not a form filter — worth the ten minutes. - features: - - description: We read what you send and get back to you. If there's a fit, we invite you in and you start working with us — and if things ever change, that's fine too. - icon: lucide:route - name: What happens next - - description: One of the owners reads this directly — for anything urgent, write to bl@uhhm.no. - icon: lucide:user-check - name: Who reads this - - description: Tell us who you are and what kind of work you're after. - icon: lucide:handshake - name: Say hello - requirements: - - label: Name - name: name - placeholder: Your name - type: text - - label: Email - name: email - placeholder: you@example.com - type: email - - label: What kind of work - name: interest - placeholder: Backend work, or something design-heavy - type: textarea - - label: Tell us more - name: note - optional: true - placeholder: A bit about what you'd want to work on, or a link to your work - type: textarea - name: Work with people who read the whole thing - record_as: applicants -- action: /received/subscribe - consequence: - - Sign up - description: You'd rather hear from us now and then than check back on your own. - encouragements: - - One click unsubscribes you later, no questions asked. - features: - - description: You're on the list. We write when there's something worth saying, and you can leave the list whenever you like. - icon: lucide:bell - name: What happens next - - description: An owner sends these notes directly — write to bl@uhhm.no if you'd rather ask something first. - icon: lucide:user-check - name: Who reads this - - description: Just your email, or your name too if you'd like. - icon: lucide:mail - name: Stay in the loop - requirements: - - label: Name - name: name - placeholder: Your name - type: text - - label: Email - name: email - placeholder: you@example.com - type: email - name: Hear from us only when there's something to say - record_as: subscribers -- action: /received/propose - consequence: - - Send change - description: You've spotted something on this site that should read differently, and you know roughly how. - encouragements: - - Even a rough version helps — we can tidy the wording ourselves. - features: - - description: Someone here reads your proposal and either makes the change or explains why not. Either way, you'll hear back. - icon: lucide:route - name: What happens next - - description: An owner reads every proposal before anything changes — reach us at bl@uhhm.no if it's time-sensitive. - icon: lucide:user-check - name: Who reads this - - description: Point us to the page and show us the change. - icon: lucide:pencil - name: Propose a change - requirements: - - label: Your name - name: submitted_by - placeholder: Your name - type: text - - label: Email - name: email - optional: true - placeholder: you@example.com - type: email - - label: Which page - name: page - optional: true - placeholder: questions/join/index.yaml - type: text - - label: Why this is better - name: rationale - placeholder: The current heading doesn't say what you actually get - type: textarea - - label: Your proposed text - name: proposed_yaml - placeholder: 'heading: "A clearer way to say this"' - type: textarea - name: Get a page fixed the way you'd write it - record_as: development_proposals -description: 'Three ways to be part of what UHHM builds: work with us, hear from us, or fix something on this site.' -name: How do you want to be part of this? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/owners/_section.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/owners/_section.yaml deleted file mode 100644 index 670fca7..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/owners/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: owners diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/owners/index.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/owners/index.yaml deleted file mode 100644 index a59e0b0..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/owners/index.yaml +++ /dev/null @@ -1,212 +0,0 @@ -alternatives: -- action: /owners - consequence: - - Confirm - description: People who've asked to build with us, waiting on a decision or already working alongside us. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: applicants - kind: kv - transitions: - - from: active - label: Mark departed - to: departed - - from: active - label: End collaboration - to: declined - - from: invited - label: Confirm active - to: active - - from: invited - label: Withdraw invite - to: declined - - from: open - label: Send invite - to: invited - - from: open - label: Decline applicant - to: declined - name: People who want to build with us -- action: /owners - consequence: - - Confirm - description: Questions and issues raised with the people who keep the first node - custodians handle these, but you can see where each one stands. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: custody_requests - kind: kv - transitions: [] - name: What's been raised with custodians -- action: /owners - consequence: - - Confirm - description: Changes visitors have proposed for pages on this site, waiting on a yes or no. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: development_proposals - kind: kv - transitions: - - from: open - label: Approve change - to: approved - - from: open - label: Reject change - to: rejected - name: Proposed changes to the site -- action: /owners - consequence: - - Confirm - description: Organizations you've met, tracked from first contact through to client and beyond. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: organizations - kind: kv - transitions: - - from: client - label: Mark past client - to: past_client - - from: prospect - label: Mark as client - to: client - - from: prospect - label: Mark not pursued - to: past_client - name: Organizations you're tracking -- action: /owners - consequence: - - Confirm - description: Briefs sent in by organizations with a problem they want solved. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: projects - kind: kv - transitions: - - from: open - label: Accept brief - to: accepted - - from: open - label: Decline brief - to: declined - name: Briefs waiting on a reply -- action: /owners - consequence: - - Confirm - description: People who want to hear from you now and then. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: subscribers - kind: kv - transitions: - - from: open - label: Unsubscribe them - to: unsubscribed - name: Who's hearing from you -- action: /owners - consequence: - - Confirm - description: Businesses who want to see their own workflow as a working site before committing to anything. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: trials - kind: kv - transitions: - - from: approved - label: Mark previewed - to: previewed - - from: approved - label: Decline trial - to: declined - - from: open - label: Approve trial - to: approved - - from: open - label: Decline trial - to: declined - name: Trial sites in progress -- action: /owners/prospect - consequence: - - Add prospect - description: Write down an organization worth following up, and track it from first contact onward. - name: Track a new organization -- action: /owners - consequence: - - Send invite - description: Bring someone in to help keep the first node and answer for the network. - features: - - description: '' - name: Invite a custodian - requirements: - - label: Their name - name: name - - label: Their email - name: email - type: email - invite: - group: custodians - name: Bring in a custodian -- action: /owners - consequence: - - Send invite - description: Bring someone in to work this desk alongside you. - features: - - description: '' - name: Invite an owner - requirements: - - label: Their name - name: name - - label: Their email - name: email - type: email - invite: - group: owners - name: Bring in another owner -- action: /owners - consequence: - - Confirm - description: People you've invited in, and whether they've taken it up yet. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Taken up - to: done - name: Invites you've sent -description: 'Everything waiting on you: briefs, trials, applicants, subscribers, and proposals, all in one place.' -name: What's waiting on me today? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/owners/prospect-sent.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/owners/prospect-sent.yaml deleted file mode 100644 index d49a1d4..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/owners/prospect-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: An owner walks it from prospect to client, and on to past client, as the relationship moves. - name: It's on the desk now -- action: /owners - consequence: - - Back to site - description: '' - name: Back to site -description: Thanks — we've got your prospect written down, and it now moves through the desk with everything else we're tracking. -name: What happens to this now? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/owners/prospect.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/owners/prospect.yaml deleted file mode 100644 index 581bd11..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/owners/prospect.yaml +++ /dev/null @@ -1,39 +0,0 @@ -alternatives: -- action: /owners/prospect-sent - consequence: - - Add to prospects - description: One line per organization worth watching, moved through the stages as things develop. - encouragements: - - Takes a minute, and it's yours to update later. - features: - - description: It sits as a prospect until something moves - then you mark it client, and later past client if the work ends. - icon: lucide:route - name: Moves as you update it - - description: Only you see this, so keep it wherever you check next. - icon: lucide:user - name: Just for you - - description: Name the organization and where things stand. - icon: lucide:briefcase - name: New prospect - requirements: - - label: Organization - name: name - placeholder: Nordvik Bakery - type: text - - label: Contact - name: contact - placeholder: met at the bakers' conference, [email protected] - type: text - - label: Note - name: note - optional: true - placeholder: wants a booking flow, follow up after harvest season - type: textarea - name: Keep an organization on your radar - record_as: organizations -description: Write down an organization worth following up, and move it through client and past client as things develop. -followup: false -name: Is there an organization I should be keeping track of? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/collaborate.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/collaborate.yaml deleted file mode 100644 index c612fe8..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/collaborate.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: If it looks like a fit, we'll reach out to talk about where you could help. - name: We'll write if there's a fit -- action: / - consequence: - - Back to site - description: '' - name: Back to site -description: Your note is in. An owner reads every one and will get back to you if there's a fit worth exploring. -name: What happens to what I just sent? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/commission.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/commission.yaml deleted file mode 100644 index 59e77bc..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/commission.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Expect a reply within a few working days, either way, straight to your inbox. - name: A real reply from someone who read it -- action: / - consequence: - - Back to home - description: '' - name: Back to home -description: Your brief is in. An owner reads every commission end to end before replying. -name: What happens now that we've sent our brief? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/custody.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/custody.yaml deleted file mode 100644 index 150966f..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/custody.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Expect a reply once your report has been looked at and the network checked. - name: A custodian is on it -- action: / - consequence: - - Back to the site - description: '' - name: Back to the site -description: A custodian reads every message about the redoal network and what it keeps. -name: Who looks after what the network keeps? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/propose.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/propose.yaml deleted file mode 100644 index 1ae02a9..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/propose.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: We'll write back once it's been read — approved and made live, or turned down with a reason. - name: A read, then a decision -- action: / - consequence: - - Back home - description: '' - name: Back home -description: Your proposal is in. Someone here will read it and decide whether it fits before anything changes on the page. -name: What happens to my proposal now? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/subscribe.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/subscribe.yaml deleted file mode 100644 index c2910bb..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/subscribe.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: You're on the list. Every note has an unsubscribe link if it stops being useful. - name: You're on the list -- action: / - consequence: - - Back to site - description: '' - name: Back to site -description: You'll hear from us when there's something worth saying, not on a schedule. -name: What happens now that I've subscribed? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/trial.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/trial.yaml deleted file mode 100644 index 586bcd3..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/questions/received/trial.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: If it looks like a fit, we'll draft your site from your own words and send it back for your say before anything goes live. - name: A first draft, built from your own words -- action: / - consequence: - - Back to site - description: '' - name: Back to site -description: We read every trial request ourselves before anything gets built. -name: What happens now that you've sent this? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/site.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/site.yaml deleted file mode 100644 index aa5de2a..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/site.yaml +++ /dev/null @@ -1,2 +0,0 @@ -lang: en -title: UHHM diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/words.json b/vendor/trainer/runs/uhhm-2026-09-23/r1/site/words.json deleted file mode 100644 index 1342dbb..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/site/words.json +++ /dev/null @@ -1,426 +0,0 @@ -{ - "questions/build/index.yaml": { - "description": "Have a problem software should solve, or want to see your own way of working as a site before you pay anyone?", - "needs": { - "commission": { - "button": "Send the brief", - "description": "You know the problem and want it solved. Write it up and send it to people who will read the whole thing.", - "encouragement": "Someone here reads every brief in full before writing back.", - "form_description": "The more of the problem you put in, the better the reply.", - "form_title": "Tell us the problem", - "heading": "A considered reply to your brief", - "hints": { - "email": "sara@company.com", - "name": "Sara Nilsen", - "org_contact": "Sara Nilsen, ops manager", - "organization": "Nilsen Transport AS", - "project": "Our drivers log hours on paper and it takes a day to get them into payroll." - }, - "icon": "briefcase", - "labels": { - "email": "Your email", - "name": "Your name", - "org_contact": "Who we should talk to", - "organization": "Your organization", - "project": "The problem you want solved" - }, - "road_description": "We read your brief and either take it on or tell you honestly if it's not a fit.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads it; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "trial": { - "button": "Start the draft", - "description": "See your own requests, approvals and handovers as a working site, before you commit to anything.", - "encouragement": "A person looks at what you send before anything gets built.", - "form_description": "Answer in your own words - there's no wrong way to describe your business.", - "form_title": "Describe your business", - "heading": "A first draft of your own site", - "hints": { - "business": "Nilsen Transport AS", - "email": "sara@company.com", - "what_slows_us_down": "Approvals sit in someone's inbox for days before anyone acts on them.", - "what_we_do": "We move freight for local businesses and handle the paperwork for them.", - "what_we_keep_track_of": "Bookings, driver hours, and which loads are still waiting on a signature.", - "who_comes_to_us": "Local businesses that need something moved on short notice.", - "who_is_involved": "Drivers, dispatchers, and the customers waiting on their delivery." - }, - "icon": "layers", - "labels": { - "business": "Your business", - "email": "Your email", - "what_slows_us_down": "What slows you down", - "what_we_do": "What you do", - "what_we_keep_track_of": "What you keep track of", - "who_comes_to_us": "Who comes to you", - "who_is_involved": "Who's involved" - }, - "road_description": "We look at what you sent and, if it's a fit, build a draft from your own roles and words for you to see before anything moves further.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner looks at what you send; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "Do you already know the problem, or do you want to see your own business as a site first?" - }, - "questions/custodians/index.yaml": { - "buckets": { - "custody_requests": { - "description": "Cases from people who use, build on, or answer for something the redoal network touches, and need a custodian's word on it.", - "heading": "Custody cases waiting on you", - "moves": { - "in_dialogue->declined": "Close, no action", - "in_dialogue->resolved": "Mark resolved", - "open->declined": "Decline case", - "open->in_dialogue": "Open dialogue" - } - } - }, - "confirm": "Send invite", - "description": "The desk for custodians: open custody cases, and the people invited to answer them.", - "invited": { - "description": "Custodians invited but not yet signed in.", - "done": "Signed in", - "heading": "Invited custodians" - }, - "invites": { - "custodians": { - "button": "Invite custodian", - "description": "Give someone an account and a one-time link to join as a custodian.", - "form_title": "Invite a custodian", - "heading": "Bring in another custodian", - "labels": { - "email": "Email", - "name": "Name" - } - } - }, - "links": {}, - "question": "What does the network owe the people it affects, right now?" - }, - "questions/decide/subscribe.yaml": { - "description": "You're on our list. Change your mind whenever you like.", - "moves": { - "unsubscribed": { - "button": "Unsubscribe", - "description": "You'll stop hearing from us. Nothing else changes.", - "heading": "Stop getting notes from us" - } - }, - "question": "Do you want to keep hearing from us?" - }, - "questions/index.yaml": { - "description": "UHHM builds software for organisations that can say what problem they have, and keeps the redoal network underneath.", - "doors": { - "build": { - "button": "Start here", - "description": "Send us the problem, or try your own workflow as a working site before you pay for anything.", - "for_whom": "For an organisation with a problem, or a business sizing us up", - "heading": "Get software built around your problem", - "icon": "hammer" - }, - "join": { - "button": "Start here", - "description": "Build with us, hear from us now and then, or tell us what should change on this page.", - "for_whom": "For anyone who wants in, on their own terms", - "heading": "Work with us, or just stay in touch", - "icon": "handshake" - } - }, - "needs": { - "custody": { - "button": "Send to a custodian", - "description": "For anyone who runs on, builds on, or is affected by the redoal network and needs to reach the people who keep its first node.", - "encouragement": "A custodian reads every message that comes in here.", - "form_description": "Tell us what the network is doing, or not doing, and how we can reach you.", - "form_title": "Reach a custodian", - "heading": "Get an answer from the people who keep the network", - "hints": { - "about": "We run our order system on a relay node and it's been dropping messages since Tuesday", - "email": "you@yourcompany.com", - "name": "Your name", - "what": "A relay node is misbehaving" - }, - "icon": "shield", - "labels": { - "about": "What's going on", - "email": "Email", - "name": "Name", - "what": "In short" - }, - "road_description": "We open it and start a dialogue with you. Once we understand what the network is keeping that it shouldn't, we work it through to resolved, or tell you plainly if we can't.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A custodian reads it directly; if it's urgent, write to bl@uhhm.no in the meantime.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "What brings you here?" - }, - "questions/join/index.yaml": { - "description": "Three ways to be part of what UHHM builds: work with us, hear from us, or fix something on this site.", - "needs": { - "collaborate": { - "button": "Get in touch", - "description": "You want to build software with people who read the whole brief, not just the summary.", - "encouragement": "A person reads this, not a form filter — worth the ten minutes.", - "form_description": "Tell us who you are and what kind of work you're after.", - "form_title": "Say hello", - "heading": "Work with people who read the whole thing", - "hints": { - "email": "you@example.com", - "interest": "Backend work, or something design-heavy", - "name": "Your name", - "note": "A bit about what you'd want to work on, or a link to your work" - }, - "icon": "handshake", - "labels": { - "email": "Email", - "interest": "What kind of work", - "name": "Name", - "note": "Tell us more" - }, - "road_description": "We read what you send and get back to you. If there's a fit, we invite you in and you start working with us — and if things ever change, that's fine too.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads this directly — for anything urgent, write to bl@uhhm.no.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "propose": { - "button": "Send change", - "description": "You've spotted something on this site that should read differently, and you know roughly how.", - "encouragement": "Even a rough version helps — we can tidy the wording ourselves.", - "form_description": "Point us to the page and show us the change.", - "form_title": "Propose a change", - "heading": "Get a page fixed the way you'd write it", - "hints": { - "email": "you@example.com", - "page": "questions/join/index.yaml", - "proposed_yaml": "heading: \"A clearer way to say this\"", - "rationale": "The current heading doesn't say what you actually get", - "submitted_by": "Your name" - }, - "icon": "pencil", - "labels": { - "email": "Email", - "page": "Which page", - "proposed_yaml": "Your proposed text", - "rationale": "Why this is better", - "submitted_by": "Your name" - }, - "road_description": "Someone here reads your proposal and either makes the change or explains why not. Either way, you'll hear back.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner reads every proposal before anything changes — reach us at bl@uhhm.no if it's time-sensitive.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "subscribe": { - "button": "Sign up", - "description": "You'd rather hear from us now and then than check back on your own.", - "encouragement": "One click unsubscribes you later, no questions asked.", - "form_description": "Just your email, or your name too if you'd like.", - "form_title": "Stay in the loop", - "heading": "Hear from us only when there's something to say", - "hints": { - "email": "you@example.com", - "name": "Your name" - }, - "icon": "mail", - "labels": { - "email": "Email", - "name": "Name" - }, - "road_description": "You're on the list. We write when there's something worth saying, and you can leave the list whenever you like.", - "road_icon": "bell", - "road_title": "What happens next", - "who_description": "An owner sends these notes directly — write to bl@uhhm.no if you'd rather ask something first.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "How do you want to be part of this?" - }, - "questions/owners/index.yaml": { - "buckets": { - "applicants": { - "description": "People who've asked to build with us, waiting on a decision or already working alongside us.", - "heading": "People who want to build with us", - "moves": { - "active->declined": "End collaboration", - "active->departed": "Mark departed", - "invited->active": "Confirm active", - "invited->declined": "Withdraw invite", - "open->declined": "Decline applicant", - "open->invited": "Send invite" - } - }, - "custody_requests": { - "description": "Questions and issues raised with the people who keep the first node - custodians handle these, but you can see where each one stands.", - "heading": "What's been raised with custodians", - "moves": {} - }, - "development_proposals": { - "description": "Changes visitors have proposed for pages on this site, waiting on a yes or no.", - "heading": "Proposed changes to the site", - "moves": { - "open->approved": "Approve change", - "open->rejected": "Reject change" - } - }, - "organizations": { - "description": "Organizations you've met, tracked from first contact through to client and beyond.", - "heading": "Organizations you're tracking", - "moves": { - "client->past_client": "Mark past client", - "prospect->client": "Mark as client", - "prospect->past_client": "Mark not pursued" - } - }, - "projects": { - "description": "Briefs sent in by organizations with a problem they want solved.", - "heading": "Briefs waiting on a reply", - "moves": { - "open->accepted": "Accept brief", - "open->declined": "Decline brief" - } - }, - "subscribers": { - "description": "People who want to hear from you now and then.", - "heading": "Who's hearing from you", - "moves": { - "open->unsubscribed": "Unsubscribe them" - } - }, - "trials": { - "description": "Businesses who want to see their own workflow as a working site before committing to anything.", - "heading": "Trial sites in progress", - "moves": { - "approved->declined": "Decline trial", - "approved->previewed": "Mark previewed", - "open->approved": "Approve trial", - "open->declined": "Decline trial" - } - } - }, - "confirm": "Confirm", - "description": "Everything waiting on you: briefs, trials, applicants, subscribers, and proposals, all in one place.", - "invited": { - "description": "People you've invited in, and whether they've taken it up yet.", - "done": "Taken up", - "heading": "Invites you've sent" - }, - "invites": { - "custodians": { - "button": "Send invite", - "description": "Bring someone in to help keep the first node and answer for the network.", - "form_title": "Invite a custodian", - "heading": "Bring in a custodian", - "labels": { - "email": "Their email", - "name": "Their name" - } - }, - "owners": { - "button": "Send invite", - "description": "Bring someone in to work this desk alongside you.", - "form_title": "Invite an owner", - "heading": "Bring in another owner", - "labels": { - "email": "Their email", - "name": "Their name" - } - } - }, - "links": { - "prospect": { - "button": "Add prospect", - "description": "Write down an organization worth following up, and track it from first contact onward.", - "heading": "Track a new organization" - } - }, - "question": "What's waiting on me today?" - }, - "questions/owners/prospect-sent.yaml": { - "back": "Back to site", - "description": "Thanks — we've got your prospect written down, and it now moves through the desk with everything else we're tracking.", - "next_description": "An owner walks it from prospect to client, and on to past client, as the relationship moves.", - "next_heading": "It's on the desk now", - "question": "What happens to this now?" - }, - "questions/owners/prospect.yaml": { - "button": "Add to prospects", - "description": "One line per organization worth watching, moved through the stages as things develop.", - "encouragement": "Takes a minute, and it's yours to update later.", - "form_description": "Name the organization and where things stand.", - "form_title": "New prospect", - "heading": "Keep an organization on your radar", - "hints": { - "contact": "met at the bakers' conference, [email protected]", - "name": "Nordvik Bakery", - "note": "wants a booking flow, follow up after harvest season" - }, - "icon": "briefcase", - "labels": { - "contact": "Contact", - "name": "Organization", - "note": "Note" - }, - "page_description": "Write down an organization worth following up, and move it through client and past client as things develop.", - "question": "Is there an organization I should be keeping track of?", - "road_description": "It sits as a prospect until something moves - then you mark it client, and later past client if the work ends.", - "road_icon": "route", - "road_title": "Moves as you update it", - "who_description": "Only you see this, so keep it wherever you check next.", - "who_icon": "user", - "who_title": "Just for you" - }, - "questions/received/collaborate.yaml": { - "back": "Back to site", - "description": "Your note is in. An owner reads every one and will get back to you if there's a fit worth exploring.", - "next_description": "If it looks like a fit, we'll reach out to talk about where you could help.", - "next_heading": "We'll write if there's a fit", - "question": "What happens to what I just sent?" - }, - "questions/received/commission.yaml": { - "back": "Back to home", - "description": "Your brief is in. An owner reads every commission end to end before replying.", - "next_description": "Expect a reply within a few working days, either way, straight to your inbox.", - "next_heading": "A real reply from someone who read it", - "question": "What happens now that we've sent our brief?" - }, - "questions/received/custody.yaml": { - "back": "Back to the site", - "description": "A custodian reads every message about the redoal network and what it keeps.", - "next_description": "Expect a reply once your report has been looked at and the network checked.", - "next_heading": "A custodian is on it", - "question": "Who looks after what the network keeps?" - }, - "questions/received/propose.yaml": { - "back": "Back home", - "description": "Your proposal is in. Someone here will read it and decide whether it fits before anything changes on the page.", - "next_description": "We'll write back once it's been read — approved and made live, or turned down with a reason.", - "next_heading": "A read, then a decision", - "question": "What happens to my proposal now?" - }, - "questions/received/subscribe.yaml": { - "back": "Back to site", - "description": "You'll hear from us when there's something worth saying, not on a schedule.", - "next_description": "You're on the list. Every note has an unsubscribe link if it stops being useful.", - "next_heading": "You're on the list", - "question": "What happens now that I've subscribed?" - }, - "questions/received/trial.yaml": { - "back": "Back to site", - "description": "We read every trial request ourselves before anything gets built.", - "next_description": "If it looks like a fit, we'll draft your site from your own words and send it back for your say before anything goes live.", - "next_heading": "A first draft, built from your own words", - "question": "What happens now that you've sent this?" - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/tasks-full.jsonl b/vendor/trainer/runs/uhhm-2026-09-23/r1/tasks-full.jsonl deleted file mode 100644 index 3aa42ae..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/tasks-full.jsonl +++ /dev/null @@ -1,27 +0,0 @@ -{"id":"architecture-firm@/","persona":"architecture-firm","need":"commission","page":"/","state":{"body":"We run a small architecture firm and our project files are scattered across three cloud drives. We want to pay someone to set up proper storage and backups we control ourselves."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"For anyone who runs on, builds on, or is affected by the redoal network and needs to reach the people who keep its first node.","Get software built around your problem":"Send us the problem, or try your own workflow as a working site before you pay for anything.","Work with us, or just stay in touch":"Build with us, hear from us now and then, or tell us what should change on this page."}}},"expect":["Get software built around your problem"]} -{"id":"architecture-firm@/build","persona":"architecture-firm","need":"commission","page":"/build","state":{"body":"We run a small architecture firm and our project files are scattered across three cloud drives. We want to pay someone to set up proper storage and backups we control ourselves."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Do you already know the problem, or do you want to see your own business as a site first?\". Which alternative do they choose?","criteria":{"A considered reply to your brief":"You know the problem and want it solved. Write it up and send it to people who will read the whole thing.","A first draft of your own site":"See your own requests, approvals and handovers as a working site, before you commit to anything."}}},"expect":["A considered reply to your brief"]} -{"id":"climbing-gym-founder@/","persona":"climbing-gym-founder","need":"commission","page":"/","state":{"body":"I have an idea for a booking app for climbing gyms and I'm looking for a team that can build the first version with me."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"For anyone who runs on, builds on, or is affected by the redoal network and needs to reach the people who keep its first node.","Get software built around your problem":"Send us the problem, or try your own workflow as a working site before you pay for anything.","Work with us, or just stay in touch":"Build with us, hear from us now and then, or tell us what should change on this page."}}},"expect":["Get software built around your problem"]} -{"id":"climbing-gym-founder@/build","persona":"climbing-gym-founder","need":"commission","page":"/build","state":{"body":"I have an idea for a booking app for climbing gyms and I'm looking for a team that can build the first version with me."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Do you already know the problem, or do you want to see your own business as a site first?\". Which alternative do they choose?","criteria":{"A considered reply to your brief":"You know the problem and want it solved. Write it up and send it to people who will read the whole thing.","A first draft of your own site":"See your own requests, approvals and handovers as a working site, before you commit to anything."}}},"expect":["A considered reply to your brief"]} -{"id":"municipality-buyer@/","persona":"municipality-buyer","need":"commission","page":"/","state":{"body":"Our municipality needs an internal tool for tracking building permits. We are looking for a vendor who can scope it and deliver it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"For anyone who runs on, builds on, or is affected by the redoal network and needs to reach the people who keep its first node.","Get software built around your problem":"Send us the problem, or try your own workflow as a working site before you pay for anything.","Work with us, or just stay in touch":"Build with us, hear from us now and then, or tell us what should change on this page."}}},"expect":["Get software built around your problem"]} -{"id":"municipality-buyer@/build","persona":"municipality-buyer","need":"commission","page":"/build","state":{"body":"Our municipality needs an internal tool for tracking building permits. We are looking for a vendor who can scope it and deliver it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Do you already know the problem, or do you want to see your own business as a site first?\". Which alternative do they choose?","criteria":{"A considered reply to your brief":"You know the problem and want it solved. Write it up and send it to people who will read the whole thing.","A first draft of your own site":"See your own requests, approvals and handovers as a working site, before you commit to anything."}}},"expect":["A considered reply to your brief"]} -{"id":"exhibition-visitor@/","persona":"exhibition-visitor","need":"subscribe","page":"/","state":{"body":"I saw your drawing network at an exhibition and liked it. I don't want to get involved, I'd just like to know when there is news."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"For anyone who runs on, builds on, or is affected by the redoal network and needs to reach the people who keep its first node.","Get software built around your problem":"Send us the problem, or try your own workflow as a working site before you pay for anything.","Work with us, or just stay in touch":"Build with us, hear from us now and then, or tell us what should change on this page."}}},"expect":["Work with us, or just stay in touch"]} -{"id":"exhibition-visitor@/join","persona":"exhibition-visitor","need":"subscribe","page":"/join","state":{"body":"I saw your drawing network at an exhibition and liked it. I don't want to get involved, I'd just like to know when there is news."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"How do you want to be part of this?\". Which alternative do they choose?","criteria":{"Get a page fixed the way you'd write it":"You've spotted something on this site that should read differently, and you know roughly how.","Hear from us only when there's something to say":"You'd rather hear from us now and then than check back on your own.","Work with people who read the whole thing":"You want to build software with people who read the whole brief, not just the summary."}}},"expect":["Hear from us only when there's something to say"]} -{"id":"tech-journalist@/","persona":"tech-journalist","need":"subscribe","page":"/","state":{"body":"I write about Nordic technology. Keep me posted on what you release so I can cover it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"For anyone who runs on, builds on, or is affected by the redoal network and needs to reach the people who keep its first node.","Get software built around your problem":"Send us the problem, or try your own workflow as a working site before you pay for anything.","Work with us, or just stay in touch":"Build with us, hear from us now and then, or tell us what should change on this page."}}},"expect":["Work with us, or just stay in touch"]} -{"id":"tech-journalist@/join","persona":"tech-journalist","need":"subscribe","page":"/join","state":{"body":"I write about Nordic technology. Keep me posted on what you release so I can cover it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"How do you want to be part of this?\". Which alternative do they choose?","criteria":{"Get a page fixed the way you'd write it":"You've spotted something on this site that should read differently, and you know roughly how.","Hear from us only when there's something to say":"You'd rather hear from us now and then than check back on your own.","Work with people who read the whole thing":"You want to build software with people who read the whole brief, not just the summary."}}},"expect":["Hear from us only when there's something to say"]} -{"id":"rust-developer@/","persona":"rust-developer","need":"collaborate","page":"/","state":{"body":"I'm a Rust developer between jobs and I like that you build in the open. I would love to contribute, and maybe join you."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"For anyone who runs on, builds on, or is affected by the redoal network and needs to reach the people who keep its first node.","Get software built around your problem":"Send us the problem, or try your own workflow as a working site before you pay for anything.","Work with us, or just stay in touch":"Build with us, hear from us now and then, or tell us what should change on this page."}}},"expect":["Work with us, or just stay in touch"]} -{"id":"rust-developer@/join","persona":"rust-developer","need":"collaborate","page":"/join","state":{"body":"I'm a Rust developer between jobs and I like that you build in the open. I would love to contribute, and maybe join you."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"How do you want to be part of this?\". Which alternative do they choose?","criteria":{"Get a page fixed the way you'd write it":"You've spotted something on this site that should read differently, and you know roughly how.","Hear from us only when there's something to say":"You'd rather hear from us now and then than check back on your own.","Work with people who read the whole thing":"You want to build software with people who read the whole brief, not just the summary."}}},"expect":["Work with people who read the whole thing"]} -{"id":"interaction-designer@/","persona":"interaction-designer","need":"collaborate","page":"/","state":{"body":"I'm an interaction designer. I want to work with you on the drawing interface."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"For anyone who runs on, builds on, or is affected by the redoal network and needs to reach the people who keep its first node.","Get software built around your problem":"Send us the problem, or try your own workflow as a working site before you pay for anything.","Work with us, or just stay in touch":"Build with us, hear from us now and then, or tell us what should change on this page."}}},"expect":["Work with us, or just stay in touch"]} -{"id":"interaction-designer@/join","persona":"interaction-designer","need":"collaborate","page":"/join","state":{"body":"I'm an interaction designer. I want to work with you on the drawing interface."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"How do you want to be part of this?\". Which alternative do they choose?","criteria":{"Get a page fixed the way you'd write it":"You've spotted something on this site that should read differently, and you know roughly how.","Hear from us only when there's something to say":"You'd rather hear from us now and then than check back on your own.","Work with people who read the whole thing":"You want to build software with people who read the whole brief, not just the summary."}}},"expect":["Work with people who read the whole thing"]} -{"id":"student-intern@/","persona":"student-intern","need":"collaborate","page":"/","state":{"body":"I'm a computer science student looking for a summer internship doing infrastructure work."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"For anyone who runs on, builds on, or is affected by the redoal network and needs to reach the people who keep its first node.","Get software built around your problem":"Send us the problem, or try your own workflow as a working site before you pay for anything.","Work with us, or just stay in touch":"Build with us, hear from us now and then, or tell us what should change on this page."}}},"expect":["Work with us, or just stay in touch"]} -{"id":"student-intern@/join","persona":"student-intern","need":"collaborate","page":"/join","state":{"body":"I'm a computer science student looking for a summer internship doing infrastructure work."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"How do you want to be part of this?\". Which alternative do they choose?","criteria":{"Get a page fixed the way you'd write it":"You've spotted something on this site that should read differently, and you know roughly how.","Hear from us only when there's something to say":"You'd rather hear from us now and then than check back on your own.","Work with people who read the whole thing":"You want to build software with people who read the whole brief, not just the summary."}}},"expect":["Work with people who read the whole thing"]} -{"id":"plumber-owner@/","persona":"plumber-owner","need":"trial","page":"/","state":{"body":"I run a plumbing company with four vans. Jobs come in by phone and text and some get lost. I'd like to see how this would look for us before I spend any money."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"For anyone who runs on, builds on, or is affected by the redoal network and needs to reach the people who keep its first node.","Get software built around your problem":"Send us the problem, or try your own workflow as a working site before you pay for anything.","Work with us, or just stay in touch":"Build with us, hear from us now and then, or tell us what should change on this page."}}},"expect":["Get software built around your problem"]} -{"id":"plumber-owner@/build","persona":"plumber-owner","need":"trial","page":"/build","state":{"body":"I run a plumbing company with four vans. Jobs come in by phone and text and some get lost. I'd like to see how this would look for us before I spend any money."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Do you already know the problem, or do you want to see your own business as a site first?\". Which alternative do they choose?","criteria":{"A considered reply to your brief":"You know the problem and want it solved. Write it up and send it to people who will read the whole thing.","A first draft of your own site":"See your own requests, approvals and handovers as a working site, before you commit to anything."}}},"expect":["A first draft of your own site"]} -{"id":"dance-school@/","persona":"dance-school","need":"trial","page":"/","state":{"body":"We are a dance school. Enrolments, cancellations and invoices all go through one email inbox that only I understand. Can you show me a version made for us?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"For anyone who runs on, builds on, or is affected by the redoal network and needs to reach the people who keep its first node.","Get software built around your problem":"Send us the problem, or try your own workflow as a working site before you pay for anything.","Work with us, or just stay in touch":"Build with us, hear from us now and then, or tell us what should change on this page."}}},"expect":["Get software built around your problem"]} -{"id":"dance-school@/build","persona":"dance-school","need":"trial","page":"/build","state":{"body":"We are a dance school. Enrolments, cancellations and invoices all go through one email inbox that only I understand. Can you show me a version made for us?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Do you already know the problem, or do you want to see your own business as a site first?\". Which alternative do they choose?","criteria":{"A considered reply to your brief":"You know the problem and want it solved. Write it up and send it to people who will read the whole thing.","A first draft of your own site":"See your own requests, approvals and handovers as a working site, before you commit to anything."}}},"expect":["A first draft of your own site"]} -{"id":"node-runner@/","persona":"node-runner","need":"custody","page":"/","state":{"body":"I run a small server in Berlin and want to host a redoal node that peers with yours. Who do I talk to?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"For anyone who runs on, builds on, or is affected by the redoal network and needs to reach the people who keep its first node.","Get software built around your problem":"Send us the problem, or try your own workflow as a working site before you pay for anything.","Work with us, or just stay in touch":"Build with us, hear from us now and then, or tell us what should change on this page."}}},"expect":["Get an answer from the people who keep the network"]} -{"id":"recorded-name@/","persona":"recorded-name","need":"custody","page":"/","state":{"body":"Someone left a recording on redoal that says my full name and where I live. I want it gone, and I want to know who is responsible for that network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"For anyone who runs on, builds on, or is affected by the redoal network and needs to reach the people who keep its first node.","Get software built around your problem":"Send us the problem, or try your own workflow as a working site before you pay for anything.","Work with us, or just stay in touch":"Build with us, hear from us now and then, or tell us what should change on this page."}}},"expect":["Get an answer from the people who keep the network"]} -{"id":"app-builder@/","persona":"app-builder","need":"custody","page":"/","state":{"body":"I'm building a music app and would like to use redoal's gesture addresses in it. Is that possible, and who decides?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"For anyone who runs on, builds on, or is affected by the redoal network and needs to reach the people who keep its first node.","Get software built around your problem":"Send us the problem, or try your own workflow as a working site before you pay for anything.","Work with us, or just stay in touch":"Build with us, hear from us now and then, or tell us what should change on this page."}}},"expect":["Get an answer from the people who keep the network"]} -{"id":"wording-fix@/","persona":"wording-fix","need":"propose","page":"/","state":{"body":"The subscribe page should say how often you actually write. I'd like to suggest that exact change to the page."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"For anyone who runs on, builds on, or is affected by the redoal network and needs to reach the people who keep its first node.","Get software built around your problem":"Send us the problem, or try your own workflow as a working site before you pay for anything.","Work with us, or just stay in touch":"Build with us, hear from us now and then, or tell us what should change on this page."}}},"expect":["Work with us, or just stay in touch"]} -{"id":"wording-fix@/join","persona":"wording-fix","need":"propose","page":"/join","state":{"body":"The subscribe page should say how often you actually write. I'd like to suggest that exact change to the page."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"How do you want to be part of this?\". Which alternative do they choose?","criteria":{"Get a page fixed the way you'd write it":"You've spotted something on this site that should read differently, and you know roughly how.","Hear from us only when there's something to say":"You'd rather hear from us now and then than check back on your own.","Work with people who read the whole thing":"You want to build software with people who read the whole brief, not just the summary."}}},"expect":["Get a page fixed the way you'd write it"]} -{"id":"rewrite@/","persona":"rewrite","need":"propose","page":"/","state":{"body":"One page on this site reads wrong to me and I know exactly how I'd rewrite it. Where do I send the new text?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"For anyone who runs on, builds on, or is affected by the redoal network and needs to reach the people who keep its first node.","Get software built around your problem":"Send us the problem, or try your own workflow as a working site before you pay for anything.","Work with us, or just stay in touch":"Build with us, hear from us now and then, or tell us what should change on this page."}}},"expect":["Work with us, or just stay in touch"]} -{"id":"rewrite@/join","persona":"rewrite","need":"propose","page":"/join","state":{"body":"One page on this site reads wrong to me and I know exactly how I'd rewrite it. Where do I send the new text?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"How do you want to be part of this?\". Which alternative do they choose?","criteria":{"Get a page fixed the way you'd write it":"You've spotted something on this site that should read differently, and you know roughly how.","Hear from us only when there's something to say":"You'd rather hear from us now and then than check back on your own.","Work with people who read the whole thing":"You want to build software with people who read the whole brief, not just the summary."}}},"expect":["Get a page fixed the way you'd write it"]} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r1/tasks-skim.jsonl b/vendor/trainer/runs/uhhm-2026-09-23/r1/tasks-skim.jsonl deleted file mode 100644 index b5a453c..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r1/tasks-skim.jsonl +++ /dev/null @@ -1,27 +0,0 @@ -{"id":"architecture-firm@/","persona":"architecture-firm","need":"commission","page":"/","state":{"body":"We run a small architecture firm and our project files are scattered across three cloud drives. We want to pay someone to set up proper storage and backups we control ourselves."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"Get an answer from the people who keep the network","Get software built around your problem":"Get software built around your problem","Work with us, or just stay in touch":"Work with us, or just stay in touch"}}},"expect":["Get software built around your problem"]} -{"id":"architecture-firm@/build","persona":"architecture-firm","need":"commission","page":"/build","state":{"body":"We run a small architecture firm and our project files are scattered across three cloud drives. We want to pay someone to set up proper storage and backups we control ourselves."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Do you already know the problem, or do you want to see your own business as a site first?\". Which alternative do they choose?","criteria":{"A considered reply to your brief":"A considered reply to your brief","A first draft of your own site":"A first draft of your own site"}}},"expect":["A considered reply to your brief"]} -{"id":"climbing-gym-founder@/","persona":"climbing-gym-founder","need":"commission","page":"/","state":{"body":"I have an idea for a booking app for climbing gyms and I'm looking for a team that can build the first version with me."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"Get an answer from the people who keep the network","Get software built around your problem":"Get software built around your problem","Work with us, or just stay in touch":"Work with us, or just stay in touch"}}},"expect":["Get software built around your problem"]} -{"id":"climbing-gym-founder@/build","persona":"climbing-gym-founder","need":"commission","page":"/build","state":{"body":"I have an idea for a booking app for climbing gyms and I'm looking for a team that can build the first version with me."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Do you already know the problem, or do you want to see your own business as a site first?\". Which alternative do they choose?","criteria":{"A considered reply to your brief":"A considered reply to your brief","A first draft of your own site":"A first draft of your own site"}}},"expect":["A considered reply to your brief"]} -{"id":"municipality-buyer@/","persona":"municipality-buyer","need":"commission","page":"/","state":{"body":"Our municipality needs an internal tool for tracking building permits. We are looking for a vendor who can scope it and deliver it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"Get an answer from the people who keep the network","Get software built around your problem":"Get software built around your problem","Work with us, or just stay in touch":"Work with us, or just stay in touch"}}},"expect":["Get software built around your problem"]} -{"id":"municipality-buyer@/build","persona":"municipality-buyer","need":"commission","page":"/build","state":{"body":"Our municipality needs an internal tool for tracking building permits. We are looking for a vendor who can scope it and deliver it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Do you already know the problem, or do you want to see your own business as a site first?\". Which alternative do they choose?","criteria":{"A considered reply to your brief":"A considered reply to your brief","A first draft of your own site":"A first draft of your own site"}}},"expect":["A considered reply to your brief"]} -{"id":"exhibition-visitor@/","persona":"exhibition-visitor","need":"subscribe","page":"/","state":{"body":"I saw your drawing network at an exhibition and liked it. I don't want to get involved, I'd just like to know when there is news."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"Get an answer from the people who keep the network","Get software built around your problem":"Get software built around your problem","Work with us, or just stay in touch":"Work with us, or just stay in touch"}}},"expect":["Work with us, or just stay in touch"]} -{"id":"exhibition-visitor@/join","persona":"exhibition-visitor","need":"subscribe","page":"/join","state":{"body":"I saw your drawing network at an exhibition and liked it. I don't want to get involved, I'd just like to know when there is news."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"How do you want to be part of this?\". Which alternative do they choose?","criteria":{"Get a page fixed the way you'd write it":"Get a page fixed the way you'd write it","Hear from us only when there's something to say":"Hear from us only when there's something to say","Work with people who read the whole thing":"Work with people who read the whole thing"}}},"expect":["Hear from us only when there's something to say"]} -{"id":"tech-journalist@/","persona":"tech-journalist","need":"subscribe","page":"/","state":{"body":"I write about Nordic technology. Keep me posted on what you release so I can cover it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"Get an answer from the people who keep the network","Get software built around your problem":"Get software built around your problem","Work with us, or just stay in touch":"Work with us, or just stay in touch"}}},"expect":["Work with us, or just stay in touch"]} -{"id":"tech-journalist@/join","persona":"tech-journalist","need":"subscribe","page":"/join","state":{"body":"I write about Nordic technology. Keep me posted on what you release so I can cover it."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"How do you want to be part of this?\". Which alternative do they choose?","criteria":{"Get a page fixed the way you'd write it":"Get a page fixed the way you'd write it","Hear from us only when there's something to say":"Hear from us only when there's something to say","Work with people who read the whole thing":"Work with people who read the whole thing"}}},"expect":["Hear from us only when there's something to say"]} -{"id":"rust-developer@/","persona":"rust-developer","need":"collaborate","page":"/","state":{"body":"I'm a Rust developer between jobs and I like that you build in the open. I would love to contribute, and maybe join you."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"Get an answer from the people who keep the network","Get software built around your problem":"Get software built around your problem","Work with us, or just stay in touch":"Work with us, or just stay in touch"}}},"expect":["Work with us, or just stay in touch"]} -{"id":"rust-developer@/join","persona":"rust-developer","need":"collaborate","page":"/join","state":{"body":"I'm a Rust developer between jobs and I like that you build in the open. I would love to contribute, and maybe join you."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"How do you want to be part of this?\". Which alternative do they choose?","criteria":{"Get a page fixed the way you'd write it":"Get a page fixed the way you'd write it","Hear from us only when there's something to say":"Hear from us only when there's something to say","Work with people who read the whole thing":"Work with people who read the whole thing"}}},"expect":["Work with people who read the whole thing"]} -{"id":"interaction-designer@/","persona":"interaction-designer","need":"collaborate","page":"/","state":{"body":"I'm an interaction designer. I want to work with you on the drawing interface."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"Get an answer from the people who keep the network","Get software built around your problem":"Get software built around your problem","Work with us, or just stay in touch":"Work with us, or just stay in touch"}}},"expect":["Work with us, or just stay in touch"]} -{"id":"interaction-designer@/join","persona":"interaction-designer","need":"collaborate","page":"/join","state":{"body":"I'm an interaction designer. I want to work with you on the drawing interface."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"How do you want to be part of this?\". Which alternative do they choose?","criteria":{"Get a page fixed the way you'd write it":"Get a page fixed the way you'd write it","Hear from us only when there's something to say":"Hear from us only when there's something to say","Work with people who read the whole thing":"Work with people who read the whole thing"}}},"expect":["Work with people who read the whole thing"]} -{"id":"student-intern@/","persona":"student-intern","need":"collaborate","page":"/","state":{"body":"I'm a computer science student looking for a summer internship doing infrastructure work."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"Get an answer from the people who keep the network","Get software built around your problem":"Get software built around your problem","Work with us, or just stay in touch":"Work with us, or just stay in touch"}}},"expect":["Work with us, or just stay in touch"]} -{"id":"student-intern@/join","persona":"student-intern","need":"collaborate","page":"/join","state":{"body":"I'm a computer science student looking for a summer internship doing infrastructure work."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"How do you want to be part of this?\". Which alternative do they choose?","criteria":{"Get a page fixed the way you'd write it":"Get a page fixed the way you'd write it","Hear from us only when there's something to say":"Hear from us only when there's something to say","Work with people who read the whole thing":"Work with people who read the whole thing"}}},"expect":["Work with people who read the whole thing"]} -{"id":"plumber-owner@/","persona":"plumber-owner","need":"trial","page":"/","state":{"body":"I run a plumbing company with four vans. Jobs come in by phone and text and some get lost. I'd like to see how this would look for us before I spend any money."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"Get an answer from the people who keep the network","Get software built around your problem":"Get software built around your problem","Work with us, or just stay in touch":"Work with us, or just stay in touch"}}},"expect":["Get software built around your problem"]} -{"id":"plumber-owner@/build","persona":"plumber-owner","need":"trial","page":"/build","state":{"body":"I run a plumbing company with four vans. Jobs come in by phone and text and some get lost. I'd like to see how this would look for us before I spend any money."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Do you already know the problem, or do you want to see your own business as a site first?\". Which alternative do they choose?","criteria":{"A considered reply to your brief":"A considered reply to your brief","A first draft of your own site":"A first draft of your own site"}}},"expect":["A first draft of your own site"]} -{"id":"dance-school@/","persona":"dance-school","need":"trial","page":"/","state":{"body":"We are a dance school. Enrolments, cancellations and invoices all go through one email inbox that only I understand. Can you show me a version made for us?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"Get an answer from the people who keep the network","Get software built around your problem":"Get software built around your problem","Work with us, or just stay in touch":"Work with us, or just stay in touch"}}},"expect":["Get software built around your problem"]} -{"id":"dance-school@/build","persona":"dance-school","need":"trial","page":"/build","state":{"body":"We are a dance school. Enrolments, cancellations and invoices all go through one email inbox that only I understand. Can you show me a version made for us?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"Do you already know the problem, or do you want to see your own business as a site first?\". Which alternative do they choose?","criteria":{"A considered reply to your brief":"A considered reply to your brief","A first draft of your own site":"A first draft of your own site"}}},"expect":["A first draft of your own site"]} -{"id":"node-runner@/","persona":"node-runner","need":"custody","page":"/","state":{"body":"I run a small server in Berlin and want to host a redoal node that peers with yours. Who do I talk to?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"Get an answer from the people who keep the network","Get software built around your problem":"Get software built around your problem","Work with us, or just stay in touch":"Work with us, or just stay in touch"}}},"expect":["Get an answer from the people who keep the network"]} -{"id":"recorded-name@/","persona":"recorded-name","need":"custody","page":"/","state":{"body":"Someone left a recording on redoal that says my full name and where I live. I want it gone, and I want to know who is responsible for that network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"Get an answer from the people who keep the network","Get software built around your problem":"Get software built around your problem","Work with us, or just stay in touch":"Work with us, or just stay in touch"}}},"expect":["Get an answer from the people who keep the network"]} -{"id":"app-builder@/","persona":"app-builder","need":"custody","page":"/","state":{"body":"I'm building a music app and would like to use redoal's gesture addresses in it. Is that possible, and who decides?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"Get an answer from the people who keep the network","Get software built around your problem":"Get software built around your problem","Work with us, or just stay in touch":"Work with us, or just stay in touch"}}},"expect":["Get an answer from the people who keep the network"]} -{"id":"wording-fix@/","persona":"wording-fix","need":"propose","page":"/","state":{"body":"The subscribe page should say how often you actually write. I'd like to suggest that exact change to the page."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"Get an answer from the people who keep the network","Get software built around your problem":"Get software built around your problem","Work with us, or just stay in touch":"Work with us, or just stay in touch"}}},"expect":["Work with us, or just stay in touch"]} -{"id":"wording-fix@/join","persona":"wording-fix","need":"propose","page":"/join","state":{"body":"The subscribe page should say how often you actually write. I'd like to suggest that exact change to the page."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"How do you want to be part of this?\". Which alternative do they choose?","criteria":{"Get a page fixed the way you'd write it":"Get a page fixed the way you'd write it","Hear from us only when there's something to say":"Hear from us only when there's something to say","Work with people who read the whole thing":"Work with people who read the whole thing"}}},"expect":["Get a page fixed the way you'd write it"]} -{"id":"rewrite@/","persona":"rewrite","need":"propose","page":"/","state":{"body":"One page on this site reads wrong to me and I know exactly how I'd rewrite it. Where do I send the new text?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What brings you here?\". Which alternative do they choose?","criteria":{"Get an answer from the people who keep the network":"Get an answer from the people who keep the network","Get software built around your problem":"Get software built around your problem","Work with us, or just stay in touch":"Work with us, or just stay in touch"}}},"expect":["Work with us, or just stay in touch"]} -{"id":"rewrite@/join","persona":"rewrite","need":"propose","page":"/join","state":{"body":"One page on this site reads wrong to me and I know exactly how I'd rewrite it. Where do I send the new text?"},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"How do you want to be part of this?\". Which alternative do they choose?","criteria":{"Get a page fixed the way you'd write it":"Get a page fixed the way you'd write it","Hear from us only when there's something to say":"Hear from us only when there's something to say","Work with people who read the whole thing":"Work with people who read the whole thing"}}},"expect":["Get a page fixed the way you'd write it"]} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/answers-full.jsonl b/vendor/trainer/runs/uhhm-2026-09-23/r2/answers-full.jsonl deleted file mode 100644 index 8e1d2fb..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/answers-full.jsonl +++ /dev/null @@ -1,27 +0,0 @@ -{"choice":"Get software built, or try a site for your business first","confidence":0.85,"id":"architecture-firm@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"architecture-firm@/build"} -{"choice":"Get software built, or try a site for your business first","confidence":0.95,"id":"climbing-gym-founder@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"climbing-gym-founder@/build"} -{"choice":"Get software built, or try a site for your business first","confidence":0.95,"id":"municipality-buyer@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"municipality-buyer@/build"} -{"choice":"About the redoal network: run a node, build on it, or have something removed","confidence":0.95,"id":"exhibition-visitor@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"exhibition-visitor@/join"} -{"choice":"Get software built, or try a site for your business first","confidence":0.95,"id":"tech-journalist@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"tech-journalist@/join"} -{"choice":"Work with us, hear from us, or change this website","confidence":0.95,"id":"rust-developer@/"} -{"choice":"Work with us","confidence":0.95,"id":"rust-developer@/join"} -{"choice":"Get software built, or try a site for your business first","confidence":0.95,"id":"interaction-designer@/"} -{"choice":"Work with us","confidence":0.95,"id":"interaction-designer@/join"} -{"choice":"About the redoal network: run a node, build on it, or have something removed","confidence":0.85,"id":"student-intern@/"} -{"choice":"Work with us","confidence":0.95,"id":"student-intern@/join"} -{"choice":"Get software built, or try a site for your business first","confidence":0.95,"id":"plumber-owner@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"plumber-owner@/build"} -{"choice":"About the redoal network: run a node, build on it, or have something removed","confidence":0.95,"id":"dance-school@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"dance-school@/build"} -{"choice":"About the redoal network: run a node, build on it, or have something removed","confidence":0.95,"id":"node-runner@/"} -{"choice":"About the redoal network: run a node, build on it, or have something removed","confidence":0.95,"id":"recorded-name@/"} -{"choice":"About the redoal network: run a node, build on it, or have something removed","confidence":0.95,"id":"app-builder@/"} -{"choice":"Work with us, hear from us, or change this website","confidence":0.95,"id":"wording-fix@/"} -{"choice":"Suggest a change to this website","confidence":0.95,"id":"wording-fix@/join"} -{"choice":"About the redoal network: run a node, build on it, or have something removed","confidence":0.95,"id":"rewrite@/"} -{"choice":"Suggest a change to this website","confidence":1.0,"id":"rewrite@/join"} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/answers-skim.jsonl b/vendor/trainer/runs/uhhm-2026-09-23/r2/answers-skim.jsonl deleted file mode 100644 index ca28780..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/answers-skim.jsonl +++ /dev/null @@ -1,27 +0,0 @@ -{"choice":"Get software built, or try a site for your business first","confidence":0.95,"id":"architecture-firm@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"architecture-firm@/build"} -{"choice":"Get software built, or try a site for your business first","confidence":0.95,"id":"climbing-gym-founder@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"climbing-gym-founder@/build"} -{"choice":"Get software built, or try a site for your business first","confidence":0.95,"id":"municipality-buyer@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"municipality-buyer@/build"} -{"choice":"About the redoal network: run a node, build on it, or have something removed","confidence":0.95,"id":"exhibition-visitor@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"exhibition-visitor@/join"} -{"choice":"Get software built, or try a site for your business first","confidence":0.95,"id":"tech-journalist@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"tech-journalist@/join"} -{"choice":"Work with us, hear from us, or change this website","confidence":0.95,"id":"rust-developer@/"} -{"choice":"Work with us","confidence":0.95,"id":"rust-developer@/join"} -{"choice":"Work with us, hear from us, or change this website","confidence":0.95,"id":"interaction-designer@/"} -{"choice":"Work with us","confidence":0.95,"id":"interaction-designer@/join"} -{"choice":"About the redoal network: run a node, build on it, or have something removed","confidence":0.95,"id":"student-intern@/"} -{"choice":"Work with us","confidence":0.95,"id":"student-intern@/join"} -{"choice":"Get software built, or try a site for your business first","confidence":0.95,"id":"plumber-owner@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"plumber-owner@/build"} -{"choice":"Work with us, hear from us, or change this website","confidence":0.95,"id":"dance-school@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"dance-school@/build"} -{"choice":"About the redoal network: run a node, build on it, or have something removed","confidence":0.95,"id":"node-runner@/"} -{"choice":"About the redoal network: run a node, build on it, or have something removed","confidence":0.95,"id":"recorded-name@/"} -{"choice":"Get software built, or try a site for your business first","confidence":0.95,"id":"app-builder@/"} -{"choice":"Work with us, hear from us, or change this website","confidence":0.95,"id":"wording-fix@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"wording-fix@/join"} -{"choice":"Work with us, hear from us, or change this website","confidence":0.85,"id":"rewrite@/"} -{"choice":"Suggest a change to this website","confidence":1.0,"id":"rewrite@/join"} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/rated/rate.json b/vendor/trainer/runs/uhhm-2026-09-23/r2/rated/rate.json deleted file mode 100644 index 4180242..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/rated/rate.json +++ /dev/null @@ -1,274 +0,0 @@ -{ - "collaborate": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 27.081300813008127, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 3, - "required_fields": 0, - "understanding": { - "asked": 3, - "next": null, - "where": 3, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 19.40740740740741, - "options": 3, - "overloaded": false, - "page": "/join", - "personas": 3, - "required_fields": 3, - "understanding": { - "asked": 3, - "next": 3, - "where": 3, - "which": 3 - } - } - ], - "steps": 2 - }, - "commission": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 27.081300813008127, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 3, - "required_fields": 0, - "understanding": { - "asked": 3, - "next": null, - "where": 2, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 31.056192660550458, - "options": 2, - "overloaded": false, - "page": "/build", - "personas": 3, - "required_fields": 4, - "understanding": { - "asked": 3, - "next": 3, - "where": 3, - "which": 3 - } - } - ], - "steps": 2 - }, - "custody": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 28.303899082568808, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 3, - "required_fields": 4, - "understanding": { - "asked": 3, - "next": 3, - "where": 3, - "which": 2 - } - } - ], - "steps": 1 - }, - "propose": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 27.081300813008127, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 1, - "which": 0 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 23.11111111111111, - "options": 3, - "overloaded": false, - "page": "/join", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "subscribe": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 27.081300813008127, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 0 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 21.1010101010101, - "options": 3, - "overloaded": false, - "page": "/join", - "personas": 2, - "required_fields": 2, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "trial": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 27.081300813008127, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 0, - "which": 0 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 32.95073891625616, - "options": 2, - "overloaded": true, - "page": "/build", - "personas": 2, - "required_fields": 6, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/score.log b/vendor/trainer/runs/uhhm-2026-09-23/r2/score.log deleted file mode 100644 index 06b7e78..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/score.log +++ /dev/null @@ -1,35 +0,0 @@ -== answer full -== answer skim -== score full -MISROUTE: architecture-firm@/build: picked "See your own business as a site, before you buy anything" (0.95), the need is met by ["Have us build it: send the brief"] -MISROUTE: climbing-gym-founder@/build: picked "See your own business as a site, before you buy anything" (0.95), the need is met by ["Have us build it: send the brief"] -MISROUTE: exhibition-visitor@/: picked "About the redoal network: run a node, build on it, or have something removed" (0.95), the need is met by ["Work with us, hear from us, or change this website"] -MISROUTE: tech-journalist@/: picked "Get software built, or try a site for your business first" (0.95), the need is met by ["Work with us, hear from us, or change this website"] -MISROUTE: interaction-designer@/: picked "Get software built, or try a site for your business first" (0.95), the need is met by ["Work with us, hear from us, or change this website"] -MISROUTE: student-intern@/: picked "About the redoal network: run a node, build on it, or have something removed" (0.85), the need is met by ["Work with us, hear from us, or change this website"] -MISROUTE: dance-school@/: picked "About the redoal network: run a node, build on it, or have something removed" (0.95), the need is met by ["Get software built, or try a site for your business first"] -MISROUTE: rewrite@/: picked "About the redoal network: run a node, build on it, or have something removed" (0.95), the need is met by ["Work with us, hear from us, or change this website"] -wording: 19/27 routed right (70%) -== score skim -MISROUTE: exhibition-visitor@/: picked "About the redoal network: run a node, build on it, or have something removed" (0.95), the need is met by ["Work with us, hear from us, or change this website"] -MISROUTE: tech-journalist@/: picked "Get software built, or try a site for your business first" (0.95), the need is met by ["Work with us, hear from us, or change this website"] -MISROUTE: student-intern@/: picked "About the redoal network: run a node, build on it, or have something removed" (0.95), the need is met by ["Work with us, hear from us, or change this website"] -MISROUTE: dance-school@/: picked "Work with us, hear from us, or change this website" (0.95), the need is met by ["Get software built, or try a site for your business first"] -MISROUTE: dance-school@/build: picked "Have us build it: send the brief" (0.95), the need is met by ["See your own business as a site, before you buy anything"] -MISROUTE: app-builder@/: picked "Get software built, or try a site for your business first" (0.95), the need is met by ["About the redoal network: run a node, build on it, or have something removed"] -MISROUTE: wording-fix@/join: picked "Hear from us now and then" (0.95), the need is met by ["Suggest a change to this website"] -wording: 20/27 routed right (74%) -== rate -need LIX which where asked next gutted twin says page load -commission @/ 27 very easy 1/3 2/3 3/3 - 0/0/0/- ok 3 options, 0 required -commission @/build 31 easy 3/3 3/3 3/3 3/3 0/0/0/0 ok 2 options, 4 required -trial @/ 27 very easy 0/2 0/2 2/2 - 0/0/0/- ok 3 options, 0 required -trial @/build 33 easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 6 required - SPLIT -collaborate @/ 27 very easy 2/3 3/3 3/3 - 0/0/0/- ok 3 options, 0 required -collaborate @/join 19 very easy 3/3 3/3 3/3 3/3 0/0/0/0 ok 3 options, 3 required -subscribe @/ 27 very easy 0/2 2/2 2/2 - 0/0/0/- ok 3 options, 0 required -subscribe @/join 21 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 3 options, 2 required -propose @/ 27 very easy 0/2 1/2 2/2 - 0/0/0/- ok 3 options, 0 required -propose @/join 23 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 3 options, 3 required -custody 28 very easy 2/3 3/3 3/3 3/3 0/0/0/0 ok 3 options, 4 required -== done diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/aggregates.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/aggregates.yaml deleted file mode 100644 index cccafd2..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/aggregates.yaml +++ /dev/null @@ -1,113 +0,0 @@ -aggregates: -- bucket: applicants - initial: open - states: - active: - event: onboarded - declined: - event: declined - departed: - event: departed - invited: - event: invited - open: - event: applied - transitions: - active: - - departed - - declined - invited: - - active - - declined - open: - - invited - - declined -- bucket: custody_requests - initial: open - states: - declined: - event: declined - in_dialogue: - event: in_dialogue - open: - event: received - resolved: - event: resolved - transitions: - in_dialogue: - - resolved - - declined - open: - - in_dialogue - - declined -- bucket: development_proposals - initial: open - states: - approved: - event: approved - open: - event: proposed - rejected: - event: rejected - transitions: - open: - - approved - - rejected -- bucket: organizations - initial: prospect - states: - client: - event: became_client - past_client: - event: churned - prospect: - event: identified - transitions: - client: - - past_client - prospect: - - client - - past_client -- bucket: projects - initial: open - states: - accepted: - event: accepted - declined: - event: declined - open: - event: submitted - transitions: - open: - - accepted - - declined -- bucket: subscribers - initial: open - states: - open: - event: subscribed - unsubscribed: - event: unsubscribed - transitions: - open: - - unsubscribed -- attended_by: | - approved -> previewed: the n8n workflow that builds the draft site from an approved intake (docker, rauthy, portal content) and sends the preview link. Until it exists, owners run portal-trainer by hand and press the button. - bucket: trials - initial: open - states: - approved: - event: approved - declined: - event: declined - open: - event: received - previewed: - event: previewed - transitions: - approved: - - previewed - - declined - open: - - approved - - declined diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/01-questions_build_index.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/01-questions_build_index.yaml.md deleted file mode 100644 index 8517c6a..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/01-questions_build_index.yaml.md +++ /dev/null @@ -1,174 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/build/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "commission": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "name": "", - "org_contact": "", - "organization": "", - "project": "" - }, - "icon": "", - "labels": { - "email": "", - "name": "", - "org_contact": "", - "organization": "", - "project": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "trial": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "business": "", - "email": "", - "what_slows_us_down": "", - "what_we_do": "", - "what_we_keep_track_of": "", - "who_comes_to_us": "", - "who_is_involved": "" - }, - "icon": "", - "labels": { - "business": "", - "email": "", - "what_slows_us_down": "", - "what_we_do": "", - "what_we_keep_track_of": "", - "who_comes_to_us": "", - "who_is_involved": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Have a problem software should solve, or want to see your own way of working as a site before you pay anyone?", - "needs": { - "commission": { - "button": "Send the brief", - "description": "You know the problem and want it solved. Write it up and send it to people who will read the whole thing.", - "encouragement": "Someone here reads every brief in full before writing back.", - "form_description": "The more of the problem you put in, the better the reply.", - "form_title": "Tell us the problem", - "heading": "A considered reply to your brief", - "hints": { - "email": "sara@company.com", - "name": "Sara Nilsen", - "org_contact": "Sara Nilsen, ops manager", - "organization": "Nilsen Transport AS", - "project": "Our drivers log hours on paper and it takes a day to get them into payroll." - }, - "icon": "briefcase", - "labels": { - "email": "Your email", - "name": "Your name", - "org_contact": "Who we should talk to", - "organization": "Your organization", - "project": "The problem you want solved" - }, - "road_description": "We read your brief and either take it on or tell you honestly if it's not a fit.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads it; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "trial": { - "button": "Start the draft", - "description": "See your own requests, approvals and handovers as a working site, before you commit to anything.", - "encouragement": "A person looks at what you send before anything gets built.", - "form_description": "Answer in your own words - there's no wrong way to describe your business.", - "form_title": "Describe your business", - "heading": "A first draft of your own site", - "hints": { - "business": "Nilsen Transport AS", - "email": "sara@company.com", - "what_slows_us_down": "Approvals sit in someone's inbox for days before anyone acts on them.", - "what_we_do": "We move freight for local businesses and handle the paperwork for them.", - "what_we_keep_track_of": "Bookings, driver hours, and which loads are still waiting on a signature.", - "who_comes_to_us": "Local businesses that need something moved on short notice.", - "who_is_involved": "Drivers, dispatchers, and the customers waiting on their delivery." - }, - "icon": "layers", - "labels": { - "business": "Your business", - "email": "Your email", - "what_slows_us_down": "What slows you down", - "what_we_do": "What you do", - "what_we_keep_track_of": "What you keep track of", - "who_comes_to_us": "Who comes to you", - "who_is_involved": "Who's involved" - }, - "road_description": "We look at what you sent and, if it's a fit, build a draft from your own roles and words for you to see before anything moves further.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner looks at what you send; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "Do you already know the problem, or do you want to see your own business as a site first?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/02-questions_custodians_index.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/02-questions_custodians_index.yaml.md deleted file mode 100644 index c9aeeb9..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/02-questions_custodians_index.yaml.md +++ /dev/null @@ -1,108 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/custodians/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. Under `invites`, each entry is a form that invites a person into that group - they get an account and a one-time link - and `invited` is the list of invites sent. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "custody_requests": { - "description": "", - "heading": "", - "moves": { - "in_dialogue->declined": "declined>", - "in_dialogue->resolved": "resolved>", - "open->declined": "declined>", - "open->in_dialogue": "in_dialogue>" - } - } - }, - "confirm": "", - "description": "", - "invited": { - "description": "", - "done": "", - "heading": "" - }, - "invites": { - "custodians": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "email": "", - "name": "" - } - } - }, - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "custody_requests": { - "description": "Cases from people who use, build on, or answer for something the redoal network touches, and need a custodian's word on it.", - "heading": "Custody cases waiting on you", - "moves": { - "in_dialogue->declined": "Close, no action", - "in_dialogue->resolved": "Mark resolved", - "open->declined": "Decline case", - "open->in_dialogue": "Open dialogue" - } - } - }, - "confirm": "Send invite", - "description": "The desk for custodians: open custody cases, and the people invited to answer them.", - "invited": { - "description": "Custodians invited but not yet signed in.", - "done": "Signed in", - "heading": "Invited custodians" - }, - "invites": { - "custodians": { - "button": "Invite custodian", - "description": "Give someone an account and a one-time link to join as a custodian.", - "form_title": "Invite a custodian", - "heading": "Bring in another custodian", - "labels": { - "email": "Email", - "name": "Name" - } - } - }, - "links": {}, - "question": "What does the network owe the people it affects, right now?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/03-questions_decide_subscribe.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/03-questions_decide_subscribe.yaml.md deleted file mode 100644 index 729c7c0..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/03-questions_decide_subscribe.yaml.md +++ /dev/null @@ -1,60 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/decide/subscribe.yaml -It is a page the person who sent a form reaches later, through a private link, to make a decision that is theirs: under `moves`, each entry is one thing they can decide. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "moves": { - "unsubscribed": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "You're on our list. Change your mind whenever you like.", - "moves": { - "unsubscribed": { - "button": "Unsubscribe", - "description": "You'll stop hearing from us. Nothing else changes.", - "heading": "Stop getting notes from us" - } - }, - "question": "Do you want to keep hearing from us?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/04-questions_index.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/04-questions_index.yaml.md deleted file mode 100644 index e11b912..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/04-questions_index.yaml.md +++ /dev/null @@ -1,136 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/index.yaml -It is the front door: the first page any visitor sees. `question` is the page's one question. Under `doors`, each entry is one alternative that leads to a page of its own for one kind of visitor: its heading must let that visitor recognise themselves from the heading alone. Under `needs`, each entry is one alternative with a form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "doors": { - "build": { - "button": "", - "description": "", - "for_whom": "", - "heading": "", - "icon": "" - }, - "join": { - "button": "", - "description": "", - "for_whom": "", - "heading": "", - "icon": "" - } - }, - "needs": { - "custody": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "about": "", - "email": "", - "name": "", - "what": "" - }, - "icon": "", - "labels": { - "about": "", - "email": "", - "name": "", - "what": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "UHHM builds software for organisations that can say what problem they have, and keeps the redoal network underneath.", - "doors": { - "build": { - "button": "Start here", - "description": "Send us the problem, or try your own workflow as a working site before you pay for anything.", - "for_whom": "For an organisation with a problem, or a business sizing us up", - "heading": "Get software built around your problem", - "icon": "hammer" - }, - "join": { - "button": "Start here", - "description": "Build with us, hear from us now and then, or tell us what should change on this page.", - "for_whom": "For anyone who wants in, on their own terms", - "heading": "Work with us, or just stay in touch", - "icon": "handshake" - } - }, - "needs": { - "custody": { - "button": "Send to a custodian", - "description": "For anyone who runs on, builds on, or is affected by the redoal network and needs to reach the people who keep its first node.", - "encouragement": "A custodian reads every message that comes in here.", - "form_description": "Tell us what the network is doing, or not doing, and how we can reach you.", - "form_title": "Reach a custodian", - "heading": "Get an answer from the people who keep the network", - "hints": { - "about": "We run our order system on a relay node and it's been dropping messages since Tuesday", - "email": "you@yourcompany.com", - "name": "Your name", - "what": "A relay node is misbehaving" - }, - "icon": "shield", - "labels": { - "about": "What's going on", - "email": "Email", - "name": "Name", - "what": "In short" - }, - "road_description": "We open it and start a dialogue with you. Once we understand what the network is keeping that it shouldn't, we work it through to resolved, or tell you plainly if we can't.", - "road_icon": "route", - "road_title": "What happens next", - "who_title": "Who reads this", - "who_icon": "user-check", - "who_description": "A custodian reads it directly; if it's urgent, write to bl@uhhm.no in the meantime." - } - }, - "question": "What brings you here?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/05-questions_join_index.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/05-questions_join_index.yaml.md deleted file mode 100644 index 493c581..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/05-questions_join_index.yaml.md +++ /dev/null @@ -1,208 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/join/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "collaborate": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "interest": "", - "name": "", - "note": "" - }, - "icon": "", - "labels": { - "email": "", - "interest": "", - "name": "", - "note": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "propose": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "page": "", - "proposed_yaml": "", - "rationale": "", - "submitted_by": "" - }, - "icon": "", - "labels": { - "email": "", - "page": "", - "proposed_yaml": "", - "rationale": "", - "submitted_by": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "subscribe": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "name": "" - }, - "icon": "", - "labels": { - "email": "", - "name": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Three ways to be part of what UHHM builds: work with us, hear from us, or fix something on this site.", - "needs": { - "collaborate": { - "button": "Get in touch", - "description": "You want to build software with people who read the whole brief, not just the summary.", - "encouragement": "A person reads this, not a form filter — worth the ten minutes.", - "form_description": "Tell us who you are and what kind of work you're after.", - "form_title": "Say hello", - "heading": "Work with people who read the whole thing", - "hints": { - "email": "you@example.com", - "interest": "Backend work, or something design-heavy", - "name": "Your name", - "note": "A bit about what you'd want to work on, or a link to your work" - }, - "icon": "handshake", - "labels": { - "email": "Email", - "interest": "What kind of work", - "name": "Name", - "note": "Tell us more" - }, - "road_description": "We read what you send and get back to you. If there's a fit, we invite you in and you start working with us — and if things ever change, that's fine too.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads this directly — for anything urgent, write to bl@uhhm.no.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "propose": { - "button": "Send change", - "description": "You've spotted something on this site that should read differently, and you know roughly how.", - "encouragement": "Even a rough version helps — we can tidy the wording ourselves.", - "form_description": "Point us to the page and show us the change.", - "form_title": "Propose a change", - "heading": "Get a page fixed the way you'd write it", - "hints": { - "email": "you@example.com", - "page": "questions/join/index.yaml", - "proposed_yaml": "heading: \"A clearer way to say this\"", - "rationale": "The current heading doesn't say what you actually get", - "submitted_by": "Your name" - }, - "icon": "pencil", - "labels": { - "email": "Email", - "page": "Which page", - "proposed_yaml": "Your proposed text", - "rationale": "Why this is better", - "submitted_by": "Your name" - }, - "road_description": "Someone here reads your proposal and either makes the change or explains why not. Either way, you'll hear back.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner reads every proposal before anything changes — reach us at bl@uhhm.no if it's time-sensitive.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "subscribe": { - "button": "Sign up", - "description": "You'd rather hear from us now and then than check back on your own.", - "encouragement": "One click unsubscribes you later, no questions asked.", - "form_description": "Just your email, or your name too if you'd like.", - "form_title": "Stay in the loop", - "heading": "Hear from us only when there's something to say", - "hints": { - "email": "you@example.com", - "name": "Your name" - }, - "icon": "mail", - "labels": { - "email": "Email", - "name": "Name" - }, - "road_description": "You're on the list. We write when there's something worth saying, and you can leave the list whenever you like.", - "road_icon": "bell", - "road_title": "What happens next", - "who_description": "An owner sends these notes directly — write to bl@uhhm.no if you'd rather ask something first.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "How do you want to be part of this?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/06-questions_owners_index.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/06-questions_owners_index.yaml.md deleted file mode 100644 index 56e3fe7..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/06-questions_owners_index.yaml.md +++ /dev/null @@ -1,236 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/owners/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. Under `invites`, each entry is a form that invites a person into that group - they get an account and a one-time link - and `invited` is the list of invites sent. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "applicants": { - "description": "", - "heading": "", - "moves": { - "active->declined": "declined>", - "active->departed": "departed>", - "invited->active": "active>", - "invited->declined": "declined>", - "open->declined": "declined>", - "open->invited": "invited>" - } - }, - "custody_requests": { - "description": "", - "heading": "", - "moves": {} - }, - "development_proposals": { - "description": "", - "heading": "", - "moves": { - "open->approved": "approved>", - "open->rejected": "rejected>" - } - }, - "organizations": { - "description": "", - "heading": "", - "moves": { - "client->past_client": "past_client>", - "prospect->client": "client>", - "prospect->past_client": "past_client>" - } - }, - "projects": { - "description": "", - "heading": "", - "moves": { - "open->accepted": "accepted>", - "open->declined": "declined>" - } - }, - "subscribers": { - "description": "", - "heading": "", - "moves": { - "open->unsubscribed": "unsubscribed>" - } - }, - "trials": { - "description": "", - "heading": "", - "moves": { - "approved->declined": "declined>", - "approved->previewed": "previewed>", - "open->approved": "approved>", - "open->declined": "declined>" - } - } - }, - "confirm": "", - "description": "", - "invited": { - "description": "", - "done": "", - "heading": "" - }, - "invites": { - "custodians": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "email": "", - "name": "" - } - }, - "owners": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "email": "", - "name": "" - } - } - }, - "links": { - "prospect": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "buckets": { - "applicants": { - "description": "People who've asked to build with us, waiting on a decision or already working alongside us.", - "heading": "People who want to build with us", - "moves": { - "active->declined": "End collaboration", - "active->departed": "Mark departed", - "invited->active": "Confirm active", - "invited->declined": "Withdraw invite", - "open->declined": "Decline applicant", - "open->invited": "Send invite" - } - }, - "custody_requests": { - "description": "Questions and issues raised with the people who keep the first node - custodians handle these, but you can see where each one stands.", - "heading": "What's been raised with custodians", - "moves": {} - }, - "development_proposals": { - "description": "Changes visitors have proposed for pages on this site, waiting on a yes or no.", - "heading": "Proposed changes to the site", - "moves": { - "open->approved": "Approve change", - "open->rejected": "Reject change" - } - }, - "organizations": { - "description": "Organizations you've met, tracked from first contact through to client and beyond.", - "heading": "Organizations you're tracking", - "moves": { - "client->past_client": "Mark past client", - "prospect->client": "Mark as client", - "prospect->past_client": "Mark not pursued" - } - }, - "projects": { - "description": "Briefs sent in by organizations with a problem they want solved.", - "heading": "Briefs waiting on a reply", - "moves": { - "open->accepted": "Accept brief", - "open->declined": "Decline brief" - } - }, - "subscribers": { - "description": "People who want to hear from you now and then.", - "heading": "Who's hearing from you", - "moves": { - "open->unsubscribed": "Unsubscribe them" - } - }, - "trials": { - "description": "Businesses who want to see their own workflow as a working site before committing to anything.", - "heading": "Trial sites in progress", - "moves": { - "approved->declined": "Decline trial", - "approved->previewed": "Mark previewed", - "open->approved": "Approve trial", - "open->declined": "Decline trial" - } - } - }, - "confirm": "Confirm", - "description": "Everything waiting on you: briefs, trials, applicants, subscribers, and proposals, all in one place.", - "invited": { - "description": "People you've invited in, and whether they've taken it up yet.", - "done": "Taken up", - "heading": "Invites you've sent" - }, - "invites": { - "custodians": { - "button": "Send invite", - "description": "Bring someone in to help keep the first node and answer for the network.", - "form_title": "Invite a custodian", - "heading": "Bring in a custodian", - "labels": { - "email": "Their email", - "name": "Their name" - } - }, - "owners": { - "button": "Send invite", - "description": "Bring someone in to work this desk alongside you.", - "form_title": "Invite an owner", - "heading": "Bring in another owner", - "labels": { - "email": "Their email", - "name": "Their name" - } - } - }, - "links": { - "prospect": { - "button": "Add prospect", - "description": "Write down an organization worth following up, and track it from first contact onward.", - "heading": "Track a new organization" - } - }, - "question": "What's waiting on me today?" -} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/07-questions_owners_prospect-sent.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/07-questions_owners_prospect-sent.yaml.md deleted file mode 100644 index 2bc4507..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/07-questions_owners_prospect-sent.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/owners/prospect-sent.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to site", - "description": "Thanks — we've got your prospect written down, and it now moves through the desk with everything else we're tracking.", - "next_description": "An owner walks it from prospect to client, and on to past client, as the relationship moves.", - "next_heading": "It's on the desk now", - "question": "What happens to this now?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/08-questions_owners_prospect.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/08-questions_owners_prospect.yaml.md deleted file mode 100644 index 290d1f2..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/08-questions_owners_prospect.yaml.md +++ /dev/null @@ -1,92 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/owners/prospect.yaml -It is a page only one role inside the business can open, holding one form. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "contact": "", - "name": "", - "note": "" - }, - "icon": "", - "labels": { - "contact": "", - "name": "", - "note": "" - }, - "page_description": "", - "question": "", - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "button": "Add to prospects", - "description": "One line per organization worth watching, moved through the stages as things develop.", - "encouragement": "Takes a minute, and it's yours to update later.", - "form_description": "Name the organization and where things stand.", - "form_title": "New prospect", - "heading": "Keep an organization on your radar", - "hints": { - "contact": "met at the bakers' conference, [email protected]", - "name": "Nordvik Bakery", - "note": "wants a booking flow, follow up after harvest season" - }, - "icon": "briefcase", - "labels": { - "contact": "Contact", - "name": "Organization", - "note": "Note" - }, - "page_description": "Write down an organization worth following up, and move it through client and past client as things develop.", - "question": "Is there an organization I should be keeping track of?", - "road_description": "It sits as a prospect until something moves - then you mark it client, and later past client if the work ends.", - "road_icon": "route", - "road_title": "Moves as you update it", - "who_description": "Only you see this, so keep it wherever you check next.", - "who_icon": "user", - "who_title": "Just for you" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/09-questions_received_collaborate.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/09-questions_received_collaborate.yaml.md deleted file mode 100644 index 6f83c69..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/09-questions_received_collaborate.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/collaborate.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to site", - "description": "Your note is in. An owner reads every one and will get back to you if there's a fit worth exploring.", - "next_description": "If it looks like a fit, we'll reach out to talk about where you could help.", - "next_heading": "We'll write if there's a fit", - "question": "What happens to what I just sent?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/10-questions_received_commission.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/10-questions_received_commission.yaml.md deleted file mode 100644 index 225f61e..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/10-questions_received_commission.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/commission.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to home", - "description": "Your brief is in. An owner reads every commission end to end before replying.", - "next_description": "Expect a reply within a few working days, either way, straight to your inbox.", - "next_heading": "A real reply from someone who read it", - "question": "What happens now that we've sent our brief?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/11-questions_received_custody.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/11-questions_received_custody.yaml.md deleted file mode 100644 index ee326dc..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/11-questions_received_custody.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/custody.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to the site", - "description": "A custodian reads every message about the redoal network and what it keeps.", - "next_description": "Expect a reply once your report has been looked at and the network checked.", - "next_heading": "A custodian is on it", - "question": "Who looks after what the network keeps?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/12-questions_received_propose.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/12-questions_received_propose.yaml.md deleted file mode 100644 index 1ddaf45..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/12-questions_received_propose.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/propose.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back home", - "description": "Your proposal is in. Someone here will read it and decide whether it fits before anything changes on the page.", - "next_description": "We'll write back once it's been read — approved and made live, or turned down with a reason.", - "next_heading": "A read, then a decision", - "question": "What happens to my proposal now?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/13-questions_received_subscribe.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/13-questions_received_subscribe.yaml.md deleted file mode 100644 index 2760f6f..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/13-questions_received_subscribe.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/subscribe.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to site", - "description": "You'll hear from us when there's something worth saying, not on a schedule.", - "next_description": "You're on the list. Every note has an unsubscribe link if it stops being useful.", - "next_heading": "You're on the list", - "question": "What happens now that I've subscribed?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/14-questions_received_trial.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/14-questions_received_trial.yaml.md deleted file mode 100644 index 062e729..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/llm/14-questions_received_trial.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/trial.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to site", - "description": "We read every trial request ourselves before anything gets built.", - "next_description": "If it looks like a fit, we'll draft your site from your own words and send it back for your say before anything goes live.", - "next_heading": "A first draft, built from your own words", - "question": "What happens now that you've sent this?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/needs.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/needs.yaml deleted file mode 100644 index 4bded10..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/needs.yaml +++ /dev/null @@ -1,173 +0,0 @@ -needs: -- done_when: - - accepted - - declined - enters: / - handled_by: owners - id: commission - lands_in: projects - max_fields: 4 - max_steps: 2 - stages: - - open - - accepted - - declined - success: - - accepted - via: Get software built, or try a site for your business first - wants: a considered reply to a brief, from people who read the whole thing - who: an organization with a problem it wants software to solve -- done_when: - - previewed - - declined - enters: / - handled_by: owners - id: trial - lands_in: trials - max_fields: 6 - max_steps: 2 - stages: - - open - - approved - - previewed - - declined - success: - - previewed - via: Get software built, or try a site for your business first - wants: a first draft of a site for their own roles, built from their own words and approved by a person first - who: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything -- done_when: - - departed - - declined - enters: / - handled_by: owners - id: collaborate - lands_in: applicants - max_fields: 3 - max_steps: 2 - stages: - - open - - invited - - active - - departed - - declined - success: - - departed - via: Work with us, hear from us, or change this website - wants: to be read as a person, and invited in if there is a fit - who: someone who wants to work with us on what we build -- done_when: - - unsubscribed - enters: / - handled_by: owners - id: subscribe - lands_in: subscribers - max_fields: 2 - max_steps: 2 - stages: - - open - - unsubscribed - success: [] - via: Work with us, hear from us, or change this website - wants: a note now and then, and an easy way out - who: someone who wants to hear from us when there is something to say -- done_when: - - approved - - rejected - enters: / - handled_by: owners - id: propose - lands_in: development_proposals - max_fields: 3 - max_steps: 2 - stages: - - open - - approved - - rejected - success: - - approved - via: Work with us, hear from us, or change this website - wants: the change read by a person and, if approved, made - who: a visitor who sees how a page on this site should change -- done_when: - - resolved - - declined - enters: / - handled_by: custodians - id: custody - lands_in: custody_requests - max_fields: 4 - max_steps: 1 - stages: - - open - - in_dialogue - - resolved - - declined - success: - - resolved - via: 'About the redoal network: run a node, build on it, or have something removed' - wants: an answer from a custodian, and action where the network keeps something it should not - who: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node -- done_when: - - past_client - enters: /owners/prospect - enters_as: owners - handled_by: owners - id: prospect - lands_in: organizations - max_fields: 2 - max_steps: 1 - stages: - - prospect - - client - - past_client - success: [] - via: Keep an organization on your radar - wants: it written down and walked through its states from the desk - who: an owner who has met an organization worth following up -personas: -- id: architecture-firm - need: commission - text: We run a small architecture firm and our project files are scattered across three cloud drives. We want to pay someone to set up proper storage and backups we control ourselves. -- id: climbing-gym-founder - need: commission - text: I have an idea for a booking app for climbing gyms and I'm looking for a team that can build the first version with me. -- id: municipality-buyer - need: commission - text: Our municipality needs an internal tool for tracking building permits. We are looking for a vendor who can scope it and deliver it. -- id: exhibition-visitor - need: subscribe - text: I saw your drawing network at an exhibition and liked it. I don't want to get involved, I'd just like to know when there is news. -- id: tech-journalist - need: subscribe - text: I write about Nordic technology. Keep me posted on what you release so I can cover it. -- id: rust-developer - need: collaborate - text: I'm a Rust developer between jobs and I like that you build in the open. I would love to contribute, and maybe join you. -- id: interaction-designer - need: collaborate - text: I'm an interaction designer. I want to work with you on the drawing interface. -- id: student-intern - need: collaborate - text: I'm a computer science student looking for a summer internship doing infrastructure work. -- id: plumber-owner - need: trial - text: I run a plumbing company with four vans. Jobs come in by phone and text and some get lost. I'd like to see how this would look for us before I spend any money. -- id: dance-school - need: trial - text: We are a dance school. Enrolments, cancellations and invoices all go through one email inbox that only I understand. Can you show me a version made for us? -- id: node-runner - need: custody - text: I run a small server in Berlin and want to host a redoal node that peers with yours. Who do I talk to? -- id: recorded-name - need: custody - text: Someone left a recording on redoal that says my full name and where I live. I want it gone, and I want to know who is responsible for that network. -- id: app-builder - need: custody - text: I'm building a music app and would like to use redoal's gesture addresses in it. Is that possible, and who decides? -- id: wording-fix - need: propose - text: The subscribe page should say how often you actually write. I'd like to suggest that exact change to the page. -- id: rewrite - need: propose - text: One page on this site reads wrong to me and I know exactly how I'd rewrite it. Where do I send the new text? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/build/index.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/build/index.yaml deleted file mode 100644 index 2439592..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/build/index.yaml +++ /dev/null @@ -1,94 +0,0 @@ -alternatives: -- action: /received/commission - consequence: - - Send the brief - description: You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing. - encouragements: - - Someone here reads every brief in full before writing back. - features: - - description: We read your brief and either take it on or tell you honestly if it's not a fit. - icon: lucide:route - name: What happens next - - description: One of the owners reads it; write to bl@uhhm.no if you'd rather reach us directly. - icon: lucide:user-check - name: Who reads this - - description: The more of the problem you put in, the better the reply. - icon: lucide:briefcase - name: Tell us the problem - requirements: - - label: Your name - name: name - placeholder: Sara Nilsen - type: text - - label: Your email - name: email - placeholder: sara@company.com - type: email - - label: The problem you want solved - name: project - placeholder: Our drivers log hours on paper and it takes a day to get them into payroll. - type: textarea - - label: Your organization - name: organization - placeholder: Nilsen Transport AS - type: text - - label: Who we should talk to - name: org_contact - optional: true - placeholder: Sara Nilsen, ops manager - type: text - name: 'Have us build it: send the brief' - record_as: projects -- action: /received/trial - consequence: - - Start the draft - description: Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through. - encouragements: - - A person looks at what you send before anything gets built. - features: - - description: We look at what you sent and, if it's a fit, build a draft from your own roles and words for you to see before anything moves further. - icon: lucide:route - name: What happens next - - description: An owner looks at what you send; write to bl@uhhm.no if you'd rather reach us directly. - icon: lucide:user-check - name: Who reads this - - description: Answer in your own words - there's no wrong way to describe your business. - icon: lucide:layers - name: Describe your business - requirements: - - label: Your business - name: business - placeholder: Nilsen Transport AS - type: text - - label: Your email - name: email - placeholder: sara@company.com - type: email - - label: What you do - name: what_we_do - placeholder: We move freight for local businesses and handle the paperwork for them. - type: textarea - - label: Who comes to you - name: who_comes_to_us - placeholder: Local businesses that need something moved on short notice. - type: textarea - - label: What you keep track of - name: what_we_keep_track_of - placeholder: Bookings, driver hours, and which loads are still waiting on a signature. - type: textarea - - label: Who's involved - name: who_is_involved - placeholder: Drivers, dispatchers, and the customers waiting on their delivery. - type: textarea - - label: What slows you down - name: what_slows_us_down - optional: true - placeholder: Approvals sit in someone's inbox for days before anyone acts on them. - type: textarea - name: See your own business as a site, before you buy anything - record_as: trials -description: Have a problem software should solve, or want to see your own way of working as a site before you pay anyone? -name: Do you have a brief, or do you want to see your business as a site first? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/custodians/_section.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/custodians/_section.yaml deleted file mode 100644 index de40ef5..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/custodians/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: custodians diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/custodians/index.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/custodians/index.yaml deleted file mode 100644 index 6a0b293..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/custodians/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -alternatives: -- action: /custodians - consequence: - - Confirm - description: Cases from people who use, build on, or answer for something the redoal network touches, and need a custodian's word on it. - features: - - description: '' - name: '' - resource: - requires_group: custodians - source: - bucket: custody_requests - kind: kv - transitions: - - from: in_dialogue - label: Mark resolved - to: resolved - - from: in_dialogue - label: Close, no action - to: declined - - from: open - label: Open dialogue - to: in_dialogue - - from: open - label: Decline case - to: declined - name: Custody cases waiting on you -- action: /custodians - consequence: - - Invite custodian - description: Give someone an account and a one-time link to join as a custodian. - features: - - description: '' - name: Invite a custodian - requirements: - - label: Name - name: name - - label: Email - name: email - type: email - invite: - group: custodians - name: Bring in another custodian -- action: /custodians - consequence: - - Confirm - description: Custodians invited but not yet signed in. - features: - - description: '' - name: '' - resource: - requires_group: custodians - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Signed in - to: done - name: Invited custodians -description: 'The desk for custodians: open custody cases, and the people invited to answer them.' -name: What is waiting on the custodians? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/decide/subscribe.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/decide/subscribe.yaml deleted file mode 100644 index 45114ca..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/decide/subscribe.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: You'll stop hearing from us. Nothing else changes. - name: Stop getting notes from us - self_transition: - bucket: subscribers - label: Unsubscribe - to: unsubscribed -description: You're on our list. Change your mind whenever you like. -name: Do you want to keep hearing from us? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/index.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/index.yaml deleted file mode 100644 index d4b95ff..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/index.yaml +++ /dev/null @@ -1,63 +0,0 @@ -alternatives: -- action: /build - consequence: - - Start here - description: Send us a brief, or describe how work flows through your business and see it as a working site before you pay for anything. - features: - - description: '' - icon: lucide:hammer - name: For an organisation with a problem, or a business sizing us up - name: Get software built, or try a site for your business first -- action: /join - consequence: - - Start here - description: Join us as a collaborator, get a note now and then, or suggest a change to a page on uhhm.no. - features: - - description: '' - icon: lucide:handshake - name: For anyone who wants in, on their own terms - name: Work with us, hear from us, or change this website -- action: /received/custody - consequence: - - Send to a custodian - description: UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at. - encouragements: - - A custodian reads every message that comes in here. - features: - - description: A custodian opens a dialogue with you. A node gets its peer, a builder gets an answer, and something the network should not keep gets removed. Either way you hear what was decided. - icon: lucide:route - name: What happens next - - description: A custodian reads it directly; if it's urgent, write to bl@uhhm.no in the meantime. - icon: lucide:user-check - name: Who reads this - - description: Say which of the four it is, and what you need, in a few lines. - icon: lucide:shield - name: Reach a custodian - requirements: - - label: Name - name: name - placeholder: Your name - type: text - - label: Email - name: email - placeholder: you@yourcompany.com - type: email - - label: What's going on - name: about - options: - - Running a node of my own - - Building on the network - - Something the network keeps about me - - Something else - type: select - - label: In short - name: what - placeholder: A relay node is misbehaving - type: textarea - name: 'About the redoal network: run a node, build on it, or have something removed' - record_as: custody_requests -description: UHHM builds software for organisations that can say what problem they have, and keeps the redoal network underneath. -name: What brings you here? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/join/index.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/join/index.yaml deleted file mode 100644 index 450e4c6..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/join/index.yaml +++ /dev/null @@ -1,110 +0,0 @@ -alternatives: -- action: /received/collaborate - consequence: - - Get in touch - description: 'A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.' - encouragements: - - A person reads this, not a form filter — worth the ten minutes. - features: - - description: We read what you send and get back to you. If there's a fit, we invite you in and you start working with us — and if things ever change, that's fine too. - icon: lucide:route - name: What happens next - - description: One of the owners reads this directly — for anything urgent, write to bl@uhhm.no. - icon: lucide:user-check - name: Who reads this - - description: Tell us who you are and what kind of work you're after. - icon: lucide:handshake - name: Say hello - requirements: - - label: Name - name: name - placeholder: Your name - type: text - - label: Email - name: email - placeholder: you@example.com - type: email - - label: What kind of work - name: interest - placeholder: Backend work, or something design-heavy - type: textarea - - label: Tell us more - name: note - optional: true - placeholder: A bit about what you'd want to work on, or a link to your work - type: textarea - name: Work with us - record_as: applicants -- action: /received/subscribe - consequence: - - Sign up - description: You'd rather hear from us now and then than check back on your own. - encouragements: - - One click unsubscribes you later, no questions asked. - features: - - description: You're on the list. We write when there's something worth saying, and you can leave the list whenever you like. - icon: lucide:bell - name: What happens next - - description: An owner sends these notes directly — write to bl@uhhm.no if you'd rather ask something first. - icon: lucide:user-check - name: Who reads this - - description: Just your email, or your name too if you'd like. - icon: lucide:mail - name: Stay in the loop - requirements: - - label: Name - name: name - placeholder: Your name - type: text - - label: Email - name: email - placeholder: you@example.com - type: email - name: Hear from us now and then - record_as: subscribers -- action: /received/propose - consequence: - - Send change - description: You have spotted a page on uhhm.no that should read differently, and you know roughly how. - encouragements: - - Even a rough version helps — we can tidy the wording ourselves. - features: - - description: Someone here reads your proposal and either makes the change or explains why not. Either way, you'll hear back. - icon: lucide:route - name: What happens next - - description: An owner reads every proposal before anything changes — reach us at bl@uhhm.no if it's time-sensitive. - icon: lucide:user-check - name: Who reads this - - description: Point us to the page and show us the change. - icon: lucide:pencil - name: Propose a change - requirements: - - label: Your name - name: submitted_by - placeholder: Your name - type: text - - label: Email - name: email - optional: true - placeholder: you@example.com - type: email - - label: Which page - name: page - optional: true - placeholder: questions/join/index.yaml - type: text - - label: Why this is better - name: rationale - placeholder: The current heading doesn't say what you actually get - type: textarea - - label: Your proposed text - name: proposed_yaml - placeholder: 'heading: "A clearer way to say this"' - type: textarea - name: Suggest a change to this website - record_as: development_proposals -description: 'Three ways to be part of what UHHM builds: work with us, hear from us, or fix something on this site.' -name: How do you want to be part of this? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/owners/_section.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/owners/_section.yaml deleted file mode 100644 index 670fca7..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/owners/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: owners diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/owners/index.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/owners/index.yaml deleted file mode 100644 index a59e0b0..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/owners/index.yaml +++ /dev/null @@ -1,212 +0,0 @@ -alternatives: -- action: /owners - consequence: - - Confirm - description: People who've asked to build with us, waiting on a decision or already working alongside us. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: applicants - kind: kv - transitions: - - from: active - label: Mark departed - to: departed - - from: active - label: End collaboration - to: declined - - from: invited - label: Confirm active - to: active - - from: invited - label: Withdraw invite - to: declined - - from: open - label: Send invite - to: invited - - from: open - label: Decline applicant - to: declined - name: People who want to build with us -- action: /owners - consequence: - - Confirm - description: Questions and issues raised with the people who keep the first node - custodians handle these, but you can see where each one stands. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: custody_requests - kind: kv - transitions: [] - name: What's been raised with custodians -- action: /owners - consequence: - - Confirm - description: Changes visitors have proposed for pages on this site, waiting on a yes or no. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: development_proposals - kind: kv - transitions: - - from: open - label: Approve change - to: approved - - from: open - label: Reject change - to: rejected - name: Proposed changes to the site -- action: /owners - consequence: - - Confirm - description: Organizations you've met, tracked from first contact through to client and beyond. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: organizations - kind: kv - transitions: - - from: client - label: Mark past client - to: past_client - - from: prospect - label: Mark as client - to: client - - from: prospect - label: Mark not pursued - to: past_client - name: Organizations you're tracking -- action: /owners - consequence: - - Confirm - description: Briefs sent in by organizations with a problem they want solved. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: projects - kind: kv - transitions: - - from: open - label: Accept brief - to: accepted - - from: open - label: Decline brief - to: declined - name: Briefs waiting on a reply -- action: /owners - consequence: - - Confirm - description: People who want to hear from you now and then. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: subscribers - kind: kv - transitions: - - from: open - label: Unsubscribe them - to: unsubscribed - name: Who's hearing from you -- action: /owners - consequence: - - Confirm - description: Businesses who want to see their own workflow as a working site before committing to anything. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: trials - kind: kv - transitions: - - from: approved - label: Mark previewed - to: previewed - - from: approved - label: Decline trial - to: declined - - from: open - label: Approve trial - to: approved - - from: open - label: Decline trial - to: declined - name: Trial sites in progress -- action: /owners/prospect - consequence: - - Add prospect - description: Write down an organization worth following up, and track it from first contact onward. - name: Track a new organization -- action: /owners - consequence: - - Send invite - description: Bring someone in to help keep the first node and answer for the network. - features: - - description: '' - name: Invite a custodian - requirements: - - label: Their name - name: name - - label: Their email - name: email - type: email - invite: - group: custodians - name: Bring in a custodian -- action: /owners - consequence: - - Send invite - description: Bring someone in to work this desk alongside you. - features: - - description: '' - name: Invite an owner - requirements: - - label: Their name - name: name - - label: Their email - name: email - type: email - invite: - group: owners - name: Bring in another owner -- action: /owners - consequence: - - Confirm - description: People you've invited in, and whether they've taken it up yet. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Taken up - to: done - name: Invites you've sent -description: 'Everything waiting on you: briefs, trials, applicants, subscribers, and proposals, all in one place.' -name: What's waiting on me today? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/owners/prospect-sent.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/owners/prospect-sent.yaml deleted file mode 100644 index d49a1d4..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/owners/prospect-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: An owner walks it from prospect to client, and on to past client, as the relationship moves. - name: It's on the desk now -- action: /owners - consequence: - - Back to site - description: '' - name: Back to site -description: Thanks — we've got your prospect written down, and it now moves through the desk with everything else we're tracking. -name: What happens to this now? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/owners/prospect.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/owners/prospect.yaml deleted file mode 100644 index 581bd11..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/owners/prospect.yaml +++ /dev/null @@ -1,39 +0,0 @@ -alternatives: -- action: /owners/prospect-sent - consequence: - - Add to prospects - description: One line per organization worth watching, moved through the stages as things develop. - encouragements: - - Takes a minute, and it's yours to update later. - features: - - description: It sits as a prospect until something moves - then you mark it client, and later past client if the work ends. - icon: lucide:route - name: Moves as you update it - - description: Only you see this, so keep it wherever you check next. - icon: lucide:user - name: Just for you - - description: Name the organization and where things stand. - icon: lucide:briefcase - name: New prospect - requirements: - - label: Organization - name: name - placeholder: Nordvik Bakery - type: text - - label: Contact - name: contact - placeholder: met at the bakers' conference, [email protected] - type: text - - label: Note - name: note - optional: true - placeholder: wants a booking flow, follow up after harvest season - type: textarea - name: Keep an organization on your radar - record_as: organizations -description: Write down an organization worth following up, and move it through client and past client as things develop. -followup: false -name: Is there an organization I should be keeping track of? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/collaborate.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/collaborate.yaml deleted file mode 100644 index c612fe8..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/collaborate.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: If it looks like a fit, we'll reach out to talk about where you could help. - name: We'll write if there's a fit -- action: / - consequence: - - Back to site - description: '' - name: Back to site -description: Your note is in. An owner reads every one and will get back to you if there's a fit worth exploring. -name: What happens to what I just sent? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/commission.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/commission.yaml deleted file mode 100644 index 59e77bc..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/commission.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Expect a reply within a few working days, either way, straight to your inbox. - name: A real reply from someone who read it -- action: / - consequence: - - Back to home - description: '' - name: Back to home -description: Your brief is in. An owner reads every commission end to end before replying. -name: What happens now that we've sent our brief? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/custody.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/custody.yaml deleted file mode 100644 index 150966f..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/custody.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Expect a reply once your report has been looked at and the network checked. - name: A custodian is on it -- action: / - consequence: - - Back to the site - description: '' - name: Back to the site -description: A custodian reads every message about the redoal network and what it keeps. -name: Who looks after what the network keeps? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/propose.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/propose.yaml deleted file mode 100644 index 1ae02a9..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/propose.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: We'll write back once it's been read — approved and made live, or turned down with a reason. - name: A read, then a decision -- action: / - consequence: - - Back home - description: '' - name: Back home -description: Your proposal is in. Someone here will read it and decide whether it fits before anything changes on the page. -name: What happens to my proposal now? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/subscribe.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/subscribe.yaml deleted file mode 100644 index c2910bb..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/subscribe.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: You're on the list. Every note has an unsubscribe link if it stops being useful. - name: You're on the list -- action: / - consequence: - - Back to site - description: '' - name: Back to site -description: You'll hear from us when there's something worth saying, not on a schedule. -name: What happens now that I've subscribed? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/trial.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/trial.yaml deleted file mode 100644 index 586bcd3..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/questions/received/trial.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: If it looks like a fit, we'll draft your site from your own words and send it back for your say before anything goes live. - name: A first draft, built from your own words -- action: / - consequence: - - Back to site - description: '' - name: Back to site -description: We read every trial request ourselves before anything gets built. -name: What happens now that you've sent this? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/site.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/site.yaml deleted file mode 100644 index aa5de2a..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/site.yaml +++ /dev/null @@ -1,2 +0,0 @@ -lang: en -title: UHHM diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/words.json b/vendor/trainer/runs/uhhm-2026-09-23/r2/site/words.json deleted file mode 100644 index ebcf7c5..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r2/site/words.json +++ /dev/null @@ -1,426 +0,0 @@ -{ - "questions/build/index.yaml": { - "description": "Have a problem software should solve, or want to see your own way of working as a site before you pay anyone?", - "needs": { - "commission": { - "button": "Send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.", - "encouragement": "Someone here reads every brief in full before writing back.", - "form_description": "The more of the problem you put in, the better the reply.", - "form_title": "Tell us the problem", - "heading": "Have us build it: send the brief", - "hints": { - "email": "sara@company.com", - "name": "Sara Nilsen", - "org_contact": "Sara Nilsen, ops manager", - "organization": "Nilsen Transport AS", - "project": "Our drivers log hours on paper and it takes a day to get them into payroll." - }, - "icon": "briefcase", - "labels": { - "email": "Your email", - "name": "Your name", - "org_contact": "Who we should talk to", - "organization": "Your organization", - "project": "The problem you want solved" - }, - "road_description": "We read your brief and either take it on or tell you honestly if it's not a fit.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads it; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "trial": { - "button": "Start the draft", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.", - "encouragement": "A person looks at what you send before anything gets built.", - "form_description": "Answer in your own words - there's no wrong way to describe your business.", - "form_title": "Describe your business", - "heading": "See your own business as a site, before you buy anything", - "hints": { - "business": "Nilsen Transport AS", - "email": "sara@company.com", - "what_slows_us_down": "Approvals sit in someone's inbox for days before anyone acts on them.", - "what_we_do": "We move freight for local businesses and handle the paperwork for them.", - "what_we_keep_track_of": "Bookings, driver hours, and which loads are still waiting on a signature.", - "who_comes_to_us": "Local businesses that need something moved on short notice.", - "who_is_involved": "Drivers, dispatchers, and the customers waiting on their delivery." - }, - "icon": "layers", - "labels": { - "business": "Your business", - "email": "Your email", - "what_slows_us_down": "What slows you down", - "what_we_do": "What you do", - "what_we_keep_track_of": "What you keep track of", - "who_comes_to_us": "Who comes to you", - "who_is_involved": "Who's involved" - }, - "road_description": "We look at what you sent and, if it's a fit, build a draft from your own roles and words for you to see before anything moves further.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner looks at what you send; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "Do you have a brief, or do you want to see your business as a site first?" - }, - "questions/custodians/index.yaml": { - "buckets": { - "custody_requests": { - "description": "Cases from people who use, build on, or answer for something the redoal network touches, and need a custodian's word on it.", - "heading": "Custody cases waiting on you", - "moves": { - "in_dialogue->declined": "Close, no action", - "in_dialogue->resolved": "Mark resolved", - "open->declined": "Decline case", - "open->in_dialogue": "Open dialogue" - } - } - }, - "confirm": "Confirm", - "description": "The desk for custodians: open custody cases, and the people invited to answer them.", - "invited": { - "description": "Custodians invited but not yet signed in.", - "done": "Signed in", - "heading": "Invited custodians" - }, - "invites": { - "custodians": { - "button": "Invite custodian", - "description": "Give someone an account and a one-time link to join as a custodian.", - "form_title": "Invite a custodian", - "heading": "Bring in another custodian", - "labels": { - "email": "Email", - "name": "Name" - } - } - }, - "links": {}, - "question": "What is waiting on the custodians?" - }, - "questions/decide/subscribe.yaml": { - "description": "You're on our list. Change your mind whenever you like.", - "moves": { - "unsubscribed": { - "button": "Unsubscribe", - "description": "You'll stop hearing from us. Nothing else changes.", - "heading": "Stop getting notes from us" - } - }, - "question": "Do you want to keep hearing from us?" - }, - "questions/index.yaml": { - "description": "UHHM builds software for organisations that can say what problem they have, and keeps the redoal network underneath.", - "doors": { - "build": { - "button": "Start here", - "description": "Send us a brief, or describe how work flows through your business and see it as a working site before you pay for anything.", - "for_whom": "For an organisation with a problem, or a business sizing us up", - "heading": "Get software built, or try a site for your business first", - "icon": "hammer" - }, - "join": { - "button": "Start here", - "description": "Join us as a collaborator, get a note now and then, or suggest a change to a page on uhhm.no.", - "for_whom": "For anyone who wants in, on their own terms", - "heading": "Work with us, hear from us, or change this website", - "icon": "handshake" - } - }, - "needs": { - "custody": { - "button": "Send to a custodian", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at.", - "encouragement": "A custodian reads every message that comes in here.", - "form_description": "Say which of the four it is, and what you need, in a few lines.", - "form_title": "Reach a custodian", - "heading": "About the redoal network: run a node, build on it, or have something removed", - "hints": { - "about": "We run our order system on a relay node and it's been dropping messages since Tuesday", - "email": "you@yourcompany.com", - "name": "Your name", - "what": "A relay node is misbehaving" - }, - "icon": "shield", - "labels": { - "about": "What's going on", - "email": "Email", - "name": "Name", - "what": "In short" - }, - "road_description": "A custodian opens a dialogue with you. A node gets its peer, a builder gets an answer, and something the network should not keep gets removed. Either way you hear what was decided.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A custodian reads it directly; if it's urgent, write to bl@uhhm.no in the meantime.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "What brings you here?" - }, - "questions/join/index.yaml": { - "description": "Three ways to be part of what UHHM builds: work with us, hear from us, or fix something on this site.", - "needs": { - "collaborate": { - "button": "Get in touch", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.", - "encouragement": "A person reads this, not a form filter — worth the ten minutes.", - "form_description": "Tell us who you are and what kind of work you're after.", - "form_title": "Say hello", - "heading": "Work with us", - "hints": { - "email": "you@example.com", - "interest": "Backend work, or something design-heavy", - "name": "Your name", - "note": "A bit about what you'd want to work on, or a link to your work" - }, - "icon": "handshake", - "labels": { - "email": "Email", - "interest": "What kind of work", - "name": "Name", - "note": "Tell us more" - }, - "road_description": "We read what you send and get back to you. If there's a fit, we invite you in and you start working with us — and if things ever change, that's fine too.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads this directly — for anything urgent, write to bl@uhhm.no.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "propose": { - "button": "Send change", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how.", - "encouragement": "Even a rough version helps — we can tidy the wording ourselves.", - "form_description": "Point us to the page and show us the change.", - "form_title": "Propose a change", - "heading": "Suggest a change to this website", - "hints": { - "email": "you@example.com", - "page": "questions/join/index.yaml", - "proposed_yaml": "heading: \"A clearer way to say this\"", - "rationale": "The current heading doesn't say what you actually get", - "submitted_by": "Your name" - }, - "icon": "pencil", - "labels": { - "email": "Email", - "page": "Which page", - "proposed_yaml": "Your proposed text", - "rationale": "Why this is better", - "submitted_by": "Your name" - }, - "road_description": "Someone here reads your proposal and either makes the change or explains why not. Either way, you'll hear back.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner reads every proposal before anything changes — reach us at bl@uhhm.no if it's time-sensitive.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "subscribe": { - "button": "Sign up", - "description": "You'd rather hear from us now and then than check back on your own.", - "encouragement": "One click unsubscribes you later, no questions asked.", - "form_description": "Just your email, or your name too if you'd like.", - "form_title": "Stay in the loop", - "heading": "Hear from us now and then", - "hints": { - "email": "you@example.com", - "name": "Your name" - }, - "icon": "mail", - "labels": { - "email": "Email", - "name": "Name" - }, - "road_description": "You're on the list. We write when there's something worth saying, and you can leave the list whenever you like.", - "road_icon": "bell", - "road_title": "What happens next", - "who_description": "An owner sends these notes directly — write to bl@uhhm.no if you'd rather ask something first.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "How do you want to be part of this?" - }, - "questions/owners/index.yaml": { - "buckets": { - "applicants": { - "description": "People who've asked to build with us, waiting on a decision or already working alongside us.", - "heading": "People who want to build with us", - "moves": { - "active->declined": "End collaboration", - "active->departed": "Mark departed", - "invited->active": "Confirm active", - "invited->declined": "Withdraw invite", - "open->declined": "Decline applicant", - "open->invited": "Send invite" - } - }, - "custody_requests": { - "description": "Questions and issues raised with the people who keep the first node - custodians handle these, but you can see where each one stands.", - "heading": "What's been raised with custodians", - "moves": {} - }, - "development_proposals": { - "description": "Changes visitors have proposed for pages on this site, waiting on a yes or no.", - "heading": "Proposed changes to the site", - "moves": { - "open->approved": "Approve change", - "open->rejected": "Reject change" - } - }, - "organizations": { - "description": "Organizations you've met, tracked from first contact through to client and beyond.", - "heading": "Organizations you're tracking", - "moves": { - "client->past_client": "Mark past client", - "prospect->client": "Mark as client", - "prospect->past_client": "Mark not pursued" - } - }, - "projects": { - "description": "Briefs sent in by organizations with a problem they want solved.", - "heading": "Briefs waiting on a reply", - "moves": { - "open->accepted": "Accept brief", - "open->declined": "Decline brief" - } - }, - "subscribers": { - "description": "People who want to hear from you now and then.", - "heading": "Who's hearing from you", - "moves": { - "open->unsubscribed": "Unsubscribe them" - } - }, - "trials": { - "description": "Businesses who want to see their own workflow as a working site before committing to anything.", - "heading": "Trial sites in progress", - "moves": { - "approved->declined": "Decline trial", - "approved->previewed": "Mark previewed", - "open->approved": "Approve trial", - "open->declined": "Decline trial" - } - } - }, - "confirm": "Confirm", - "description": "Everything waiting on you: briefs, trials, applicants, subscribers, and proposals, all in one place.", - "invited": { - "description": "People you've invited in, and whether they've taken it up yet.", - "done": "Taken up", - "heading": "Invites you've sent" - }, - "invites": { - "custodians": { - "button": "Send invite", - "description": "Bring someone in to help keep the first node and answer for the network.", - "form_title": "Invite a custodian", - "heading": "Bring in a custodian", - "labels": { - "email": "Their email", - "name": "Their name" - } - }, - "owners": { - "button": "Send invite", - "description": "Bring someone in to work this desk alongside you.", - "form_title": "Invite an owner", - "heading": "Bring in another owner", - "labels": { - "email": "Their email", - "name": "Their name" - } - } - }, - "links": { - "prospect": { - "button": "Add prospect", - "description": "Write down an organization worth following up, and track it from first contact onward.", - "heading": "Track a new organization" - } - }, - "question": "What's waiting on me today?" - }, - "questions/owners/prospect-sent.yaml": { - "back": "Back to site", - "description": "Thanks — we've got your prospect written down, and it now moves through the desk with everything else we're tracking.", - "next_description": "An owner walks it from prospect to client, and on to past client, as the relationship moves.", - "next_heading": "It's on the desk now", - "question": "What happens to this now?" - }, - "questions/owners/prospect.yaml": { - "button": "Add to prospects", - "description": "One line per organization worth watching, moved through the stages as things develop.", - "encouragement": "Takes a minute, and it's yours to update later.", - "form_description": "Name the organization and where things stand.", - "form_title": "New prospect", - "heading": "Keep an organization on your radar", - "hints": { - "contact": "met at the bakers' conference, [email protected]", - "name": "Nordvik Bakery", - "note": "wants a booking flow, follow up after harvest season" - }, - "icon": "briefcase", - "labels": { - "contact": "Contact", - "name": "Organization", - "note": "Note" - }, - "page_description": "Write down an organization worth following up, and move it through client and past client as things develop.", - "question": "Is there an organization I should be keeping track of?", - "road_description": "It sits as a prospect until something moves - then you mark it client, and later past client if the work ends.", - "road_icon": "route", - "road_title": "Moves as you update it", - "who_description": "Only you see this, so keep it wherever you check next.", - "who_icon": "user", - "who_title": "Just for you" - }, - "questions/received/collaborate.yaml": { - "back": "Back to site", - "description": "Your note is in. An owner reads every one and will get back to you if there's a fit worth exploring.", - "next_description": "If it looks like a fit, we'll reach out to talk about where you could help.", - "next_heading": "We'll write if there's a fit", - "question": "What happens to what I just sent?" - }, - "questions/received/commission.yaml": { - "back": "Back to home", - "description": "Your brief is in. An owner reads every commission end to end before replying.", - "next_description": "Expect a reply within a few working days, either way, straight to your inbox.", - "next_heading": "A real reply from someone who read it", - "question": "What happens now that we've sent our brief?" - }, - "questions/received/custody.yaml": { - "back": "Back to the site", - "description": "A custodian reads every message about the redoal network and what it keeps.", - "next_description": "Expect a reply once your report has been looked at and the network checked.", - "next_heading": "A custodian is on it", - "question": "Who looks after what the network keeps?" - }, - "questions/received/propose.yaml": { - "back": "Back home", - "description": "Your proposal is in. Someone here will read it and decide whether it fits before anything changes on the page.", - "next_description": "We'll write back once it's been read — approved and made live, or turned down with a reason.", - "next_heading": "A read, then a decision", - "question": "What happens to my proposal now?" - }, - "questions/received/subscribe.yaml": { - "back": "Back to site", - "description": "You'll hear from us when there's something worth saying, not on a schedule.", - "next_description": "You're on the list. Every note has an unsubscribe link if it stops being useful.", - "next_heading": "You're on the list", - "question": "What happens now that I've subscribed?" - }, - "questions/received/trial.yaml": { - "back": "Back to site", - "description": "We read every trial request ourselves before anything gets built.", - "next_description": "If it looks like a fit, we'll draft your site from your own words and send it back for your say before anything goes live.", - "next_heading": "A first draft, built from your own words", - "question": "What happens now that you've sent this?" - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/answers-full.jsonl b/vendor/trainer/runs/uhhm-2026-09-23/r3/answers-full.jsonl deleted file mode 100644 index 9fade07..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/answers-full.jsonl +++ /dev/null @@ -1,27 +0,0 @@ -{"choice":"You run an organization that needs software built","confidence":0.95,"id":"architecture-firm@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"architecture-firm@/build"} -{"choice":"You run an organization that needs software built","confidence":0.95,"id":"climbing-gym-founder@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"climbing-gym-founder@/build"} -{"choice":"You run an organization that needs software built","confidence":0.95,"id":"municipality-buyer@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"municipality-buyer@/build"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"exhibition-visitor@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"exhibition-visitor@/join"} -{"choice":"You run an organization that needs software built","confidence":0.95,"id":"tech-journalist@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"tech-journalist@/join"} -{"choice":"You want to join us, follow us, or fix a page on this site","confidence":0.95,"id":"rust-developer@/"} -{"choice":"Work with us","confidence":0.95,"id":"rust-developer@/join"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"interaction-designer@/"} -{"choice":"Work with us","confidence":0.95,"id":"interaction-designer@/join"} -{"choice":"You want to join us, follow us, or fix a page on this site","confidence":0.95,"id":"student-intern@/"} -{"choice":"Work with us","confidence":0.95,"id":"student-intern@/join"} -{"choice":"You run an organization that needs software built","confidence":0.95,"id":"plumber-owner@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"plumber-owner@/build"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"dance-school@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"dance-school@/build"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":1.0,"id":"node-runner@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"recorded-name@/"} -{"choice":"You run an organization that needs software built","confidence":0.95,"id":"app-builder@/"} -{"choice":"You want to join us, follow us, or fix a page on this site","confidence":0.95,"id":"wording-fix@/"} -{"choice":"Suggest a change to this website","confidence":0.95,"id":"wording-fix@/join"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":1.0,"id":"rewrite@/"} -{"choice":"Suggest a change to this website","confidence":1.0,"id":"rewrite@/join"} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/answers-skim.jsonl b/vendor/trainer/runs/uhhm-2026-09-23/r3/answers-skim.jsonl deleted file mode 100644 index 1d0413d..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/answers-skim.jsonl +++ /dev/null @@ -1,27 +0,0 @@ -{"choice":"You run an organization that needs software built","confidence":0.95,"id":"architecture-firm@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"architecture-firm@/build"} -{"choice":"You run an organization that needs software built","confidence":0.95,"id":"climbing-gym-founder@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"climbing-gym-founder@/build"} -{"choice":"You run an organization that needs software built","confidence":0.95,"id":"municipality-buyer@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"municipality-buyer@/build"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"exhibition-visitor@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"exhibition-visitor@/join"} -{"choice":"You run an organization that needs software built","confidence":0.95,"id":"tech-journalist@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"tech-journalist@/join"} -{"choice":"You want to join us, follow us, or fix a page on this site","confidence":0.95,"id":"rust-developer@/"} -{"choice":"Work with us","confidence":0.95,"id":"rust-developer@/join"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"interaction-designer@/"} -{"choice":"Work with us","confidence":0.95,"id":"interaction-designer@/join"} -{"choice":"You want to join us, follow us, or fix a page on this site","confidence":0.95,"id":"student-intern@/"} -{"choice":"Work with us","confidence":0.95,"id":"student-intern@/join"} -{"choice":"You run an organization that needs software built","confidence":0.95,"id":"plumber-owner@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"plumber-owner@/build"} -{"choice":"You want to join us, follow us, or fix a page on this site","confidence":0.95,"id":"dance-school@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"dance-school@/build"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"node-runner@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"recorded-name@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"app-builder@/"} -{"choice":"You want to join us, follow us, or fix a page on this site","confidence":0.95,"id":"wording-fix@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"wording-fix@/join"} -{"choice":"You want to join us, follow us, or fix a page on this site","confidence":0.95,"id":"rewrite@/"} -{"choice":"Suggest a change to this website","confidence":0.95,"id":"rewrite@/join"} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/rated/rate.json b/vendor/trainer/runs/uhhm-2026-09-23/r3/rated/rate.json deleted file mode 100644 index e61a44b..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/rated/rate.json +++ /dev/null @@ -1,274 +0,0 @@ -{ - "collaborate": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 29.517543859649123, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 3, - "required_fields": 0, - "understanding": { - "asked": 3, - "next": null, - "where": 3, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 19.40740740740741, - "options": 3, - "overloaded": false, - "page": "/join", - "personas": 3, - "required_fields": 3, - "understanding": { - "asked": 3, - "next": 3, - "where": 3, - "which": 3 - } - } - ], - "steps": 2 - }, - "commission": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 29.517543859649123, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 3, - "required_fields": 0, - "understanding": { - "asked": 3, - "next": null, - "where": 2, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 31.056192660550458, - "options": 2, - "overloaded": false, - "page": "/build", - "personas": 3, - "required_fields": 4, - "understanding": { - "asked": 3, - "next": 3, - "where": 3, - "which": 3 - } - } - ], - "steps": 2 - }, - "custody": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 30.00409836065574, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 3, - "required_fields": 4, - "understanding": { - "asked": 3, - "next": 3, - "where": 3, - "which": 3 - } - } - ], - "steps": 1 - }, - "propose": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 29.517543859649123, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 23.11111111111111, - "options": 3, - "overloaded": false, - "page": "/join", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "subscribe": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 29.517543859649123, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 2 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 21.1010101010101, - "options": 3, - "overloaded": false, - "page": "/join", - "personas": 2, - "required_fields": 2, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - }, - "trial": { - "pages": [ - { - "control": { - "asked": 0, - "next": null, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": false, - "lix": 29.517543859649123, - "options": 3, - "overloaded": false, - "page": "/", - "personas": 2, - "required_fields": 0, - "understanding": { - "asked": 2, - "next": null, - "where": 2, - "which": 1 - } - }, - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 32.95073891625616, - "options": 2, - "overloaded": true, - "page": "/build", - "personas": 2, - "required_fields": 6, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 2 - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/score.log b/vendor/trainer/runs/uhhm-2026-09-23/r3/score.log deleted file mode 100644 index 6327a13..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/score.log +++ /dev/null @@ -1,34 +0,0 @@ -== answer full -== answer skim -== score full -MISROUTE: architecture-firm@/build: picked "See your own business as a site, before you buy anything" (0.95), the need is met by ["Have us build it: send the brief"] -MISROUTE: climbing-gym-founder@/build: picked "See your own business as a site, before you buy anything" (0.95), the need is met by ["Have us build it: send the brief"] -MISROUTE: exhibition-visitor@/: picked "You are on the redoal network: a node, an app, or a recording that concerns you" (0.95), the need is met by ["You want to join us, follow us, or fix a page on this site"] -MISROUTE: tech-journalist@/: picked "You run an organization that needs software built" (0.95), the need is met by ["You want to join us, follow us, or fix a page on this site"] -MISROUTE: interaction-designer@/: picked "You are on the redoal network: a node, an app, or a recording that concerns you" (0.95), the need is met by ["You want to join us, follow us, or fix a page on this site"] -MISROUTE: dance-school@/: picked "You are on the redoal network: a node, an app, or a recording that concerns you" (0.95), the need is met by ["You run an organization that needs software built"] -MISROUTE: app-builder@/: picked "You run an organization that needs software built" (0.95), the need is met by ["You are on the redoal network: a node, an app, or a recording that concerns you"] -MISROUTE: rewrite@/: picked "You are on the redoal network: a node, an app, or a recording that concerns you" (1.00), the need is met by ["You want to join us, follow us, or fix a page on this site"] -wording: 19/27 routed right (70%) -== score skim -MISROUTE: exhibition-visitor@/: picked "You are on the redoal network: a node, an app, or a recording that concerns you" (0.95), the need is met by ["You want to join us, follow us, or fix a page on this site"] -MISROUTE: tech-journalist@/: picked "You run an organization that needs software built" (0.95), the need is met by ["You want to join us, follow us, or fix a page on this site"] -MISROUTE: interaction-designer@/: picked "You are on the redoal network: a node, an app, or a recording that concerns you" (0.95), the need is met by ["You want to join us, follow us, or fix a page on this site"] -MISROUTE: dance-school@/: picked "You want to join us, follow us, or fix a page on this site" (0.95), the need is met by ["You run an organization that needs software built"] -MISROUTE: dance-school@/build: picked "Have us build it: send the brief" (0.95), the need is met by ["See your own business as a site, before you buy anything"] -MISROUTE: wording-fix@/join: picked "Hear from us now and then" (0.95), the need is met by ["Suggest a change to this website"] -wording: 21/27 routed right (78%) -== rate -need LIX which where asked next gutted twin says page load -commission @/ 30 very easy 1/3 2/3 3/3 - 0/0/0/- ok 3 options, 0 required -commission @/build 31 easy 3/3 3/3 3/3 3/3 0/0/0/0 ok 2 options, 4 required -trial @/ 30 very easy 1/2 2/2 2/2 - 0/0/0/- ok 3 options, 0 required -trial @/build 33 easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 2 options, 6 required - SPLIT -collaborate @/ 30 very easy 2/3 3/3 3/3 - 0/0/0/- ok 3 options, 0 required -collaborate @/join 19 very easy 3/3 3/3 3/3 3/3 0/0/0/0 ok 3 options, 3 required -subscribe @/ 30 very easy 2/2 2/2 2/2 - 0/0/0/- ok 3 options, 0 required -subscribe @/join 21 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 3 options, 2 required -propose @/ 30 very easy 1/2 2/2 2/2 - 0/0/0/- ok 3 options, 0 required -propose @/join 23 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 3 options, 3 required -custody 30 easy 3/3 3/3 3/3 3/3 0/0/0/0 ok 3 options, 4 required -== done diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/aggregates.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/aggregates.yaml deleted file mode 100644 index cccafd2..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/aggregates.yaml +++ /dev/null @@ -1,113 +0,0 @@ -aggregates: -- bucket: applicants - initial: open - states: - active: - event: onboarded - declined: - event: declined - departed: - event: departed - invited: - event: invited - open: - event: applied - transitions: - active: - - departed - - declined - invited: - - active - - declined - open: - - invited - - declined -- bucket: custody_requests - initial: open - states: - declined: - event: declined - in_dialogue: - event: in_dialogue - open: - event: received - resolved: - event: resolved - transitions: - in_dialogue: - - resolved - - declined - open: - - in_dialogue - - declined -- bucket: development_proposals - initial: open - states: - approved: - event: approved - open: - event: proposed - rejected: - event: rejected - transitions: - open: - - approved - - rejected -- bucket: organizations - initial: prospect - states: - client: - event: became_client - past_client: - event: churned - prospect: - event: identified - transitions: - client: - - past_client - prospect: - - client - - past_client -- bucket: projects - initial: open - states: - accepted: - event: accepted - declined: - event: declined - open: - event: submitted - transitions: - open: - - accepted - - declined -- bucket: subscribers - initial: open - states: - open: - event: subscribed - unsubscribed: - event: unsubscribed - transitions: - open: - - unsubscribed -- attended_by: | - approved -> previewed: the n8n workflow that builds the draft site from an approved intake (docker, rauthy, portal content) and sends the preview link. Until it exists, owners run portal-trainer by hand and press the button. - bucket: trials - initial: open - states: - approved: - event: approved - declined: - event: declined - open: - event: received - previewed: - event: previewed - transitions: - approved: - - previewed - - declined - open: - - approved - - declined diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/01-questions_build_index.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/01-questions_build_index.yaml.md deleted file mode 100644 index 8517c6a..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/01-questions_build_index.yaml.md +++ /dev/null @@ -1,174 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/build/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "commission": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "name": "", - "org_contact": "", - "organization": "", - "project": "" - }, - "icon": "", - "labels": { - "email": "", - "name": "", - "org_contact": "", - "organization": "", - "project": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "trial": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "business": "", - "email": "", - "what_slows_us_down": "", - "what_we_do": "", - "what_we_keep_track_of": "", - "who_comes_to_us": "", - "who_is_involved": "" - }, - "icon": "", - "labels": { - "business": "", - "email": "", - "what_slows_us_down": "", - "what_we_do": "", - "what_we_keep_track_of": "", - "who_comes_to_us": "", - "who_is_involved": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Have a problem software should solve, or want to see your own way of working as a site before you pay anyone?", - "needs": { - "commission": { - "button": "Send the brief", - "description": "You know the problem and want it solved. Write it up and send it to people who will read the whole thing.", - "encouragement": "Someone here reads every brief in full before writing back.", - "form_description": "The more of the problem you put in, the better the reply.", - "form_title": "Tell us the problem", - "heading": "A considered reply to your brief", - "hints": { - "email": "sara@company.com", - "name": "Sara Nilsen", - "org_contact": "Sara Nilsen, ops manager", - "organization": "Nilsen Transport AS", - "project": "Our drivers log hours on paper and it takes a day to get them into payroll." - }, - "icon": "briefcase", - "labels": { - "email": "Your email", - "name": "Your name", - "org_contact": "Who we should talk to", - "organization": "Your organization", - "project": "The problem you want solved" - }, - "road_description": "We read your brief and either take it on or tell you honestly if it's not a fit.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads it; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "trial": { - "button": "Start the draft", - "description": "See your own requests, approvals and handovers as a working site, before you commit to anything.", - "encouragement": "A person looks at what you send before anything gets built.", - "form_description": "Answer in your own words - there's no wrong way to describe your business.", - "form_title": "Describe your business", - "heading": "A first draft of your own site", - "hints": { - "business": "Nilsen Transport AS", - "email": "sara@company.com", - "what_slows_us_down": "Approvals sit in someone's inbox for days before anyone acts on them.", - "what_we_do": "We move freight for local businesses and handle the paperwork for them.", - "what_we_keep_track_of": "Bookings, driver hours, and which loads are still waiting on a signature.", - "who_comes_to_us": "Local businesses that need something moved on short notice.", - "who_is_involved": "Drivers, dispatchers, and the customers waiting on their delivery." - }, - "icon": "layers", - "labels": { - "business": "Your business", - "email": "Your email", - "what_slows_us_down": "What slows you down", - "what_we_do": "What you do", - "what_we_keep_track_of": "What you keep track of", - "who_comes_to_us": "Who comes to you", - "who_is_involved": "Who's involved" - }, - "road_description": "We look at what you sent and, if it's a fit, build a draft from your own roles and words for you to see before anything moves further.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner looks at what you send; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "Do you already know the problem, or do you want to see your own business as a site first?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/02-questions_custodians_index.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/02-questions_custodians_index.yaml.md deleted file mode 100644 index c9aeeb9..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/02-questions_custodians_index.yaml.md +++ /dev/null @@ -1,108 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/custodians/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. Under `invites`, each entry is a form that invites a person into that group - they get an account and a one-time link - and `invited` is the list of invites sent. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "custody_requests": { - "description": "", - "heading": "", - "moves": { - "in_dialogue->declined": "declined>", - "in_dialogue->resolved": "resolved>", - "open->declined": "declined>", - "open->in_dialogue": "in_dialogue>" - } - } - }, - "confirm": "", - "description": "", - "invited": { - "description": "", - "done": "", - "heading": "" - }, - "invites": { - "custodians": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "email": "", - "name": "" - } - } - }, - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "custody_requests": { - "description": "Cases from people who use, build on, or answer for something the redoal network touches, and need a custodian's word on it.", - "heading": "Custody cases waiting on you", - "moves": { - "in_dialogue->declined": "Close, no action", - "in_dialogue->resolved": "Mark resolved", - "open->declined": "Decline case", - "open->in_dialogue": "Open dialogue" - } - } - }, - "confirm": "Send invite", - "description": "The desk for custodians: open custody cases, and the people invited to answer them.", - "invited": { - "description": "Custodians invited but not yet signed in.", - "done": "Signed in", - "heading": "Invited custodians" - }, - "invites": { - "custodians": { - "button": "Invite custodian", - "description": "Give someone an account and a one-time link to join as a custodian.", - "form_title": "Invite a custodian", - "heading": "Bring in another custodian", - "labels": { - "email": "Email", - "name": "Name" - } - } - }, - "links": {}, - "question": "What does the network owe the people it affects, right now?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/03-questions_decide_subscribe.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/03-questions_decide_subscribe.yaml.md deleted file mode 100644 index 729c7c0..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/03-questions_decide_subscribe.yaml.md +++ /dev/null @@ -1,60 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/decide/subscribe.yaml -It is a page the person who sent a form reaches later, through a private link, to make a decision that is theirs: under `moves`, each entry is one thing they can decide. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "moves": { - "unsubscribed": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "You're on our list. Change your mind whenever you like.", - "moves": { - "unsubscribed": { - "button": "Unsubscribe", - "description": "You'll stop hearing from us. Nothing else changes.", - "heading": "Stop getting notes from us" - } - }, - "question": "Do you want to keep hearing from us?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/04-questions_index.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/04-questions_index.yaml.md deleted file mode 100644 index e11b912..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/04-questions_index.yaml.md +++ /dev/null @@ -1,136 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/index.yaml -It is the front door: the first page any visitor sees. `question` is the page's one question. Under `doors`, each entry is one alternative that leads to a page of its own for one kind of visitor: its heading must let that visitor recognise themselves from the heading alone. Under `needs`, each entry is one alternative with a form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "doors": { - "build": { - "button": "", - "description": "", - "for_whom": "", - "heading": "", - "icon": "" - }, - "join": { - "button": "", - "description": "", - "for_whom": "", - "heading": "", - "icon": "" - } - }, - "needs": { - "custody": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "about": "", - "email": "", - "name": "", - "what": "" - }, - "icon": "", - "labels": { - "about": "", - "email": "", - "name": "", - "what": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "UHHM builds software for organisations that can say what problem they have, and keeps the redoal network underneath.", - "doors": { - "build": { - "button": "Start here", - "description": "Send us the problem, or try your own workflow as a working site before you pay for anything.", - "for_whom": "For an organisation with a problem, or a business sizing us up", - "heading": "Get software built around your problem", - "icon": "hammer" - }, - "join": { - "button": "Start here", - "description": "Build with us, hear from us now and then, or tell us what should change on this page.", - "for_whom": "For anyone who wants in, on their own terms", - "heading": "Work with us, or just stay in touch", - "icon": "handshake" - } - }, - "needs": { - "custody": { - "button": "Send to a custodian", - "description": "For anyone who runs on, builds on, or is affected by the redoal network and needs to reach the people who keep its first node.", - "encouragement": "A custodian reads every message that comes in here.", - "form_description": "Tell us what the network is doing, or not doing, and how we can reach you.", - "form_title": "Reach a custodian", - "heading": "Get an answer from the people who keep the network", - "hints": { - "about": "We run our order system on a relay node and it's been dropping messages since Tuesday", - "email": "you@yourcompany.com", - "name": "Your name", - "what": "A relay node is misbehaving" - }, - "icon": "shield", - "labels": { - "about": "What's going on", - "email": "Email", - "name": "Name", - "what": "In short" - }, - "road_description": "We open it and start a dialogue with you. Once we understand what the network is keeping that it shouldn't, we work it through to resolved, or tell you plainly if we can't.", - "road_icon": "route", - "road_title": "What happens next", - "who_title": "Who reads this", - "who_icon": "user-check", - "who_description": "A custodian reads it directly; if it's urgent, write to bl@uhhm.no in the meantime." - } - }, - "question": "What brings you here?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/05-questions_join_index.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/05-questions_join_index.yaml.md deleted file mode 100644 index 493c581..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/05-questions_join_index.yaml.md +++ /dev/null @@ -1,208 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/join/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "collaborate": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "interest": "", - "name": "", - "note": "" - }, - "icon": "", - "labels": { - "email": "", - "interest": "", - "name": "", - "note": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "propose": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "page": "", - "proposed_yaml": "", - "rationale": "", - "submitted_by": "" - }, - "icon": "", - "labels": { - "email": "", - "page": "", - "proposed_yaml": "", - "rationale": "", - "submitted_by": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "subscribe": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "name": "" - }, - "icon": "", - "labels": { - "email": "", - "name": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Three ways to be part of what UHHM builds: work with us, hear from us, or fix something on this site.", - "needs": { - "collaborate": { - "button": "Get in touch", - "description": "You want to build software with people who read the whole brief, not just the summary.", - "encouragement": "A person reads this, not a form filter — worth the ten minutes.", - "form_description": "Tell us who you are and what kind of work you're after.", - "form_title": "Say hello", - "heading": "Work with people who read the whole thing", - "hints": { - "email": "you@example.com", - "interest": "Backend work, or something design-heavy", - "name": "Your name", - "note": "A bit about what you'd want to work on, or a link to your work" - }, - "icon": "handshake", - "labels": { - "email": "Email", - "interest": "What kind of work", - "name": "Name", - "note": "Tell us more" - }, - "road_description": "We read what you send and get back to you. If there's a fit, we invite you in and you start working with us — and if things ever change, that's fine too.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads this directly — for anything urgent, write to bl@uhhm.no.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "propose": { - "button": "Send change", - "description": "You've spotted something on this site that should read differently, and you know roughly how.", - "encouragement": "Even a rough version helps — we can tidy the wording ourselves.", - "form_description": "Point us to the page and show us the change.", - "form_title": "Propose a change", - "heading": "Get a page fixed the way you'd write it", - "hints": { - "email": "you@example.com", - "page": "questions/join/index.yaml", - "proposed_yaml": "heading: \"A clearer way to say this\"", - "rationale": "The current heading doesn't say what you actually get", - "submitted_by": "Your name" - }, - "icon": "pencil", - "labels": { - "email": "Email", - "page": "Which page", - "proposed_yaml": "Your proposed text", - "rationale": "Why this is better", - "submitted_by": "Your name" - }, - "road_description": "Someone here reads your proposal and either makes the change or explains why not. Either way, you'll hear back.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner reads every proposal before anything changes — reach us at bl@uhhm.no if it's time-sensitive.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "subscribe": { - "button": "Sign up", - "description": "You'd rather hear from us now and then than check back on your own.", - "encouragement": "One click unsubscribes you later, no questions asked.", - "form_description": "Just your email, or your name too if you'd like.", - "form_title": "Stay in the loop", - "heading": "Hear from us only when there's something to say", - "hints": { - "email": "you@example.com", - "name": "Your name" - }, - "icon": "mail", - "labels": { - "email": "Email", - "name": "Name" - }, - "road_description": "You're on the list. We write when there's something worth saying, and you can leave the list whenever you like.", - "road_icon": "bell", - "road_title": "What happens next", - "who_description": "An owner sends these notes directly — write to bl@uhhm.no if you'd rather ask something first.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "How do you want to be part of this?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/06-questions_owners_index.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/06-questions_owners_index.yaml.md deleted file mode 100644 index 56e3fe7..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/06-questions_owners_index.yaml.md +++ /dev/null @@ -1,236 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/owners/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. Under `invites`, each entry is a form that invites a person into that group - they get an account and a one-time link - and `invited` is the list of invites sent. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "applicants": { - "description": "", - "heading": "", - "moves": { - "active->declined": "declined>", - "active->departed": "departed>", - "invited->active": "active>", - "invited->declined": "declined>", - "open->declined": "declined>", - "open->invited": "invited>" - } - }, - "custody_requests": { - "description": "", - "heading": "", - "moves": {} - }, - "development_proposals": { - "description": "", - "heading": "", - "moves": { - "open->approved": "approved>", - "open->rejected": "rejected>" - } - }, - "organizations": { - "description": "", - "heading": "", - "moves": { - "client->past_client": "past_client>", - "prospect->client": "client>", - "prospect->past_client": "past_client>" - } - }, - "projects": { - "description": "", - "heading": "", - "moves": { - "open->accepted": "accepted>", - "open->declined": "declined>" - } - }, - "subscribers": { - "description": "", - "heading": "", - "moves": { - "open->unsubscribed": "unsubscribed>" - } - }, - "trials": { - "description": "", - "heading": "", - "moves": { - "approved->declined": "declined>", - "approved->previewed": "previewed>", - "open->approved": "approved>", - "open->declined": "declined>" - } - } - }, - "confirm": "", - "description": "", - "invited": { - "description": "", - "done": "", - "heading": "" - }, - "invites": { - "custodians": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "email": "", - "name": "" - } - }, - "owners": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "email": "", - "name": "" - } - } - }, - "links": { - "prospect": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "buckets": { - "applicants": { - "description": "People who've asked to build with us, waiting on a decision or already working alongside us.", - "heading": "People who want to build with us", - "moves": { - "active->declined": "End collaboration", - "active->departed": "Mark departed", - "invited->active": "Confirm active", - "invited->declined": "Withdraw invite", - "open->declined": "Decline applicant", - "open->invited": "Send invite" - } - }, - "custody_requests": { - "description": "Questions and issues raised with the people who keep the first node - custodians handle these, but you can see where each one stands.", - "heading": "What's been raised with custodians", - "moves": {} - }, - "development_proposals": { - "description": "Changes visitors have proposed for pages on this site, waiting on a yes or no.", - "heading": "Proposed changes to the site", - "moves": { - "open->approved": "Approve change", - "open->rejected": "Reject change" - } - }, - "organizations": { - "description": "Organizations you've met, tracked from first contact through to client and beyond.", - "heading": "Organizations you're tracking", - "moves": { - "client->past_client": "Mark past client", - "prospect->client": "Mark as client", - "prospect->past_client": "Mark not pursued" - } - }, - "projects": { - "description": "Briefs sent in by organizations with a problem they want solved.", - "heading": "Briefs waiting on a reply", - "moves": { - "open->accepted": "Accept brief", - "open->declined": "Decline brief" - } - }, - "subscribers": { - "description": "People who want to hear from you now and then.", - "heading": "Who's hearing from you", - "moves": { - "open->unsubscribed": "Unsubscribe them" - } - }, - "trials": { - "description": "Businesses who want to see their own workflow as a working site before committing to anything.", - "heading": "Trial sites in progress", - "moves": { - "approved->declined": "Decline trial", - "approved->previewed": "Mark previewed", - "open->approved": "Approve trial", - "open->declined": "Decline trial" - } - } - }, - "confirm": "Confirm", - "description": "Everything waiting on you: briefs, trials, applicants, subscribers, and proposals, all in one place.", - "invited": { - "description": "People you've invited in, and whether they've taken it up yet.", - "done": "Taken up", - "heading": "Invites you've sent" - }, - "invites": { - "custodians": { - "button": "Send invite", - "description": "Bring someone in to help keep the first node and answer for the network.", - "form_title": "Invite a custodian", - "heading": "Bring in a custodian", - "labels": { - "email": "Their email", - "name": "Their name" - } - }, - "owners": { - "button": "Send invite", - "description": "Bring someone in to work this desk alongside you.", - "form_title": "Invite an owner", - "heading": "Bring in another owner", - "labels": { - "email": "Their email", - "name": "Their name" - } - } - }, - "links": { - "prospect": { - "button": "Add prospect", - "description": "Write down an organization worth following up, and track it from first contact onward.", - "heading": "Track a new organization" - } - }, - "question": "What's waiting on me today?" -} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/07-questions_owners_prospect-sent.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/07-questions_owners_prospect-sent.yaml.md deleted file mode 100644 index 2bc4507..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/07-questions_owners_prospect-sent.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/owners/prospect-sent.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to site", - "description": "Thanks — we've got your prospect written down, and it now moves through the desk with everything else we're tracking.", - "next_description": "An owner walks it from prospect to client, and on to past client, as the relationship moves.", - "next_heading": "It's on the desk now", - "question": "What happens to this now?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/08-questions_owners_prospect.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/08-questions_owners_prospect.yaml.md deleted file mode 100644 index 290d1f2..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/08-questions_owners_prospect.yaml.md +++ /dev/null @@ -1,92 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/owners/prospect.yaml -It is a page only one role inside the business can open, holding one form. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "contact": "", - "name": "", - "note": "" - }, - "icon": "", - "labels": { - "contact": "", - "name": "", - "note": "" - }, - "page_description": "", - "question": "", - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "button": "Add to prospects", - "description": "One line per organization worth watching, moved through the stages as things develop.", - "encouragement": "Takes a minute, and it's yours to update later.", - "form_description": "Name the organization and where things stand.", - "form_title": "New prospect", - "heading": "Keep an organization on your radar", - "hints": { - "contact": "met at the bakers' conference, [email protected]", - "name": "Nordvik Bakery", - "note": "wants a booking flow, follow up after harvest season" - }, - "icon": "briefcase", - "labels": { - "contact": "Contact", - "name": "Organization", - "note": "Note" - }, - "page_description": "Write down an organization worth following up, and move it through client and past client as things develop.", - "question": "Is there an organization I should be keeping track of?", - "road_description": "It sits as a prospect until something moves - then you mark it client, and later past client if the work ends.", - "road_icon": "route", - "road_title": "Moves as you update it", - "who_description": "Only you see this, so keep it wherever you check next.", - "who_icon": "user", - "who_title": "Just for you" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/09-questions_received_collaborate.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/09-questions_received_collaborate.yaml.md deleted file mode 100644 index 6f83c69..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/09-questions_received_collaborate.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/collaborate.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to site", - "description": "Your note is in. An owner reads every one and will get back to you if there's a fit worth exploring.", - "next_description": "If it looks like a fit, we'll reach out to talk about where you could help.", - "next_heading": "We'll write if there's a fit", - "question": "What happens to what I just sent?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/10-questions_received_commission.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/10-questions_received_commission.yaml.md deleted file mode 100644 index 225f61e..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/10-questions_received_commission.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/commission.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to home", - "description": "Your brief is in. An owner reads every commission end to end before replying.", - "next_description": "Expect a reply within a few working days, either way, straight to your inbox.", - "next_heading": "A real reply from someone who read it", - "question": "What happens now that we've sent our brief?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/11-questions_received_custody.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/11-questions_received_custody.yaml.md deleted file mode 100644 index ee326dc..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/11-questions_received_custody.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/custody.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to the site", - "description": "A custodian reads every message about the redoal network and what it keeps.", - "next_description": "Expect a reply once your report has been looked at and the network checked.", - "next_heading": "A custodian is on it", - "question": "Who looks after what the network keeps?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/12-questions_received_propose.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/12-questions_received_propose.yaml.md deleted file mode 100644 index 1ddaf45..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/12-questions_received_propose.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/propose.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back home", - "description": "Your proposal is in. Someone here will read it and decide whether it fits before anything changes on the page.", - "next_description": "We'll write back once it's been read — approved and made live, or turned down with a reason.", - "next_heading": "A read, then a decision", - "question": "What happens to my proposal now?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/13-questions_received_subscribe.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/13-questions_received_subscribe.yaml.md deleted file mode 100644 index 2760f6f..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/13-questions_received_subscribe.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/subscribe.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to site", - "description": "You'll hear from us when there's something worth saying, not on a schedule.", - "next_description": "You're on the list. Every note has an unsubscribe link if it stops being useful.", - "next_heading": "You're on the list", - "question": "What happens now that I've subscribed?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/14-questions_received_trial.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/14-questions_received_trial.yaml.md deleted file mode 100644 index 062e729..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/llm/14-questions_received_trial.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/trial.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to site", - "description": "We read every trial request ourselves before anything gets built.", - "next_description": "If it looks like a fit, we'll draft your site from your own words and send it back for your say before anything goes live.", - "next_heading": "A first draft, built from your own words", - "question": "What happens now that you've sent this?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/needs.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/needs.yaml deleted file mode 100644 index 39df5ec..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/needs.yaml +++ /dev/null @@ -1,173 +0,0 @@ -needs: -- done_when: - - accepted - - declined - enters: / - handled_by: owners - id: commission - lands_in: projects - max_fields: 4 - max_steps: 2 - stages: - - open - - accepted - - declined - success: - - accepted - via: You run an organization that needs software built - wants: a considered reply to a brief, from people who read the whole thing - who: an organization with a problem it wants software to solve -- done_when: - - previewed - - declined - enters: / - handled_by: owners - id: trial - lands_in: trials - max_fields: 6 - max_steps: 2 - stages: - - open - - approved - - previewed - - declined - success: - - previewed - via: You run an organization that needs software built - wants: a first draft of a site for their own roles, built from their own words and approved by a person first - who: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything -- done_when: - - departed - - declined - enters: / - handled_by: owners - id: collaborate - lands_in: applicants - max_fields: 3 - max_steps: 2 - stages: - - open - - invited - - active - - departed - - declined - success: - - departed - via: You want to join us, follow us, or fix a page on this site - wants: to be read as a person, and invited in if there is a fit - who: someone who wants to work with us on what we build -- done_when: - - unsubscribed - enters: / - handled_by: owners - id: subscribe - lands_in: subscribers - max_fields: 2 - max_steps: 2 - stages: - - open - - unsubscribed - success: [] - via: You want to join us, follow us, or fix a page on this site - wants: a note now and then, and an easy way out - who: someone who wants to hear from us when there is something to say -- done_when: - - approved - - rejected - enters: / - handled_by: owners - id: propose - lands_in: development_proposals - max_fields: 3 - max_steps: 2 - stages: - - open - - approved - - rejected - success: - - approved - via: You want to join us, follow us, or fix a page on this site - wants: the change read by a person and, if approved, made - who: a visitor who sees how a page on this site should change -- done_when: - - resolved - - declined - enters: / - handled_by: custodians - id: custody - lands_in: custody_requests - max_fields: 4 - max_steps: 1 - stages: - - open - - in_dialogue - - resolved - - declined - success: - - resolved - via: 'You are on the redoal network: a node, an app, or a recording that concerns you' - wants: an answer from a custodian, and action where the network keeps something it should not - who: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node -- done_when: - - past_client - enters: /owners/prospect - enters_as: owners - handled_by: owners - id: prospect - lands_in: organizations - max_fields: 2 - max_steps: 1 - stages: - - prospect - - client - - past_client - success: [] - via: Keep an organization on your radar - wants: it written down and walked through its states from the desk - who: an owner who has met an organization worth following up -personas: -- id: architecture-firm - need: commission - text: We run a small architecture firm and our project files are scattered across three cloud drives. We want to pay someone to set up proper storage and backups we control ourselves. -- id: climbing-gym-founder - need: commission - text: I have an idea for a booking app for climbing gyms and I'm looking for a team that can build the first version with me. -- id: municipality-buyer - need: commission - text: Our municipality needs an internal tool for tracking building permits. We are looking for a vendor who can scope it and deliver it. -- id: exhibition-visitor - need: subscribe - text: I saw your drawing network at an exhibition and liked it. I don't want to get involved, I'd just like to know when there is news. -- id: tech-journalist - need: subscribe - text: I write about Nordic technology. Keep me posted on what you release so I can cover it. -- id: rust-developer - need: collaborate - text: I'm a Rust developer between jobs and I like that you build in the open. I would love to contribute, and maybe join you. -- id: interaction-designer - need: collaborate - text: I'm an interaction designer. I want to work with you on the drawing interface. -- id: student-intern - need: collaborate - text: I'm a computer science student looking for a summer internship doing infrastructure work. -- id: plumber-owner - need: trial - text: I run a plumbing company with four vans. Jobs come in by phone and text and some get lost. I'd like to see how this would look for us before I spend any money. -- id: dance-school - need: trial - text: We are a dance school. Enrolments, cancellations and invoices all go through one email inbox that only I understand. Can you show me a version made for us? -- id: node-runner - need: custody - text: I run a small server in Berlin and want to host a redoal node that peers with yours. Who do I talk to? -- id: recorded-name - need: custody - text: Someone left a recording on redoal that says my full name and where I live. I want it gone, and I want to know who is responsible for that network. -- id: app-builder - need: custody - text: I'm building a music app and would like to use redoal's gesture addresses in it. Is that possible, and who decides? -- id: wording-fix - need: propose - text: The subscribe page should say how often you actually write. I'd like to suggest that exact change to the page. -- id: rewrite - need: propose - text: One page on this site reads wrong to me and I know exactly how I'd rewrite it. Where do I send the new text? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/build/index.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/build/index.yaml deleted file mode 100644 index 2439592..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/build/index.yaml +++ /dev/null @@ -1,94 +0,0 @@ -alternatives: -- action: /received/commission - consequence: - - Send the brief - description: You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing. - encouragements: - - Someone here reads every brief in full before writing back. - features: - - description: We read your brief and either take it on or tell you honestly if it's not a fit. - icon: lucide:route - name: What happens next - - description: One of the owners reads it; write to bl@uhhm.no if you'd rather reach us directly. - icon: lucide:user-check - name: Who reads this - - description: The more of the problem you put in, the better the reply. - icon: lucide:briefcase - name: Tell us the problem - requirements: - - label: Your name - name: name - placeholder: Sara Nilsen - type: text - - label: Your email - name: email - placeholder: sara@company.com - type: email - - label: The problem you want solved - name: project - placeholder: Our drivers log hours on paper and it takes a day to get them into payroll. - type: textarea - - label: Your organization - name: organization - placeholder: Nilsen Transport AS - type: text - - label: Who we should talk to - name: org_contact - optional: true - placeholder: Sara Nilsen, ops manager - type: text - name: 'Have us build it: send the brief' - record_as: projects -- action: /received/trial - consequence: - - Start the draft - description: Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through. - encouragements: - - A person looks at what you send before anything gets built. - features: - - description: We look at what you sent and, if it's a fit, build a draft from your own roles and words for you to see before anything moves further. - icon: lucide:route - name: What happens next - - description: An owner looks at what you send; write to bl@uhhm.no if you'd rather reach us directly. - icon: lucide:user-check - name: Who reads this - - description: Answer in your own words - there's no wrong way to describe your business. - icon: lucide:layers - name: Describe your business - requirements: - - label: Your business - name: business - placeholder: Nilsen Transport AS - type: text - - label: Your email - name: email - placeholder: sara@company.com - type: email - - label: What you do - name: what_we_do - placeholder: We move freight for local businesses and handle the paperwork for them. - type: textarea - - label: Who comes to you - name: who_comes_to_us - placeholder: Local businesses that need something moved on short notice. - type: textarea - - label: What you keep track of - name: what_we_keep_track_of - placeholder: Bookings, driver hours, and which loads are still waiting on a signature. - type: textarea - - label: Who's involved - name: who_is_involved - placeholder: Drivers, dispatchers, and the customers waiting on their delivery. - type: textarea - - label: What slows you down - name: what_slows_us_down - optional: true - placeholder: Approvals sit in someone's inbox for days before anyone acts on them. - type: textarea - name: See your own business as a site, before you buy anything - record_as: trials -description: Have a problem software should solve, or want to see your own way of working as a site before you pay anyone? -name: Do you have a brief, or do you want to see your business as a site first? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/custodians/_section.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/custodians/_section.yaml deleted file mode 100644 index de40ef5..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/custodians/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: custodians diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/custodians/index.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/custodians/index.yaml deleted file mode 100644 index 6a0b293..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/custodians/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -alternatives: -- action: /custodians - consequence: - - Confirm - description: Cases from people who use, build on, or answer for something the redoal network touches, and need a custodian's word on it. - features: - - description: '' - name: '' - resource: - requires_group: custodians - source: - bucket: custody_requests - kind: kv - transitions: - - from: in_dialogue - label: Mark resolved - to: resolved - - from: in_dialogue - label: Close, no action - to: declined - - from: open - label: Open dialogue - to: in_dialogue - - from: open - label: Decline case - to: declined - name: Custody cases waiting on you -- action: /custodians - consequence: - - Invite custodian - description: Give someone an account and a one-time link to join as a custodian. - features: - - description: '' - name: Invite a custodian - requirements: - - label: Name - name: name - - label: Email - name: email - type: email - invite: - group: custodians - name: Bring in another custodian -- action: /custodians - consequence: - - Confirm - description: Custodians invited but not yet signed in. - features: - - description: '' - name: '' - resource: - requires_group: custodians - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Signed in - to: done - name: Invited custodians -description: 'The desk for custodians: open custody cases, and the people invited to answer them.' -name: What is waiting on the custodians? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/decide/subscribe.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/decide/subscribe.yaml deleted file mode 100644 index 45114ca..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/decide/subscribe.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: You'll stop hearing from us. Nothing else changes. - name: Stop getting notes from us - self_transition: - bucket: subscribers - label: Unsubscribe - to: unsubscribed -description: You're on our list. Change your mind whenever you like. -name: Do you want to keep hearing from us? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/index.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/index.yaml deleted file mode 100644 index 43b5b34..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/index.yaml +++ /dev/null @@ -1,63 +0,0 @@ -alternatives: -- action: /build - consequence: - - Start here - description: Send us a brief, or first describe how work flows through your business and see it as a working site before you pay for anything. - features: - - description: '' - icon: lucide:hammer - name: For a business or an organization with a job for us - name: You run an organization that needs software built -- action: /join - consequence: - - Start here - description: A developer, designer or student who wants in; someone who wants a note now and then; or a reader who would reword a page on uhhm.no. - features: - - description: '' - icon: lucide:handshake - name: For a person, on their own behalf - name: You want to join us, follow us, or fix a page on this site -- action: /received/custody - consequence: - - Send to a custodian - description: UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at. - encouragements: - - A custodian reads every message that comes in here. - features: - - description: A custodian opens a dialogue with you. A node gets its peer, a builder gets an answer, and something the network should not keep gets removed. Either way you hear what was decided. - icon: lucide:route - name: What happens next - - description: A custodian reads it directly; if it's urgent, write to bl@uhhm.no in the meantime. - icon: lucide:user-check - name: Who reads this - - description: Say which of the four it is, and what you need, in a few lines. - icon: lucide:shield - name: Reach a custodian - requirements: - - label: Name - name: name - placeholder: Your name - type: text - - label: Email - name: email - placeholder: you@yourcompany.com - type: email - - label: What's going on - name: about - options: - - Running a node of my own - - Building on the network - - Something the network keeps about me - - Something else - type: select - - label: In short - name: what - placeholder: A relay node is misbehaving - type: textarea - name: 'You are on the redoal network: a node, an app, or a recording that concerns you' - record_as: custody_requests -description: UHHM builds software for organisations that can say what problem they have, and keeps the redoal network underneath. -name: Who are you, and what do you need from UHHM? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/join/index.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/join/index.yaml deleted file mode 100644 index 450e4c6..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/join/index.yaml +++ /dev/null @@ -1,110 +0,0 @@ -alternatives: -- action: /received/collaborate - consequence: - - Get in touch - description: 'A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.' - encouragements: - - A person reads this, not a form filter — worth the ten minutes. - features: - - description: We read what you send and get back to you. If there's a fit, we invite you in and you start working with us — and if things ever change, that's fine too. - icon: lucide:route - name: What happens next - - description: One of the owners reads this directly — for anything urgent, write to bl@uhhm.no. - icon: lucide:user-check - name: Who reads this - - description: Tell us who you are and what kind of work you're after. - icon: lucide:handshake - name: Say hello - requirements: - - label: Name - name: name - placeholder: Your name - type: text - - label: Email - name: email - placeholder: you@example.com - type: email - - label: What kind of work - name: interest - placeholder: Backend work, or something design-heavy - type: textarea - - label: Tell us more - name: note - optional: true - placeholder: A bit about what you'd want to work on, or a link to your work - type: textarea - name: Work with us - record_as: applicants -- action: /received/subscribe - consequence: - - Sign up - description: You'd rather hear from us now and then than check back on your own. - encouragements: - - One click unsubscribes you later, no questions asked. - features: - - description: You're on the list. We write when there's something worth saying, and you can leave the list whenever you like. - icon: lucide:bell - name: What happens next - - description: An owner sends these notes directly — write to bl@uhhm.no if you'd rather ask something first. - icon: lucide:user-check - name: Who reads this - - description: Just your email, or your name too if you'd like. - icon: lucide:mail - name: Stay in the loop - requirements: - - label: Name - name: name - placeholder: Your name - type: text - - label: Email - name: email - placeholder: you@example.com - type: email - name: Hear from us now and then - record_as: subscribers -- action: /received/propose - consequence: - - Send change - description: You have spotted a page on uhhm.no that should read differently, and you know roughly how. - encouragements: - - Even a rough version helps — we can tidy the wording ourselves. - features: - - description: Someone here reads your proposal and either makes the change or explains why not. Either way, you'll hear back. - icon: lucide:route - name: What happens next - - description: An owner reads every proposal before anything changes — reach us at bl@uhhm.no if it's time-sensitive. - icon: lucide:user-check - name: Who reads this - - description: Point us to the page and show us the change. - icon: lucide:pencil - name: Propose a change - requirements: - - label: Your name - name: submitted_by - placeholder: Your name - type: text - - label: Email - name: email - optional: true - placeholder: you@example.com - type: email - - label: Which page - name: page - optional: true - placeholder: questions/join/index.yaml - type: text - - label: Why this is better - name: rationale - placeholder: The current heading doesn't say what you actually get - type: textarea - - label: Your proposed text - name: proposed_yaml - placeholder: 'heading: "A clearer way to say this"' - type: textarea - name: Suggest a change to this website - record_as: development_proposals -description: 'Three ways to be part of what UHHM builds: work with us, hear from us, or fix something on this site.' -name: How do you want to be part of this? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/owners/_section.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/owners/_section.yaml deleted file mode 100644 index 670fca7..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/owners/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: owners diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/owners/index.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/owners/index.yaml deleted file mode 100644 index a59e0b0..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/owners/index.yaml +++ /dev/null @@ -1,212 +0,0 @@ -alternatives: -- action: /owners - consequence: - - Confirm - description: People who've asked to build with us, waiting on a decision or already working alongside us. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: applicants - kind: kv - transitions: - - from: active - label: Mark departed - to: departed - - from: active - label: End collaboration - to: declined - - from: invited - label: Confirm active - to: active - - from: invited - label: Withdraw invite - to: declined - - from: open - label: Send invite - to: invited - - from: open - label: Decline applicant - to: declined - name: People who want to build with us -- action: /owners - consequence: - - Confirm - description: Questions and issues raised with the people who keep the first node - custodians handle these, but you can see where each one stands. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: custody_requests - kind: kv - transitions: [] - name: What's been raised with custodians -- action: /owners - consequence: - - Confirm - description: Changes visitors have proposed for pages on this site, waiting on a yes or no. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: development_proposals - kind: kv - transitions: - - from: open - label: Approve change - to: approved - - from: open - label: Reject change - to: rejected - name: Proposed changes to the site -- action: /owners - consequence: - - Confirm - description: Organizations you've met, tracked from first contact through to client and beyond. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: organizations - kind: kv - transitions: - - from: client - label: Mark past client - to: past_client - - from: prospect - label: Mark as client - to: client - - from: prospect - label: Mark not pursued - to: past_client - name: Organizations you're tracking -- action: /owners - consequence: - - Confirm - description: Briefs sent in by organizations with a problem they want solved. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: projects - kind: kv - transitions: - - from: open - label: Accept brief - to: accepted - - from: open - label: Decline brief - to: declined - name: Briefs waiting on a reply -- action: /owners - consequence: - - Confirm - description: People who want to hear from you now and then. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: subscribers - kind: kv - transitions: - - from: open - label: Unsubscribe them - to: unsubscribed - name: Who's hearing from you -- action: /owners - consequence: - - Confirm - description: Businesses who want to see their own workflow as a working site before committing to anything. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: trials - kind: kv - transitions: - - from: approved - label: Mark previewed - to: previewed - - from: approved - label: Decline trial - to: declined - - from: open - label: Approve trial - to: approved - - from: open - label: Decline trial - to: declined - name: Trial sites in progress -- action: /owners/prospect - consequence: - - Add prospect - description: Write down an organization worth following up, and track it from first contact onward. - name: Track a new organization -- action: /owners - consequence: - - Send invite - description: Bring someone in to help keep the first node and answer for the network. - features: - - description: '' - name: Invite a custodian - requirements: - - label: Their name - name: name - - label: Their email - name: email - type: email - invite: - group: custodians - name: Bring in a custodian -- action: /owners - consequence: - - Send invite - description: Bring someone in to work this desk alongside you. - features: - - description: '' - name: Invite an owner - requirements: - - label: Their name - name: name - - label: Their email - name: email - type: email - invite: - group: owners - name: Bring in another owner -- action: /owners - consequence: - - Confirm - description: People you've invited in, and whether they've taken it up yet. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Taken up - to: done - name: Invites you've sent -description: 'Everything waiting on you: briefs, trials, applicants, subscribers, and proposals, all in one place.' -name: What's waiting on me today? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/owners/prospect-sent.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/owners/prospect-sent.yaml deleted file mode 100644 index d49a1d4..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/owners/prospect-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: An owner walks it from prospect to client, and on to past client, as the relationship moves. - name: It's on the desk now -- action: /owners - consequence: - - Back to site - description: '' - name: Back to site -description: Thanks — we've got your prospect written down, and it now moves through the desk with everything else we're tracking. -name: What happens to this now? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/owners/prospect.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/owners/prospect.yaml deleted file mode 100644 index 581bd11..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/owners/prospect.yaml +++ /dev/null @@ -1,39 +0,0 @@ -alternatives: -- action: /owners/prospect-sent - consequence: - - Add to prospects - description: One line per organization worth watching, moved through the stages as things develop. - encouragements: - - Takes a minute, and it's yours to update later. - features: - - description: It sits as a prospect until something moves - then you mark it client, and later past client if the work ends. - icon: lucide:route - name: Moves as you update it - - description: Only you see this, so keep it wherever you check next. - icon: lucide:user - name: Just for you - - description: Name the organization and where things stand. - icon: lucide:briefcase - name: New prospect - requirements: - - label: Organization - name: name - placeholder: Nordvik Bakery - type: text - - label: Contact - name: contact - placeholder: met at the bakers' conference, [email protected] - type: text - - label: Note - name: note - optional: true - placeholder: wants a booking flow, follow up after harvest season - type: textarea - name: Keep an organization on your radar - record_as: organizations -description: Write down an organization worth following up, and move it through client and past client as things develop. -followup: false -name: Is there an organization I should be keeping track of? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/collaborate.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/collaborate.yaml deleted file mode 100644 index c612fe8..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/collaborate.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: If it looks like a fit, we'll reach out to talk about where you could help. - name: We'll write if there's a fit -- action: / - consequence: - - Back to site - description: '' - name: Back to site -description: Your note is in. An owner reads every one and will get back to you if there's a fit worth exploring. -name: What happens to what I just sent? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/commission.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/commission.yaml deleted file mode 100644 index 59e77bc..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/commission.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Expect a reply within a few working days, either way, straight to your inbox. - name: A real reply from someone who read it -- action: / - consequence: - - Back to home - description: '' - name: Back to home -description: Your brief is in. An owner reads every commission end to end before replying. -name: What happens now that we've sent our brief? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/custody.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/custody.yaml deleted file mode 100644 index 150966f..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/custody.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Expect a reply once your report has been looked at and the network checked. - name: A custodian is on it -- action: / - consequence: - - Back to the site - description: '' - name: Back to the site -description: A custodian reads every message about the redoal network and what it keeps. -name: Who looks after what the network keeps? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/propose.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/propose.yaml deleted file mode 100644 index 1ae02a9..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/propose.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: We'll write back once it's been read — approved and made live, or turned down with a reason. - name: A read, then a decision -- action: / - consequence: - - Back home - description: '' - name: Back home -description: Your proposal is in. Someone here will read it and decide whether it fits before anything changes on the page. -name: What happens to my proposal now? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/subscribe.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/subscribe.yaml deleted file mode 100644 index c2910bb..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/subscribe.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: You're on the list. Every note has an unsubscribe link if it stops being useful. - name: You're on the list -- action: / - consequence: - - Back to site - description: '' - name: Back to site -description: You'll hear from us when there's something worth saying, not on a schedule. -name: What happens now that I've subscribed? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/trial.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/trial.yaml deleted file mode 100644 index 586bcd3..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/questions/received/trial.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: If it looks like a fit, we'll draft your site from your own words and send it back for your say before anything goes live. - name: A first draft, built from your own words -- action: / - consequence: - - Back to site - description: '' - name: Back to site -description: We read every trial request ourselves before anything gets built. -name: What happens now that you've sent this? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/site.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/site.yaml deleted file mode 100644 index aa5de2a..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/site.yaml +++ /dev/null @@ -1,2 +0,0 @@ -lang: en -title: UHHM diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/words.json b/vendor/trainer/runs/uhhm-2026-09-23/r3/site/words.json deleted file mode 100644 index f694c0a..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r3/site/words.json +++ /dev/null @@ -1,426 +0,0 @@ -{ - "questions/build/index.yaml": { - "description": "Have a problem software should solve, or want to see your own way of working as a site before you pay anyone?", - "needs": { - "commission": { - "button": "Send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.", - "encouragement": "Someone here reads every brief in full before writing back.", - "form_description": "The more of the problem you put in, the better the reply.", - "form_title": "Tell us the problem", - "heading": "Have us build it: send the brief", - "hints": { - "email": "sara@company.com", - "name": "Sara Nilsen", - "org_contact": "Sara Nilsen, ops manager", - "organization": "Nilsen Transport AS", - "project": "Our drivers log hours on paper and it takes a day to get them into payroll." - }, - "icon": "briefcase", - "labels": { - "email": "Your email", - "name": "Your name", - "org_contact": "Who we should talk to", - "organization": "Your organization", - "project": "The problem you want solved" - }, - "road_description": "We read your brief and either take it on or tell you honestly if it's not a fit.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads it; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "trial": { - "button": "Start the draft", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.", - "encouragement": "A person looks at what you send before anything gets built.", - "form_description": "Answer in your own words - there's no wrong way to describe your business.", - "form_title": "Describe your business", - "heading": "See your own business as a site, before you buy anything", - "hints": { - "business": "Nilsen Transport AS", - "email": "sara@company.com", - "what_slows_us_down": "Approvals sit in someone's inbox for days before anyone acts on them.", - "what_we_do": "We move freight for local businesses and handle the paperwork for them.", - "what_we_keep_track_of": "Bookings, driver hours, and which loads are still waiting on a signature.", - "who_comes_to_us": "Local businesses that need something moved on short notice.", - "who_is_involved": "Drivers, dispatchers, and the customers waiting on their delivery." - }, - "icon": "layers", - "labels": { - "business": "Your business", - "email": "Your email", - "what_slows_us_down": "What slows you down", - "what_we_do": "What you do", - "what_we_keep_track_of": "What you keep track of", - "who_comes_to_us": "Who comes to you", - "who_is_involved": "Who's involved" - }, - "road_description": "We look at what you sent and, if it's a fit, build a draft from your own roles and words for you to see before anything moves further.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner looks at what you send; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "Do you have a brief, or do you want to see your business as a site first?" - }, - "questions/custodians/index.yaml": { - "buckets": { - "custody_requests": { - "description": "Cases from people who use, build on, or answer for something the redoal network touches, and need a custodian's word on it.", - "heading": "Custody cases waiting on you", - "moves": { - "in_dialogue->declined": "Close, no action", - "in_dialogue->resolved": "Mark resolved", - "open->declined": "Decline case", - "open->in_dialogue": "Open dialogue" - } - } - }, - "confirm": "Confirm", - "description": "The desk for custodians: open custody cases, and the people invited to answer them.", - "invited": { - "description": "Custodians invited but not yet signed in.", - "done": "Signed in", - "heading": "Invited custodians" - }, - "invites": { - "custodians": { - "button": "Invite custodian", - "description": "Give someone an account and a one-time link to join as a custodian.", - "form_title": "Invite a custodian", - "heading": "Bring in another custodian", - "labels": { - "email": "Email", - "name": "Name" - } - } - }, - "links": {}, - "question": "What is waiting on the custodians?" - }, - "questions/decide/subscribe.yaml": { - "description": "You're on our list. Change your mind whenever you like.", - "moves": { - "unsubscribed": { - "button": "Unsubscribe", - "description": "You'll stop hearing from us. Nothing else changes.", - "heading": "Stop getting notes from us" - } - }, - "question": "Do you want to keep hearing from us?" - }, - "questions/index.yaml": { - "description": "UHHM builds software for organisations that can say what problem they have, and keeps the redoal network underneath.", - "doors": { - "build": { - "button": "Start here", - "description": "Send us a brief, or first describe how work flows through your business and see it as a working site before you pay for anything.", - "for_whom": "For a business or an organization with a job for us", - "heading": "You run an organization that needs software built", - "icon": "hammer" - }, - "join": { - "button": "Start here", - "description": "A developer, designer or student who wants in; someone who wants a note now and then; or a reader who would reword a page on uhhm.no.", - "for_whom": "For a person, on their own behalf", - "heading": "You want to join us, follow us, or fix a page on this site", - "icon": "handshake" - } - }, - "needs": { - "custody": { - "button": "Send to a custodian", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at.", - "encouragement": "A custodian reads every message that comes in here.", - "form_description": "Say which of the four it is, and what you need, in a few lines.", - "form_title": "Reach a custodian", - "heading": "You are on the redoal network: a node, an app, or a recording that concerns you", - "hints": { - "about": "We run our order system on a relay node and it's been dropping messages since Tuesday", - "email": "you@yourcompany.com", - "name": "Your name", - "what": "A relay node is misbehaving" - }, - "icon": "shield", - "labels": { - "about": "What's going on", - "email": "Email", - "name": "Name", - "what": "In short" - }, - "road_description": "A custodian opens a dialogue with you. A node gets its peer, a builder gets an answer, and something the network should not keep gets removed. Either way you hear what was decided.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A custodian reads it directly; if it's urgent, write to bl@uhhm.no in the meantime.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "Who are you, and what do you need from UHHM?" - }, - "questions/join/index.yaml": { - "description": "Three ways to be part of what UHHM builds: work with us, hear from us, or fix something on this site.", - "needs": { - "collaborate": { - "button": "Get in touch", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.", - "encouragement": "A person reads this, not a form filter — worth the ten minutes.", - "form_description": "Tell us who you are and what kind of work you're after.", - "form_title": "Say hello", - "heading": "Work with us", - "hints": { - "email": "you@example.com", - "interest": "Backend work, or something design-heavy", - "name": "Your name", - "note": "A bit about what you'd want to work on, or a link to your work" - }, - "icon": "handshake", - "labels": { - "email": "Email", - "interest": "What kind of work", - "name": "Name", - "note": "Tell us more" - }, - "road_description": "We read what you send and get back to you. If there's a fit, we invite you in and you start working with us — and if things ever change, that's fine too.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads this directly — for anything urgent, write to bl@uhhm.no.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "propose": { - "button": "Send change", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how.", - "encouragement": "Even a rough version helps — we can tidy the wording ourselves.", - "form_description": "Point us to the page and show us the change.", - "form_title": "Propose a change", - "heading": "Suggest a change to this website", - "hints": { - "email": "you@example.com", - "page": "questions/join/index.yaml", - "proposed_yaml": "heading: \"A clearer way to say this\"", - "rationale": "The current heading doesn't say what you actually get", - "submitted_by": "Your name" - }, - "icon": "pencil", - "labels": { - "email": "Email", - "page": "Which page", - "proposed_yaml": "Your proposed text", - "rationale": "Why this is better", - "submitted_by": "Your name" - }, - "road_description": "Someone here reads your proposal and either makes the change or explains why not. Either way, you'll hear back.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner reads every proposal before anything changes — reach us at bl@uhhm.no if it's time-sensitive.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "subscribe": { - "button": "Sign up", - "description": "You'd rather hear from us now and then than check back on your own.", - "encouragement": "One click unsubscribes you later, no questions asked.", - "form_description": "Just your email, or your name too if you'd like.", - "form_title": "Stay in the loop", - "heading": "Hear from us now and then", - "hints": { - "email": "you@example.com", - "name": "Your name" - }, - "icon": "mail", - "labels": { - "email": "Email", - "name": "Name" - }, - "road_description": "You're on the list. We write when there's something worth saying, and you can leave the list whenever you like.", - "road_icon": "bell", - "road_title": "What happens next", - "who_description": "An owner sends these notes directly — write to bl@uhhm.no if you'd rather ask something first.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "How do you want to be part of this?" - }, - "questions/owners/index.yaml": { - "buckets": { - "applicants": { - "description": "People who've asked to build with us, waiting on a decision or already working alongside us.", - "heading": "People who want to build with us", - "moves": { - "active->declined": "End collaboration", - "active->departed": "Mark departed", - "invited->active": "Confirm active", - "invited->declined": "Withdraw invite", - "open->declined": "Decline applicant", - "open->invited": "Send invite" - } - }, - "custody_requests": { - "description": "Questions and issues raised with the people who keep the first node - custodians handle these, but you can see where each one stands.", - "heading": "What's been raised with custodians", - "moves": {} - }, - "development_proposals": { - "description": "Changes visitors have proposed for pages on this site, waiting on a yes or no.", - "heading": "Proposed changes to the site", - "moves": { - "open->approved": "Approve change", - "open->rejected": "Reject change" - } - }, - "organizations": { - "description": "Organizations you've met, tracked from first contact through to client and beyond.", - "heading": "Organizations you're tracking", - "moves": { - "client->past_client": "Mark past client", - "prospect->client": "Mark as client", - "prospect->past_client": "Mark not pursued" - } - }, - "projects": { - "description": "Briefs sent in by organizations with a problem they want solved.", - "heading": "Briefs waiting on a reply", - "moves": { - "open->accepted": "Accept brief", - "open->declined": "Decline brief" - } - }, - "subscribers": { - "description": "People who want to hear from you now and then.", - "heading": "Who's hearing from you", - "moves": { - "open->unsubscribed": "Unsubscribe them" - } - }, - "trials": { - "description": "Businesses who want to see their own workflow as a working site before committing to anything.", - "heading": "Trial sites in progress", - "moves": { - "approved->declined": "Decline trial", - "approved->previewed": "Mark previewed", - "open->approved": "Approve trial", - "open->declined": "Decline trial" - } - } - }, - "confirm": "Confirm", - "description": "Everything waiting on you: briefs, trials, applicants, subscribers, and proposals, all in one place.", - "invited": { - "description": "People you've invited in, and whether they've taken it up yet.", - "done": "Taken up", - "heading": "Invites you've sent" - }, - "invites": { - "custodians": { - "button": "Send invite", - "description": "Bring someone in to help keep the first node and answer for the network.", - "form_title": "Invite a custodian", - "heading": "Bring in a custodian", - "labels": { - "email": "Their email", - "name": "Their name" - } - }, - "owners": { - "button": "Send invite", - "description": "Bring someone in to work this desk alongside you.", - "form_title": "Invite an owner", - "heading": "Bring in another owner", - "labels": { - "email": "Their email", - "name": "Their name" - } - } - }, - "links": { - "prospect": { - "button": "Add prospect", - "description": "Write down an organization worth following up, and track it from first contact onward.", - "heading": "Track a new organization" - } - }, - "question": "What's waiting on me today?" - }, - "questions/owners/prospect-sent.yaml": { - "back": "Back to site", - "description": "Thanks — we've got your prospect written down, and it now moves through the desk with everything else we're tracking.", - "next_description": "An owner walks it from prospect to client, and on to past client, as the relationship moves.", - "next_heading": "It's on the desk now", - "question": "What happens to this now?" - }, - "questions/owners/prospect.yaml": { - "button": "Add to prospects", - "description": "One line per organization worth watching, moved through the stages as things develop.", - "encouragement": "Takes a minute, and it's yours to update later.", - "form_description": "Name the organization and where things stand.", - "form_title": "New prospect", - "heading": "Keep an organization on your radar", - "hints": { - "contact": "met at the bakers' conference, [email protected]", - "name": "Nordvik Bakery", - "note": "wants a booking flow, follow up after harvest season" - }, - "icon": "briefcase", - "labels": { - "contact": "Contact", - "name": "Organization", - "note": "Note" - }, - "page_description": "Write down an organization worth following up, and move it through client and past client as things develop.", - "question": "Is there an organization I should be keeping track of?", - "road_description": "It sits as a prospect until something moves - then you mark it client, and later past client if the work ends.", - "road_icon": "route", - "road_title": "Moves as you update it", - "who_description": "Only you see this, so keep it wherever you check next.", - "who_icon": "user", - "who_title": "Just for you" - }, - "questions/received/collaborate.yaml": { - "back": "Back to site", - "description": "Your note is in. An owner reads every one and will get back to you if there's a fit worth exploring.", - "next_description": "If it looks like a fit, we'll reach out to talk about where you could help.", - "next_heading": "We'll write if there's a fit", - "question": "What happens to what I just sent?" - }, - "questions/received/commission.yaml": { - "back": "Back to home", - "description": "Your brief is in. An owner reads every commission end to end before replying.", - "next_description": "Expect a reply within a few working days, either way, straight to your inbox.", - "next_heading": "A real reply from someone who read it", - "question": "What happens now that we've sent our brief?" - }, - "questions/received/custody.yaml": { - "back": "Back to the site", - "description": "A custodian reads every message about the redoal network and what it keeps.", - "next_description": "Expect a reply once your report has been looked at and the network checked.", - "next_heading": "A custodian is on it", - "question": "Who looks after what the network keeps?" - }, - "questions/received/propose.yaml": { - "back": "Back home", - "description": "Your proposal is in. Someone here will read it and decide whether it fits before anything changes on the page.", - "next_description": "We'll write back once it's been read — approved and made live, or turned down with a reason.", - "next_heading": "A read, then a decision", - "question": "What happens to my proposal now?" - }, - "questions/received/subscribe.yaml": { - "back": "Back to site", - "description": "You'll hear from us when there's something worth saying, not on a schedule.", - "next_description": "You're on the list. Every note has an unsubscribe link if it stops being useful.", - "next_heading": "You're on the list", - "question": "What happens now that I've subscribed?" - }, - "questions/received/trial.yaml": { - "back": "Back to site", - "description": "We read every trial request ourselves before anything gets built.", - "next_description": "If it looks like a fit, we'll draft your site from your own words and send it back for your say before anything goes live.", - "next_heading": "A first draft, built from your own words", - "question": "What happens now that you've sent this?" - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/answers-full.jsonl b/vendor/trainer/runs/uhhm-2026-09-23/r4/answers-full.jsonl deleted file mode 100644 index 1ec3812..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/answers-full.jsonl +++ /dev/null @@ -1,15 +0,0 @@ -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"architecture-firm@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"climbing-gym-founder@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"municipality-buyer@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"exhibition-visitor@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"tech-journalist@/"} -{"choice":"Work with us","confidence":0.95,"id":"rust-developer@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"interaction-designer@/"} -{"choice":"Work with us","confidence":0.95,"id":"student-intern@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"plumber-owner@/"} -{"choice":"Work with us","confidence":0.95,"id":"dance-school@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"node-runner@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"recorded-name@/"} -{"choice":"Work with us","confidence":0.95,"id":"app-builder@/"} -{"choice":"Suggest a change to this website","confidence":0.95,"id":"wording-fix@/"} -{"choice":"Suggest a change to this website","confidence":0.95,"id":"rewrite@/"} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/answers-skim.jsonl b/vendor/trainer/runs/uhhm-2026-09-23/r4/answers-skim.jsonl deleted file mode 100644 index 49ba944..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/answers-skim.jsonl +++ /dev/null @@ -1,15 +0,0 @@ -{"choice":"Work with us","confidence":0.85,"id":"architecture-firm@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"climbing-gym-founder@/"} -{"choice":"Have us build it: send the brief","confidence":0.95,"id":"municipality-buyer@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"exhibition-visitor@/"} -{"choice":"What UHHM does","confidence":0.95,"id":"tech-journalist@/"} -{"choice":"Work with us","confidence":0.95,"id":"rust-developer@/"} -{"choice":"Work with us","confidence":0.85,"id":"interaction-designer@/"} -{"choice":"Work with us","confidence":0.95,"id":"student-intern@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.95,"id":"plumber-owner@/"} -{"choice":"See your own business as a site, before you buy anything","confidence":0.85,"id":"dance-school@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"node-runner@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"recorded-name@/"} -{"choice":"You are on the redoal network: a node, an app, or a recording that concerns you","confidence":0.95,"id":"app-builder@/"} -{"choice":"Hear from us now and then","confidence":0.95,"id":"wording-fix@/"} -{"choice":"Suggest a change to this website","confidence":0.95,"id":"rewrite@/"} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/rated/rate.json b/vendor/trainer/runs/uhhm-2026-09-23/r4/rated/rate.json deleted file mode 100644 index 3fdf485..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/rated/rate.json +++ /dev/null @@ -1,164 +0,0 @@ -{ - "collaborate": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 25.81998092513114, - "options": 8, - "overloaded": true, - "page": "/", - "personas": 3, - "required_fields": 3, - "understanding": { - "asked": 3, - "next": 3, - "where": 3, - "which": 3 - } - } - ], - "steps": 1 - }, - "commission": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 26.73015873015873, - "options": 8, - "overloaded": true, - "page": "/", - "personas": 3, - "required_fields": 4, - "understanding": { - "asked": 3, - "next": 3, - "where": 3, - "which": 3 - } - } - ], - "steps": 1 - }, - "custody": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 27.915853336850432, - "options": 8, - "overloaded": true, - "page": "/", - "personas": 3, - "required_fields": 4, - "understanding": { - "asked": 3, - "next": 3, - "where": 3, - "which": 3 - } - } - ], - "steps": 1 - }, - "propose": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 27.536719122556033, - "options": 8, - "overloaded": true, - "page": "/", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "subscribe": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 26.73015873015873, - "options": 8, - "overloaded": true, - "page": "/", - "personas": 2, - "required_fields": 2, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "trial": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 27.441049146931498, - "options": 8, - "overloaded": true, - "page": "/", - "personas": 2, - "required_fields": 6, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/score.log b/vendor/trainer/runs/uhhm-2026-09-23/r4/score.log deleted file mode 100644 index 74bcc22..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/score.log +++ /dev/null @@ -1,21 +0,0 @@ -== answer full -== answer skim -== score full -MISROUTE: interaction-designer@/: picked "See your own business as a site, before you buy anything" (0.95), the need is met by ["Work with us"] -MISROUTE: dance-school@/: picked "Work with us" (0.95), the need is met by ["See your own business as a site, before you buy anything"] -MISROUTE: app-builder@/: picked "Work with us" (0.95), the need is met by ["You are on the redoal network: a node, an app, or a recording that concerns you"] -wording: 12/15 routed right (80%) -== score skim -MISROUTE: architecture-firm@/: picked "Work with us" (0.85), the need is met by ["Have us build it: send the brief"] -MISROUTE: tech-journalist@/: picked "What UHHM does" (0.95), the need is met by ["Hear from us now and then"] -MISROUTE: wording-fix@/: picked "Hear from us now and then" (0.95), the need is met by ["Suggest a change to this website"] -wording: 12/15 routed right (80%) -== rate -need LIX which where asked next gutted twin says page load -commission 27 very easy 3/3 3/3 3/3 3/3 0/0/0/0 ok 8 options, 4 required - SPLIT -trial 27 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 8 options, 6 required - SPLIT -collaborate 26 very easy 3/3 3/3 3/3 3/3 0/0/0/0 ok 8 options, 3 required - SPLIT -subscribe 27 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 8 options, 2 required - SPLIT -propose 28 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 8 options, 3 required - SPLIT -custody 28 very easy 3/3 3/3 3/3 3/3 0/0/0/0 ok 8 options, 4 required - SPLIT -== done diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/aggregates.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/aggregates.yaml deleted file mode 100644 index cccafd2..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/aggregates.yaml +++ /dev/null @@ -1,113 +0,0 @@ -aggregates: -- bucket: applicants - initial: open - states: - active: - event: onboarded - declined: - event: declined - departed: - event: departed - invited: - event: invited - open: - event: applied - transitions: - active: - - departed - - declined - invited: - - active - - declined - open: - - invited - - declined -- bucket: custody_requests - initial: open - states: - declined: - event: declined - in_dialogue: - event: in_dialogue - open: - event: received - resolved: - event: resolved - transitions: - in_dialogue: - - resolved - - declined - open: - - in_dialogue - - declined -- bucket: development_proposals - initial: open - states: - approved: - event: approved - open: - event: proposed - rejected: - event: rejected - transitions: - open: - - approved - - rejected -- bucket: organizations - initial: prospect - states: - client: - event: became_client - past_client: - event: churned - prospect: - event: identified - transitions: - client: - - past_client - prospect: - - client - - past_client -- bucket: projects - initial: open - states: - accepted: - event: accepted - declined: - event: declined - open: - event: submitted - transitions: - open: - - accepted - - declined -- bucket: subscribers - initial: open - states: - open: - event: subscribed - unsubscribed: - event: unsubscribed - transitions: - open: - - unsubscribed -- attended_by: | - approved -> previewed: the n8n workflow that builds the draft site from an approved intake (docker, rauthy, portal content) and sends the preview link. Until it exists, owners run portal-trainer by hand and press the button. - bucket: trials - initial: open - states: - approved: - event: approved - declined: - event: declined - open: - event: received - previewed: - event: previewed - transitions: - approved: - - previewed - - declined - open: - - approved - - declined diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/01-questions_build_index.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/01-questions_build_index.yaml.md deleted file mode 100644 index 8517c6a..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/01-questions_build_index.yaml.md +++ /dev/null @@ -1,174 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/build/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "commission": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "name": "", - "org_contact": "", - "organization": "", - "project": "" - }, - "icon": "", - "labels": { - "email": "", - "name": "", - "org_contact": "", - "organization": "", - "project": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "trial": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "business": "", - "email": "", - "what_slows_us_down": "", - "what_we_do": "", - "what_we_keep_track_of": "", - "who_comes_to_us": "", - "who_is_involved": "" - }, - "icon": "", - "labels": { - "business": "", - "email": "", - "what_slows_us_down": "", - "what_we_do": "", - "what_we_keep_track_of": "", - "who_comes_to_us": "", - "who_is_involved": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Have a problem software should solve, or want to see your own way of working as a site before you pay anyone?", - "needs": { - "commission": { - "button": "Send the brief", - "description": "You know the problem and want it solved. Write it up and send it to people who will read the whole thing.", - "encouragement": "Someone here reads every brief in full before writing back.", - "form_description": "The more of the problem you put in, the better the reply.", - "form_title": "Tell us the problem", - "heading": "A considered reply to your brief", - "hints": { - "email": "sara@company.com", - "name": "Sara Nilsen", - "org_contact": "Sara Nilsen, ops manager", - "organization": "Nilsen Transport AS", - "project": "Our drivers log hours on paper and it takes a day to get them into payroll." - }, - "icon": "briefcase", - "labels": { - "email": "Your email", - "name": "Your name", - "org_contact": "Who we should talk to", - "organization": "Your organization", - "project": "The problem you want solved" - }, - "road_description": "We read your brief and either take it on or tell you honestly if it's not a fit.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads it; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "trial": { - "button": "Start the draft", - "description": "See your own requests, approvals and handovers as a working site, before you commit to anything.", - "encouragement": "A person looks at what you send before anything gets built.", - "form_description": "Answer in your own words - there's no wrong way to describe your business.", - "form_title": "Describe your business", - "heading": "A first draft of your own site", - "hints": { - "business": "Nilsen Transport AS", - "email": "sara@company.com", - "what_slows_us_down": "Approvals sit in someone's inbox for days before anyone acts on them.", - "what_we_do": "We move freight for local businesses and handle the paperwork for them.", - "what_we_keep_track_of": "Bookings, driver hours, and which loads are still waiting on a signature.", - "who_comes_to_us": "Local businesses that need something moved on short notice.", - "who_is_involved": "Drivers, dispatchers, and the customers waiting on their delivery." - }, - "icon": "layers", - "labels": { - "business": "Your business", - "email": "Your email", - "what_slows_us_down": "What slows you down", - "what_we_do": "What you do", - "what_we_keep_track_of": "What you keep track of", - "who_comes_to_us": "Who comes to you", - "who_is_involved": "Who's involved" - }, - "road_description": "We look at what you sent and, if it's a fit, build a draft from your own roles and words for you to see before anything moves further.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner looks at what you send; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "Do you already know the problem, or do you want to see your own business as a site first?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/02-questions_custodians_index.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/02-questions_custodians_index.yaml.md deleted file mode 100644 index c9aeeb9..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/02-questions_custodians_index.yaml.md +++ /dev/null @@ -1,108 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/custodians/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. Under `invites`, each entry is a form that invites a person into that group - they get an account and a one-time link - and `invited` is the list of invites sent. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "custody_requests": { - "description": "", - "heading": "", - "moves": { - "in_dialogue->declined": "declined>", - "in_dialogue->resolved": "resolved>", - "open->declined": "declined>", - "open->in_dialogue": "in_dialogue>" - } - } - }, - "confirm": "", - "description": "", - "invited": { - "description": "", - "done": "", - "heading": "" - }, - "invites": { - "custodians": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "email": "", - "name": "" - } - } - }, - "links": {}, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "buckets": { - "custody_requests": { - "description": "Cases from people who use, build on, or answer for something the redoal network touches, and need a custodian's word on it.", - "heading": "Custody cases waiting on you", - "moves": { - "in_dialogue->declined": "Close, no action", - "in_dialogue->resolved": "Mark resolved", - "open->declined": "Decline case", - "open->in_dialogue": "Open dialogue" - } - } - }, - "confirm": "Send invite", - "description": "The desk for custodians: open custody cases, and the people invited to answer them.", - "invited": { - "description": "Custodians invited but not yet signed in.", - "done": "Signed in", - "heading": "Invited custodians" - }, - "invites": { - "custodians": { - "button": "Invite custodian", - "description": "Give someone an account and a one-time link to join as a custodian.", - "form_title": "Invite a custodian", - "heading": "Bring in another custodian", - "labels": { - "email": "Email", - "name": "Name" - } - } - }, - "links": {}, - "question": "What does the network owe the people it affects, right now?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/03-questions_decide_subscribe.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/03-questions_decide_subscribe.yaml.md deleted file mode 100644 index 729c7c0..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/03-questions_decide_subscribe.yaml.md +++ /dev/null @@ -1,60 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/decide/subscribe.yaml -It is a page the person who sent a form reaches later, through a private link, to make a decision that is theirs: under `moves`, each entry is one thing they can decide. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "moves": { - "unsubscribed": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "You're on our list. Change your mind whenever you like.", - "moves": { - "unsubscribed": { - "button": "Unsubscribe", - "description": "You'll stop hearing from us. Nothing else changes.", - "heading": "Stop getting notes from us" - } - }, - "question": "Do you want to keep hearing from us?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/04-questions_index.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/04-questions_index.yaml.md deleted file mode 100644 index e11b912..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/04-questions_index.yaml.md +++ /dev/null @@ -1,136 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/index.yaml -It is the front door: the first page any visitor sees. `question` is the page's one question. Under `doors`, each entry is one alternative that leads to a page of its own for one kind of visitor: its heading must let that visitor recognise themselves from the heading alone. Under `needs`, each entry is one alternative with a form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "doors": { - "build": { - "button": "", - "description": "", - "for_whom": "", - "heading": "", - "icon": "" - }, - "join": { - "button": "", - "description": "", - "for_whom": "", - "heading": "", - "icon": "" - } - }, - "needs": { - "custody": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "about": "", - "email": "", - "name": "", - "what": "" - }, - "icon": "", - "labels": { - "about": "", - "email": "", - "name": "", - "what": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "UHHM builds software for organisations that can say what problem they have, and keeps the redoal network underneath.", - "doors": { - "build": { - "button": "Start here", - "description": "Send us the problem, or try your own workflow as a working site before you pay for anything.", - "for_whom": "For an organisation with a problem, or a business sizing us up", - "heading": "Get software built around your problem", - "icon": "hammer" - }, - "join": { - "button": "Start here", - "description": "Build with us, hear from us now and then, or tell us what should change on this page.", - "for_whom": "For anyone who wants in, on their own terms", - "heading": "Work with us, or just stay in touch", - "icon": "handshake" - } - }, - "needs": { - "custody": { - "button": "Send to a custodian", - "description": "For anyone who runs on, builds on, or is affected by the redoal network and needs to reach the people who keep its first node.", - "encouragement": "A custodian reads every message that comes in here.", - "form_description": "Tell us what the network is doing, or not doing, and how we can reach you.", - "form_title": "Reach a custodian", - "heading": "Get an answer from the people who keep the network", - "hints": { - "about": "We run our order system on a relay node and it's been dropping messages since Tuesday", - "email": "you@yourcompany.com", - "name": "Your name", - "what": "A relay node is misbehaving" - }, - "icon": "shield", - "labels": { - "about": "What's going on", - "email": "Email", - "name": "Name", - "what": "In short" - }, - "road_description": "We open it and start a dialogue with you. Once we understand what the network is keeping that it shouldn't, we work it through to resolved, or tell you plainly if we can't.", - "road_icon": "route", - "road_title": "What happens next", - "who_title": "Who reads this", - "who_icon": "user-check", - "who_description": "A custodian reads it directly; if it's urgent, write to bl@uhhm.no in the meantime." - } - }, - "question": "What brings you here?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/05-questions_join_index.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/05-questions_join_index.yaml.md deleted file mode 100644 index 493c581..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/05-questions_join_index.yaml.md +++ /dev/null @@ -1,208 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/join/index.yaml -It is a page one kind of visitor reaches from the front door. `question` is what this page asks them; under `needs`, each entry is one alternative they can pick, with the form behind it. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "description": "", - "needs": { - "collaborate": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "interest": "", - "name": "", - "note": "" - }, - "icon": "", - "labels": { - "email": "", - "interest": "", - "name": "", - "note": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "propose": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "page": "", - "proposed_yaml": "", - "rationale": "", - "submitted_by": "" - }, - "icon": "", - "labels": { - "email": "", - "page": "", - "proposed_yaml": "", - "rationale": "", - "submitted_by": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - }, - "subscribe": { - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "email": "", - "name": "" - }, - "icon": "", - "labels": { - "email": "", - "name": "" - }, - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "description": "Three ways to be part of what UHHM builds: work with us, hear from us, or fix something on this site.", - "needs": { - "collaborate": { - "button": "Get in touch", - "description": "You want to build software with people who read the whole brief, not just the summary.", - "encouragement": "A person reads this, not a form filter — worth the ten minutes.", - "form_description": "Tell us who you are and what kind of work you're after.", - "form_title": "Say hello", - "heading": "Work with people who read the whole thing", - "hints": { - "email": "you@example.com", - "interest": "Backend work, or something design-heavy", - "name": "Your name", - "note": "A bit about what you'd want to work on, or a link to your work" - }, - "icon": "handshake", - "labels": { - "email": "Email", - "interest": "What kind of work", - "name": "Name", - "note": "Tell us more" - }, - "road_description": "We read what you send and get back to you. If there's a fit, we invite you in and you start working with us — and if things ever change, that's fine too.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads this directly — for anything urgent, write to bl@uhhm.no.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "propose": { - "button": "Send change", - "description": "You've spotted something on this site that should read differently, and you know roughly how.", - "encouragement": "Even a rough version helps — we can tidy the wording ourselves.", - "form_description": "Point us to the page and show us the change.", - "form_title": "Propose a change", - "heading": "Get a page fixed the way you'd write it", - "hints": { - "email": "you@example.com", - "page": "questions/join/index.yaml", - "proposed_yaml": "heading: \"A clearer way to say this\"", - "rationale": "The current heading doesn't say what you actually get", - "submitted_by": "Your name" - }, - "icon": "pencil", - "labels": { - "email": "Email", - "page": "Which page", - "proposed_yaml": "Your proposed text", - "rationale": "Why this is better", - "submitted_by": "Your name" - }, - "road_description": "Someone here reads your proposal and either makes the change or explains why not. Either way, you'll hear back.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner reads every proposal before anything changes — reach us at bl@uhhm.no if it's time-sensitive.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "subscribe": { - "button": "Sign up", - "description": "You'd rather hear from us now and then than check back on your own.", - "encouragement": "One click unsubscribes you later, no questions asked.", - "form_description": "Just your email, or your name too if you'd like.", - "form_title": "Stay in the loop", - "heading": "Hear from us only when there's something to say", - "hints": { - "email": "you@example.com", - "name": "Your name" - }, - "icon": "mail", - "labels": { - "email": "Email", - "name": "Name" - }, - "road_description": "You're on the list. We write when there's something worth saying, and you can leave the list whenever you like.", - "road_icon": "bell", - "road_title": "What happens next", - "who_description": "An owner sends these notes directly — write to bl@uhhm.no if you'd rather ask something first.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "How do you want to be part of this?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/06-questions_owners_index.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/06-questions_owners_index.yaml.md deleted file mode 100644 index 56e3fe7..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/06-questions_owners_index.yaml.md +++ /dev/null @@ -1,236 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/owners/index.yaml -It is a desk: the page one role inside the business works from. Under `buckets`, each entry is a list of cases; `moves` are the buttons that move a case from one stage to the next (key `from->to`), so label each with what the person has just done. Under `links` are pages this role can open. Under `invites`, each entry is a form that invites a person into that group - they get an account and a one-time link - and `invited` is the list of invites sent. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "buckets": { - "applicants": { - "description": "", - "heading": "", - "moves": { - "active->declined": "declined>", - "active->departed": "departed>", - "invited->active": "active>", - "invited->declined": "declined>", - "open->declined": "declined>", - "open->invited": "invited>" - } - }, - "custody_requests": { - "description": "", - "heading": "", - "moves": {} - }, - "development_proposals": { - "description": "", - "heading": "", - "moves": { - "open->approved": "approved>", - "open->rejected": "rejected>" - } - }, - "organizations": { - "description": "", - "heading": "", - "moves": { - "client->past_client": "past_client>", - "prospect->client": "client>", - "prospect->past_client": "past_client>" - } - }, - "projects": { - "description": "", - "heading": "", - "moves": { - "open->accepted": "accepted>", - "open->declined": "declined>" - } - }, - "subscribers": { - "description": "", - "heading": "", - "moves": { - "open->unsubscribed": "unsubscribed>" - } - }, - "trials": { - "description": "", - "heading": "", - "moves": { - "approved->declined": "declined>", - "approved->previewed": "previewed>", - "open->approved": "approved>", - "open->declined": "declined>" - } - } - }, - "confirm": "", - "description": "", - "invited": { - "description": "", - "done": "", - "heading": "" - }, - "invites": { - "custodians": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "email": "", - "name": "" - } - }, - "owners": { - "button": "", - "description": "", - "form_title": "", - "heading": "", - "labels": { - "email": "", - "name": "" - } - } - }, - "links": { - "prospect": { - "button": "", - "description": "", - "heading": "" - } - }, - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -{ - "buckets": { - "applicants": { - "description": "People who've asked to build with us, waiting on a decision or already working alongside us.", - "heading": "People who want to build with us", - "moves": { - "active->declined": "End collaboration", - "active->departed": "Mark departed", - "invited->active": "Confirm active", - "invited->declined": "Withdraw invite", - "open->declined": "Decline applicant", - "open->invited": "Send invite" - } - }, - "custody_requests": { - "description": "Questions and issues raised with the people who keep the first node - custodians handle these, but you can see where each one stands.", - "heading": "What's been raised with custodians", - "moves": {} - }, - "development_proposals": { - "description": "Changes visitors have proposed for pages on this site, waiting on a yes or no.", - "heading": "Proposed changes to the site", - "moves": { - "open->approved": "Approve change", - "open->rejected": "Reject change" - } - }, - "organizations": { - "description": "Organizations you've met, tracked from first contact through to client and beyond.", - "heading": "Organizations you're tracking", - "moves": { - "client->past_client": "Mark past client", - "prospect->client": "Mark as client", - "prospect->past_client": "Mark not pursued" - } - }, - "projects": { - "description": "Briefs sent in by organizations with a problem they want solved.", - "heading": "Briefs waiting on a reply", - "moves": { - "open->accepted": "Accept brief", - "open->declined": "Decline brief" - } - }, - "subscribers": { - "description": "People who want to hear from you now and then.", - "heading": "Who's hearing from you", - "moves": { - "open->unsubscribed": "Unsubscribe them" - } - }, - "trials": { - "description": "Businesses who want to see their own workflow as a working site before committing to anything.", - "heading": "Trial sites in progress", - "moves": { - "approved->declined": "Decline trial", - "approved->previewed": "Mark previewed", - "open->approved": "Approve trial", - "open->declined": "Decline trial" - } - } - }, - "confirm": "Confirm", - "description": "Everything waiting on you: briefs, trials, applicants, subscribers, and proposals, all in one place.", - "invited": { - "description": "People you've invited in, and whether they've taken it up yet.", - "done": "Taken up", - "heading": "Invites you've sent" - }, - "invites": { - "custodians": { - "button": "Send invite", - "description": "Bring someone in to help keep the first node and answer for the network.", - "form_title": "Invite a custodian", - "heading": "Bring in a custodian", - "labels": { - "email": "Their email", - "name": "Their name" - } - }, - "owners": { - "button": "Send invite", - "description": "Bring someone in to work this desk alongside you.", - "form_title": "Invite an owner", - "heading": "Bring in another owner", - "labels": { - "email": "Their email", - "name": "Their name" - } - } - }, - "links": { - "prospect": { - "button": "Add prospect", - "description": "Write down an organization worth following up, and track it from first contact onward.", - "heading": "Track a new organization" - } - }, - "question": "What's waiting on me today?" -} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/07-questions_owners_prospect-sent.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/07-questions_owners_prospect-sent.yaml.md deleted file mode 100644 index 2bc4507..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/07-questions_owners_prospect-sent.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/owners/prospect-sent.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to site", - "description": "Thanks — we've got your prospect written down, and it now moves through the desk with everything else we're tracking.", - "next_description": "An owner walks it from prospect to client, and on to past client, as the relationship moves.", - "next_heading": "It's on the desk now", - "question": "What happens to this now?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/08-questions_owners_prospect.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/08-questions_owners_prospect.yaml.md deleted file mode 100644 index 290d1f2..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/08-questions_owners_prospect.yaml.md +++ /dev/null @@ -1,92 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/owners/prospect.yaml -It is a page only one role inside the business can open, holding one form. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "button": "", - "description": "", - "encouragement": "", - "form_description": "", - "form_title": "", - "heading": "", - "hints": { - "contact": "", - "name": "", - "note": "" - }, - "icon": "", - "labels": { - "contact": "", - "name": "", - "note": "" - }, - "page_description": "", - "question": "", - "road_description": "", - "road_icon": "", - "road_title": "", - "who_description": "", - "who_icon": "", - "who_title": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "button": "Add to prospects", - "description": "One line per organization worth watching, moved through the stages as things develop.", - "encouragement": "Takes a minute, and it's yours to update later.", - "form_description": "Name the organization and where things stand.", - "form_title": "New prospect", - "heading": "Keep an organization on your radar", - "hints": { - "contact": "met at the bakers' conference, [email protected]", - "name": "Nordvik Bakery", - "note": "wants a booking flow, follow up after harvest season" - }, - "icon": "briefcase", - "labels": { - "contact": "Contact", - "name": "Organization", - "note": "Note" - }, - "page_description": "Write down an organization worth following up, and move it through client and past client as things develop.", - "question": "Is there an organization I should be keeping track of?", - "road_description": "It sits as a prospect until something moves - then you mark it client, and later past client if the work ends.", - "road_icon": "route", - "road_title": "Moves as you update it", - "who_description": "Only you see this, so keep it wherever you check next.", - "who_icon": "user", - "who_title": "Just for you" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/09-questions_received_collaborate.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/09-questions_received_collaborate.yaml.md deleted file mode 100644 index 6f83c69..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/09-questions_received_collaborate.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/collaborate.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to site", - "description": "Your note is in. An owner reads every one and will get back to you if there's a fit worth exploring.", - "next_description": "If it looks like a fit, we'll reach out to talk about where you could help.", - "next_heading": "We'll write if there's a fit", - "question": "What happens to what I just sent?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/10-questions_received_commission.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/10-questions_received_commission.yaml.md deleted file mode 100644 index 225f61e..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/10-questions_received_commission.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/commission.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to home", - "description": "Your brief is in. An owner reads every commission end to end before replying.", - "next_description": "Expect a reply within a few working days, either way, straight to your inbox.", - "next_heading": "A real reply from someone who read it", - "question": "What happens now that we've sent our brief?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/11-questions_received_custody.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/11-questions_received_custody.yaml.md deleted file mode 100644 index ee326dc..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/11-questions_received_custody.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/custody.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to the site", - "description": "A custodian reads every message about the redoal network and what it keeps.", - "next_description": "Expect a reply once your report has been looked at and the network checked.", - "next_heading": "A custodian is on it", - "question": "Who looks after what the network keeps?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/12-questions_received_propose.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/12-questions_received_propose.yaml.md deleted file mode 100644 index 1ddaf45..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/12-questions_received_propose.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/propose.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back home", - "description": "Your proposal is in. Someone here will read it and decide whether it fits before anything changes on the page.", - "next_description": "We'll write back once it's been read — approved and made live, or turned down with a reason.", - "next_heading": "A read, then a decision", - "question": "What happens to my proposal now?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/13-questions_received_subscribe.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/13-questions_received_subscribe.yaml.md deleted file mode 100644 index 2760f6f..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/13-questions_received_subscribe.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/subscribe.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to site", - "description": "You'll hear from us when there's something worth saying, not on a schedule.", - "next_description": "You're on the list. Every note has an unsubscribe link if it stops being useful.", - "next_heading": "You're on the list", - "question": "What happens now that I've subscribed?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/14-questions_received_trial.yaml.md b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/14-questions_received_trial.yaml.md deleted file mode 100644 index 062e729..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/llm/14-questions_received_trial.yaml.md +++ /dev/null @@ -1,52 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- door build: for an organization with a problem software should solve, or a business that wants to see its own workflow as a working site before paying anyone; behind it: commission, trial -- door join: for someone who wants to build with us, hear from us now and then, or change this site; behind it: collaborate, subscribe, propose -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/received/trial.yaml -It is a page shown right after someone has sent a form. Say who reads it, when they answer, and what happens next. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "back": "", - "description": "", - "next_description": "", - "next_heading": "", - "question": "" -} - -Reply with the JSON object only. - -=== REPLY === -```json -{ - "back": "Back to site", - "description": "We read every trial request ourselves before anything gets built.", - "next_description": "If it looks like a fit, we'll draft your site from your own words and send it back for your say before anything goes live.", - "next_heading": "A first draft, built from your own words", - "question": "What happens now that you've sent this?" -} -``` diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/needs.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/needs.yaml deleted file mode 100644 index 4c8e7d3..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/needs.yaml +++ /dev/null @@ -1,173 +0,0 @@ -needs: -- done_when: - - accepted - - declined - enters: / - handled_by: owners - id: commission - lands_in: projects - max_fields: 4 - max_steps: 1 - stages: - - open - - accepted - - declined - success: - - accepted - via: 'Have us build it: send the brief' - wants: a considered reply to a brief, from people who read the whole thing - who: an organization with a problem it wants software to solve -- done_when: - - previewed - - declined - enters: / - handled_by: owners - id: trial - lands_in: trials - max_fields: 6 - max_steps: 1 - stages: - - open - - approved - - previewed - - declined - success: - - previewed - via: See your own business as a site, before you buy anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first - who: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything -- done_when: - - departed - - declined - enters: / - handled_by: owners - id: collaborate - lands_in: applicants - max_fields: 3 - max_steps: 1 - stages: - - open - - invited - - active - - departed - - declined - success: - - departed - via: Work with us - wants: to be read as a person, and invited in if there is a fit - who: someone who wants to work with us on what we build -- done_when: - - unsubscribed - enters: / - handled_by: owners - id: subscribe - lands_in: subscribers - max_fields: 2 - max_steps: 1 - stages: - - open - - unsubscribed - success: [] - via: Hear from us now and then - wants: a note now and then, and an easy way out - who: someone who wants to hear from us when there is something to say -- done_when: - - approved - - rejected - enters: / - handled_by: owners - id: propose - lands_in: development_proposals - max_fields: 3 - max_steps: 1 - stages: - - open - - approved - - rejected - success: - - approved - via: Suggest a change to this website - wants: the change read by a person and, if approved, made - who: a visitor who sees how a page on this site should change -- done_when: - - resolved - - declined - enters: / - handled_by: custodians - id: custody - lands_in: custody_requests - max_fields: 4 - max_steps: 1 - stages: - - open - - in_dialogue - - resolved - - declined - success: - - resolved - via: 'You are on the redoal network: a node, an app, or a recording that concerns you' - wants: an answer from a custodian, and action where the network keeps something it should not - who: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node -- done_when: - - past_client - enters: /owners/prospect - enters_as: owners - handled_by: owners - id: prospect - lands_in: organizations - max_fields: 2 - max_steps: 1 - stages: - - prospect - - client - - past_client - success: [] - via: Keep an organization on your radar - wants: it written down and walked through its states from the desk - who: an owner who has met an organization worth following up -personas: -- id: architecture-firm - need: commission - text: We run a small architecture firm and our project files are scattered across three cloud drives. We want to pay someone to set up proper storage and backups we control ourselves. -- id: climbing-gym-founder - need: commission - text: I have an idea for a booking app for climbing gyms and I'm looking for a team that can build the first version with me. -- id: municipality-buyer - need: commission - text: Our municipality needs an internal tool for tracking building permits. We are looking for a vendor who can scope it and deliver it. -- id: exhibition-visitor - need: subscribe - text: I saw your drawing network at an exhibition and liked it. I don't want to get involved, I'd just like to know when there is news. -- id: tech-journalist - need: subscribe - text: I write about Nordic technology. Keep me posted on what you release so I can cover it. -- id: rust-developer - need: collaborate - text: I'm a Rust developer between jobs and I like that you build in the open. I would love to contribute, and maybe join you. -- id: interaction-designer - need: collaborate - text: I'm an interaction designer. I want to work with you on the drawing interface. -- id: student-intern - need: collaborate - text: I'm a computer science student looking for a summer internship doing infrastructure work. -- id: plumber-owner - need: trial - text: I run a plumbing company with four vans. Jobs come in by phone and text and some get lost. I'd like to see how this would look for us before I spend any money. -- id: dance-school - need: trial - text: We are a dance school. Enrolments, cancellations and invoices all go through one email inbox that only I understand. Can you show me a version made for us? -- id: node-runner - need: custody - text: I run a small server in Berlin and want to host a redoal node that peers with yours. Who do I talk to? -- id: recorded-name - need: custody - text: Someone left a recording on redoal that says my full name and where I live. I want it gone, and I want to know who is responsible for that network. -- id: app-builder - need: custody - text: I'm building a music app and would like to use redoal's gesture addresses in it. Is that possible, and who decides? -- id: wording-fix - need: propose - text: The subscribe page should say how often you actually write. I'd like to suggest that exact change to the page. -- id: rewrite - need: propose - text: One page on this site reads wrong to me and I know exactly how I'd rewrite it. Where do I send the new text? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/custodians/_section.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/custodians/_section.yaml deleted file mode 100644 index de40ef5..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/custodians/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: custodians diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/custodians/index.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/custodians/index.yaml deleted file mode 100644 index 6a0b293..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/custodians/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -alternatives: -- action: /custodians - consequence: - - Confirm - description: Cases from people who use, build on, or answer for something the redoal network touches, and need a custodian's word on it. - features: - - description: '' - name: '' - resource: - requires_group: custodians - source: - bucket: custody_requests - kind: kv - transitions: - - from: in_dialogue - label: Mark resolved - to: resolved - - from: in_dialogue - label: Close, no action - to: declined - - from: open - label: Open dialogue - to: in_dialogue - - from: open - label: Decline case - to: declined - name: Custody cases waiting on you -- action: /custodians - consequence: - - Invite custodian - description: Give someone an account and a one-time link to join as a custodian. - features: - - description: '' - name: Invite a custodian - requirements: - - label: Name - name: name - - label: Email - name: email - type: email - invite: - group: custodians - name: Bring in another custodian -- action: /custodians - consequence: - - Confirm - description: Custodians invited but not yet signed in. - features: - - description: '' - name: '' - resource: - requires_group: custodians - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Signed in - to: done - name: Invited custodians -description: 'The desk for custodians: open custody cases, and the people invited to answer them.' -name: What is waiting on the custodians? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/decide/subscribe.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/decide/subscribe.yaml deleted file mode 100644 index 45114ca..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/decide/subscribe.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: You'll stop hearing from us. Nothing else changes. - name: Stop getting notes from us - self_transition: - bucket: subscribers - label: Unsubscribe - to: unsubscribed -description: You're on our list. Change your mind whenever you like. -name: Do you want to keep hearing from us? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/index.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/index.yaml deleted file mode 100644 index 6ab11ed..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/index.yaml +++ /dev/null @@ -1,270 +0,0 @@ -alternatives: -- description: Two things, both built here and both running. - features: - - description: The gesture math, the relay, the first node, and the portal this page runs on. UHHM answers for what that network keeps. - name: The redoal network, built and carried here - - description: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. - icon: lucide:layers - name: Software built around a clear argument - name: What UHHM does -- description: Nothing to fill in here. What is already out in the world, and the network as it runs right now. - features: - - description: A few things already out in the world. - icon: lucide:hammer - name: What we have built - resource: - jq: | - .[] | {name: .name, description: .description, url: (if .website != null and .website != "" then .website elif .private then null else .html_url end)} - public: true - source: - kind: gitea_starred - username: bl - - description: Straight from the relay, the first node of the network. - icon: lucide:activity - name: The redoal network, live - resource: - empty: The first voice has not echoed yet. - jq: | - { "name": (.voices_echoed | tostring), - "description": "voices echoed so far" } - public: true - source: - kind: url - url: https://relay.redoal.com/pulse - name: Have a look around first -- action: /received/commission - consequence: - - Send the brief - description: You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing. - encouragements: - - Someone here reads every brief in full before writing back. - features: - - description: We read your brief and either take it on or tell you honestly if it's not a fit. - icon: lucide:route - name: What happens next - - description: One of the owners reads it; write to bl@uhhm.no if you'd rather reach us directly. - icon: lucide:user-check - name: Who reads this - - description: The more of the problem you put in, the better the reply. - icon: lucide:briefcase - name: Tell us the problem - requirements: - - label: Your name - name: name - placeholder: Sara Nilsen - type: text - - label: Your email - name: email - placeholder: sara@company.com - type: email - - label: The problem you want solved - name: project - placeholder: Our drivers log hours on paper and it takes a day to get them into payroll. - type: textarea - - label: Your organization - name: organization - placeholder: Nilsen Transport AS - type: text - - label: Who we should talk to - name: org_contact - optional: true - placeholder: Sara Nilsen, ops manager - type: text - name: 'Have us build it: send the brief' - record_as: projects -- action: /received/trial - consequence: - - Start the draft - description: Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through. - encouragements: - - A person looks at what you send before anything gets built. - features: - - description: We look at what you sent and, if it's a fit, build a draft from your own roles and words for you to see before anything moves further. - icon: lucide:route - name: What happens next - - description: An owner looks at what you send; write to bl@uhhm.no if you'd rather reach us directly. - icon: lucide:user-check - name: Who reads this - - description: Answer in your own words - there's no wrong way to describe your business. - icon: lucide:layers - name: Describe your business - requirements: - - label: Your business - name: business - placeholder: Nilsen Transport AS - type: text - - label: Your email - name: email - placeholder: sara@company.com - type: email - - label: What you do - name: what_we_do - placeholder: We move freight for local businesses and handle the paperwork for them. - type: textarea - - label: Who comes to you - name: who_comes_to_us - placeholder: Local businesses that need something moved on short notice. - type: textarea - - label: What you keep track of - name: what_we_keep_track_of - placeholder: Bookings, driver hours, and which loads are still waiting on a signature. - type: textarea - - label: Who's involved - name: who_is_involved - placeholder: Drivers, dispatchers, and the customers waiting on their delivery. - type: textarea - - label: What slows you down - name: what_slows_us_down - optional: true - placeholder: Approvals sit in someone's inbox for days before anyone acts on them. - type: textarea - name: See your own business as a site, before you buy anything - record_as: trials -- action: /received/collaborate - consequence: - - Get in touch - description: 'A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.' - encouragements: - - A person reads this, not a form filter — worth the ten minutes. - features: - - description: We read what you send and get back to you. If there's a fit, we invite you in and you start working with us — and if things ever change, that's fine too. - icon: lucide:route - name: What happens next - - description: One of the owners reads this directly — for anything urgent, write to bl@uhhm.no. - icon: lucide:user-check - name: Who reads this - - description: Tell us who you are and what kind of work you're after. - icon: lucide:handshake - name: Say hello - requirements: - - label: Name - name: name - placeholder: Your name - type: text - - label: Email - name: email - placeholder: you@example.com - type: email - - label: What kind of work - name: interest - placeholder: Backend work, or something design-heavy - type: textarea - - label: Tell us more - name: note - optional: true - placeholder: A bit about what you'd want to work on, or a link to your work - type: textarea - name: Work with us - record_as: applicants -- action: /received/subscribe - consequence: - - Sign up - description: You'd rather hear from us now and then than check back on your own. - encouragements: - - One click unsubscribes you later, no questions asked. - features: - - description: You're on the list. We write when there's something worth saying, and you can leave the list whenever you like. - icon: lucide:bell - name: What happens next - - description: An owner sends these notes directly — write to bl@uhhm.no if you'd rather ask something first. - icon: lucide:user-check - name: Who reads this - - description: Just your email, or your name too if you'd like. - icon: lucide:mail - name: Stay in the loop - requirements: - - label: Name - name: name - placeholder: Your name - type: text - - label: Email - name: email - placeholder: you@example.com - type: email - name: Hear from us now and then - record_as: subscribers -- action: /received/propose - consequence: - - Send change - description: You have spotted a page on uhhm.no that should read differently, and you know roughly how. - encouragements: - - Even a rough version helps — we can tidy the wording ourselves. - features: - - description: Someone here reads your proposal and either makes the change or explains why not. Either way, you'll hear back. - icon: lucide:route - name: What happens next - - description: An owner reads every proposal before anything changes — reach us at bl@uhhm.no if it's time-sensitive. - icon: lucide:user-check - name: Who reads this - - description: Point us to the page and show us the change. - icon: lucide:pencil - name: Propose a change - requirements: - - label: Your name - name: submitted_by - placeholder: Your name - type: text - - label: Email - name: email - optional: true - placeholder: you@example.com - type: email - - label: Which page - name: page - optional: true - placeholder: questions/join/index.yaml - type: text - - label: Why this is better - name: rationale - placeholder: The current heading doesn't say what you actually get - type: textarea - - label: Your proposed text - name: proposed_yaml - placeholder: 'heading: "A clearer way to say this"' - type: textarea - name: Suggest a change to this website - record_as: development_proposals -- action: /received/custody - consequence: - - Send to a custodian - description: UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at. - encouragements: - - A custodian reads every message that comes in here. - features: - - description: A custodian opens a dialogue with you. A node gets its peer, a builder gets an answer, and something the network should not keep gets removed. Either way you hear what was decided. - icon: lucide:route - name: What happens next - - description: A custodian reads it directly; if it's urgent, write to bl@uhhm.no in the meantime. - icon: lucide:user-check - name: Who reads this - - description: Say which of the four it is, and what you need, in a few lines. - icon: lucide:shield - name: Reach a custodian - requirements: - - label: Name - name: name - placeholder: Your name - type: text - - label: Email - name: email - placeholder: you@yourcompany.com - type: email - - label: What's going on - name: about - options: - - Running a node of my own - - Building on the network - - Something the network keeps about me - - Something else - type: select - - label: In short - name: what - placeholder: A relay node is misbehaving - type: textarea - name: 'You are on the redoal network: a node, an app, or a recording that concerns you' - record_as: custody_requests -description: UHHM builds software for organisations that can say what problem they have, and keeps the redoal network underneath. -name: What is UHHM, and what can you get here? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/owners/_section.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/owners/_section.yaml deleted file mode 100644 index 670fca7..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/owners/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: owners diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/owners/index.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/owners/index.yaml deleted file mode 100644 index a59e0b0..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/owners/index.yaml +++ /dev/null @@ -1,212 +0,0 @@ -alternatives: -- action: /owners - consequence: - - Confirm - description: People who've asked to build with us, waiting on a decision or already working alongside us. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: applicants - kind: kv - transitions: - - from: active - label: Mark departed - to: departed - - from: active - label: End collaboration - to: declined - - from: invited - label: Confirm active - to: active - - from: invited - label: Withdraw invite - to: declined - - from: open - label: Send invite - to: invited - - from: open - label: Decline applicant - to: declined - name: People who want to build with us -- action: /owners - consequence: - - Confirm - description: Questions and issues raised with the people who keep the first node - custodians handle these, but you can see where each one stands. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: custody_requests - kind: kv - transitions: [] - name: What's been raised with custodians -- action: /owners - consequence: - - Confirm - description: Changes visitors have proposed for pages on this site, waiting on a yes or no. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: development_proposals - kind: kv - transitions: - - from: open - label: Approve change - to: approved - - from: open - label: Reject change - to: rejected - name: Proposed changes to the site -- action: /owners - consequence: - - Confirm - description: Organizations you've met, tracked from first contact through to client and beyond. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: organizations - kind: kv - transitions: - - from: client - label: Mark past client - to: past_client - - from: prospect - label: Mark as client - to: client - - from: prospect - label: Mark not pursued - to: past_client - name: Organizations you're tracking -- action: /owners - consequence: - - Confirm - description: Briefs sent in by organizations with a problem they want solved. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: projects - kind: kv - transitions: - - from: open - label: Accept brief - to: accepted - - from: open - label: Decline brief - to: declined - name: Briefs waiting on a reply -- action: /owners - consequence: - - Confirm - description: People who want to hear from you now and then. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: subscribers - kind: kv - transitions: - - from: open - label: Unsubscribe them - to: unsubscribed - name: Who's hearing from you -- action: /owners - consequence: - - Confirm - description: Businesses who want to see their own workflow as a working site before committing to anything. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: trials - kind: kv - transitions: - - from: approved - label: Mark previewed - to: previewed - - from: approved - label: Decline trial - to: declined - - from: open - label: Approve trial - to: approved - - from: open - label: Decline trial - to: declined - name: Trial sites in progress -- action: /owners/prospect - consequence: - - Add prospect - description: Write down an organization worth following up, and track it from first contact onward. - name: Track a new organization -- action: /owners - consequence: - - Send invite - description: Bring someone in to help keep the first node and answer for the network. - features: - - description: '' - name: Invite a custodian - requirements: - - label: Their name - name: name - - label: Their email - name: email - type: email - invite: - group: custodians - name: Bring in a custodian -- action: /owners - consequence: - - Send invite - description: Bring someone in to work this desk alongside you. - features: - - description: '' - name: Invite an owner - requirements: - - label: Their name - name: name - - label: Their email - name: email - type: email - invite: - group: owners - name: Bring in another owner -- action: /owners - consequence: - - Confirm - description: People you've invited in, and whether they've taken it up yet. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Taken up - to: done - name: Invites you've sent -description: 'Everything waiting on you: briefs, trials, applicants, subscribers, and proposals, all in one place.' -name: What's waiting on me today? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/owners/prospect-sent.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/owners/prospect-sent.yaml deleted file mode 100644 index d49a1d4..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/owners/prospect-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: An owner walks it from prospect to client, and on to past client, as the relationship moves. - name: It's on the desk now -- action: /owners - consequence: - - Back to site - description: '' - name: Back to site -description: Thanks — we've got your prospect written down, and it now moves through the desk with everything else we're tracking. -name: What happens to this now? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/owners/prospect.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/owners/prospect.yaml deleted file mode 100644 index 581bd11..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/owners/prospect.yaml +++ /dev/null @@ -1,39 +0,0 @@ -alternatives: -- action: /owners/prospect-sent - consequence: - - Add to prospects - description: One line per organization worth watching, moved through the stages as things develop. - encouragements: - - Takes a minute, and it's yours to update later. - features: - - description: It sits as a prospect until something moves - then you mark it client, and later past client if the work ends. - icon: lucide:route - name: Moves as you update it - - description: Only you see this, so keep it wherever you check next. - icon: lucide:user - name: Just for you - - description: Name the organization and where things stand. - icon: lucide:briefcase - name: New prospect - requirements: - - label: Organization - name: name - placeholder: Nordvik Bakery - type: text - - label: Contact - name: contact - placeholder: met at the bakers' conference, [email protected] - type: text - - label: Note - name: note - optional: true - placeholder: wants a booking flow, follow up after harvest season - type: textarea - name: Keep an organization on your radar - record_as: organizations -description: Write down an organization worth following up, and move it through client and past client as things develop. -followup: false -name: Is there an organization I should be keeping track of? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/collaborate.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/collaborate.yaml deleted file mode 100644 index c612fe8..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/collaborate.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: If it looks like a fit, we'll reach out to talk about where you could help. - name: We'll write if there's a fit -- action: / - consequence: - - Back to site - description: '' - name: Back to site -description: Your note is in. An owner reads every one and will get back to you if there's a fit worth exploring. -name: What happens to what I just sent? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/commission.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/commission.yaml deleted file mode 100644 index 59e77bc..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/commission.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Expect a reply within a few working days, either way, straight to your inbox. - name: A real reply from someone who read it -- action: / - consequence: - - Back to home - description: '' - name: Back to home -description: Your brief is in. An owner reads every commission end to end before replying. -name: What happens now that we've sent our brief? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/custody.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/custody.yaml deleted file mode 100644 index 150966f..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/custody.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Expect a reply once your report has been looked at and the network checked. - name: A custodian is on it -- action: / - consequence: - - Back to the site - description: '' - name: Back to the site -description: A custodian reads every message about the redoal network and what it keeps. -name: Who looks after what the network keeps? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/propose.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/propose.yaml deleted file mode 100644 index 1ae02a9..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/propose.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: We'll write back once it's been read — approved and made live, or turned down with a reason. - name: A read, then a decision -- action: / - consequence: - - Back home - description: '' - name: Back home -description: Your proposal is in. Someone here will read it and decide whether it fits before anything changes on the page. -name: What happens to my proposal now? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/subscribe.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/subscribe.yaml deleted file mode 100644 index c2910bb..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/subscribe.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: You're on the list. Every note has an unsubscribe link if it stops being useful. - name: You're on the list -- action: / - consequence: - - Back to site - description: '' - name: Back to site -description: You'll hear from us when there's something worth saying, not on a schedule. -name: What happens now that I've subscribed? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/trial.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/trial.yaml deleted file mode 100644 index 586bcd3..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/questions/received/trial.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: If it looks like a fit, we'll draft your site from your own words and send it back for your say before anything goes live. - name: A first draft, built from your own words -- action: / - consequence: - - Back to site - description: '' - name: Back to site -description: We read every trial request ourselves before anything gets built. -name: What happens now that you've sent this? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/site.yaml b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/site.yaml deleted file mode 100644 index aa5de2a..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/site.yaml +++ /dev/null @@ -1,2 +0,0 @@ -lang: en -title: UHHM diff --git a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/words.json b/vendor/trainer/runs/uhhm-2026-09-23/r4/site/words.json deleted file mode 100644 index 71ffe6d..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/r4/site/words.json +++ /dev/null @@ -1,431 +0,0 @@ -{ - "questions/custodians/index.yaml": { - "buckets": { - "custody_requests": { - "description": "Cases from people who use, build on, or answer for something the redoal network touches, and need a custodian's word on it.", - "heading": "Custody cases waiting on you", - "moves": { - "in_dialogue->declined": "Close, no action", - "in_dialogue->resolved": "Mark resolved", - "open->declined": "Decline case", - "open->in_dialogue": "Open dialogue" - } - } - }, - "confirm": "Confirm", - "description": "The desk for custodians: open custody cases, and the people invited to answer them.", - "invited": { - "description": "Custodians invited but not yet signed in.", - "done": "Signed in", - "heading": "Invited custodians" - }, - "invites": { - "custodians": { - "button": "Invite custodian", - "description": "Give someone an account and a one-time link to join as a custodian.", - "form_title": "Invite a custodian", - "heading": "Bring in another custodian", - "labels": { - "email": "Email", - "name": "Name" - } - } - }, - "links": {}, - "question": "What is waiting on the custodians?" - }, - "questions/decide/subscribe.yaml": { - "description": "You're on our list. Change your mind whenever you like.", - "moves": { - "unsubscribed": { - "button": "Unsubscribe", - "description": "You'll stop hearing from us. Nothing else changes.", - "heading": "Stop getting notes from us" - } - }, - "question": "Do you want to keep hearing from us?" - }, - "questions/index.yaml": { - "description": "UHHM builds software for organisations that can say what problem they have, and keeps the redoal network underneath.", - "doors": {}, - "needs": { - "collaborate": { - "button": "Get in touch", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.", - "encouragement": "A person reads this, not a form filter — worth the ten minutes.", - "form_description": "Tell us who you are and what kind of work you're after.", - "form_title": "Say hello", - "heading": "Work with us", - "hints": { - "email": "you@example.com", - "interest": "Backend work, or something design-heavy", - "name": "Your name", - "note": "A bit about what you'd want to work on, or a link to your work" - }, - "icon": "handshake", - "labels": { - "email": "Email", - "interest": "What kind of work", - "name": "Name", - "note": "Tell us more" - }, - "road_description": "We read what you send and get back to you. If there's a fit, we invite you in and you start working with us — and if things ever change, that's fine too.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads this directly — for anything urgent, write to bl@uhhm.no.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "commission": { - "button": "Send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.", - "encouragement": "Someone here reads every brief in full before writing back.", - "form_description": "The more of the problem you put in, the better the reply.", - "form_title": "Tell us the problem", - "heading": "Have us build it: send the brief", - "hints": { - "email": "sara@company.com", - "name": "Sara Nilsen", - "org_contact": "Sara Nilsen, ops manager", - "organization": "Nilsen Transport AS", - "project": "Our drivers log hours on paper and it takes a day to get them into payroll." - }, - "icon": "briefcase", - "labels": { - "email": "Your email", - "name": "Your name", - "org_contact": "Who we should talk to", - "organization": "Your organization", - "project": "The problem you want solved" - }, - "road_description": "We read your brief and either take it on or tell you honestly if it's not a fit.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads it; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "custody": { - "button": "Send to a custodian", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at.", - "encouragement": "A custodian reads every message that comes in here.", - "form_description": "Say which of the four it is, and what you need, in a few lines.", - "form_title": "Reach a custodian", - "heading": "You are on the redoal network: a node, an app, or a recording that concerns you", - "hints": { - "about": "We run our order system on a relay node and it's been dropping messages since Tuesday", - "email": "you@yourcompany.com", - "name": "Your name", - "what": "A relay node is misbehaving" - }, - "icon": "shield", - "labels": { - "about": "What's going on", - "email": "Email", - "name": "Name", - "what": "In short" - }, - "road_description": "A custodian opens a dialogue with you. A node gets its peer, a builder gets an answer, and something the network should not keep gets removed. Either way you hear what was decided.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A custodian reads it directly; if it's urgent, write to bl@uhhm.no in the meantime.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "propose": { - "button": "Send change", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how.", - "encouragement": "Even a rough version helps — we can tidy the wording ourselves.", - "form_description": "Point us to the page and show us the change.", - "form_title": "Propose a change", - "heading": "Suggest a change to this website", - "hints": { - "email": "you@example.com", - "page": "questions/join/index.yaml", - "proposed_yaml": "heading: \"A clearer way to say this\"", - "rationale": "The current heading doesn't say what you actually get", - "submitted_by": "Your name" - }, - "icon": "pencil", - "labels": { - "email": "Email", - "page": "Which page", - "proposed_yaml": "Your proposed text", - "rationale": "Why this is better", - "submitted_by": "Your name" - }, - "road_description": "Someone here reads your proposal and either makes the change or explains why not. Either way, you'll hear back.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner reads every proposal before anything changes — reach us at bl@uhhm.no if it's time-sensitive.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "subscribe": { - "button": "Sign up", - "description": "You'd rather hear from us now and then than check back on your own.", - "encouragement": "One click unsubscribes you later, no questions asked.", - "form_description": "Just your email, or your name too if you'd like.", - "form_title": "Stay in the loop", - "heading": "Hear from us now and then", - "hints": { - "email": "you@example.com", - "name": "Your name" - }, - "icon": "mail", - "labels": { - "email": "Email", - "name": "Name" - }, - "road_description": "You're on the list. We write when there's something worth saying, and you can leave the list whenever you like.", - "road_icon": "bell", - "road_title": "What happens next", - "who_description": "An owner sends these notes directly — write to bl@uhhm.no if you'd rather ask something first.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "trial": { - "button": "Start the draft", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.", - "encouragement": "A person looks at what you send before anything gets built.", - "form_description": "Answer in your own words - there's no wrong way to describe your business.", - "form_title": "Describe your business", - "heading": "See your own business as a site, before you buy anything", - "hints": { - "business": "Nilsen Transport AS", - "email": "sara@company.com", - "what_slows_us_down": "Approvals sit in someone's inbox for days before anyone acts on them.", - "what_we_do": "We move freight for local businesses and handle the paperwork for them.", - "what_we_keep_track_of": "Bookings, driver hours, and which loads are still waiting on a signature.", - "who_comes_to_us": "Local businesses that need something moved on short notice.", - "who_is_involved": "Drivers, dispatchers, and the customers waiting on their delivery." - }, - "icon": "layers", - "labels": { - "business": "Your business", - "email": "Your email", - "what_slows_us_down": "What slows you down", - "what_we_do": "What you do", - "what_we_keep_track_of": "What you keep track of", - "who_comes_to_us": "Who comes to you", - "who_is_involved": "Who's involved" - }, - "road_description": "We look at what you sent and, if it's a fit, build a draft from your own roles and words for you to see before anything moves further.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner looks at what you send; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "opener": { - "description": "Two things, both built here and both running.", - "features": { - "redoal": { - "description": "The gesture math, the relay, the first node, and the portal this page runs on. UHHM answers for what that network keeps.", - "heading": "The redoal network, built and carried here", - "icon": "waypoints" - }, - "software": { - "description": "Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything.", - "heading": "Software built around a clear argument", - "icon": "layers" - } - }, - "heading": "What UHHM does" - }, - "question": "What is UHHM, and what can you get here?", - "shopping": { - "description": "Nothing to fill in here. What is already out in the world, and the network as it runs right now.", - "heading": "Have a look around first", - "items": { - "built": { - "description": "A few things already out in the world.", - "heading": "What we have built", - "icon": "hammer" - }, - "voices": { - "description": "Straight from the relay, the first node of the network.", - "heading": "The redoal network, live", - "icon": "activity" - } - } - } - }, - "questions/owners/index.yaml": { - "buckets": { - "applicants": { - "description": "People who've asked to build with us, waiting on a decision or already working alongside us.", - "heading": "People who want to build with us", - "moves": { - "active->declined": "End collaboration", - "active->departed": "Mark departed", - "invited->active": "Confirm active", - "invited->declined": "Withdraw invite", - "open->declined": "Decline applicant", - "open->invited": "Send invite" - } - }, - "custody_requests": { - "description": "Questions and issues raised with the people who keep the first node - custodians handle these, but you can see where each one stands.", - "heading": "What's been raised with custodians", - "moves": {} - }, - "development_proposals": { - "description": "Changes visitors have proposed for pages on this site, waiting on a yes or no.", - "heading": "Proposed changes to the site", - "moves": { - "open->approved": "Approve change", - "open->rejected": "Reject change" - } - }, - "organizations": { - "description": "Organizations you've met, tracked from first contact through to client and beyond.", - "heading": "Organizations you're tracking", - "moves": { - "client->past_client": "Mark past client", - "prospect->client": "Mark as client", - "prospect->past_client": "Mark not pursued" - } - }, - "projects": { - "description": "Briefs sent in by organizations with a problem they want solved.", - "heading": "Briefs waiting on a reply", - "moves": { - "open->accepted": "Accept brief", - "open->declined": "Decline brief" - } - }, - "subscribers": { - "description": "People who want to hear from you now and then.", - "heading": "Who's hearing from you", - "moves": { - "open->unsubscribed": "Unsubscribe them" - } - }, - "trials": { - "description": "Businesses who want to see their own workflow as a working site before committing to anything.", - "heading": "Trial sites in progress", - "moves": { - "approved->declined": "Decline trial", - "approved->previewed": "Mark previewed", - "open->approved": "Approve trial", - "open->declined": "Decline trial" - } - } - }, - "confirm": "Confirm", - "description": "Everything waiting on you: briefs, trials, applicants, subscribers, and proposals, all in one place.", - "invited": { - "description": "People you've invited in, and whether they've taken it up yet.", - "done": "Taken up", - "heading": "Invites you've sent" - }, - "invites": { - "custodians": { - "button": "Send invite", - "description": "Bring someone in to help keep the first node and answer for the network.", - "form_title": "Invite a custodian", - "heading": "Bring in a custodian", - "labels": { - "email": "Their email", - "name": "Their name" - } - }, - "owners": { - "button": "Send invite", - "description": "Bring someone in to work this desk alongside you.", - "form_title": "Invite an owner", - "heading": "Bring in another owner", - "labels": { - "email": "Their email", - "name": "Their name" - } - } - }, - "links": { - "prospect": { - "button": "Add prospect", - "description": "Write down an organization worth following up, and track it from first contact onward.", - "heading": "Track a new organization" - } - }, - "question": "What's waiting on me today?" - }, - "questions/owners/prospect-sent.yaml": { - "back": "Back to site", - "description": "Thanks — we've got your prospect written down, and it now moves through the desk with everything else we're tracking.", - "next_description": "An owner walks it from prospect to client, and on to past client, as the relationship moves.", - "next_heading": "It's on the desk now", - "question": "What happens to this now?" - }, - "questions/owners/prospect.yaml": { - "button": "Add to prospects", - "description": "One line per organization worth watching, moved through the stages as things develop.", - "encouragement": "Takes a minute, and it's yours to update later.", - "form_description": "Name the organization and where things stand.", - "form_title": "New prospect", - "heading": "Keep an organization on your radar", - "hints": { - "contact": "met at the bakers' conference, [email protected]", - "name": "Nordvik Bakery", - "note": "wants a booking flow, follow up after harvest season" - }, - "icon": "briefcase", - "labels": { - "contact": "Contact", - "name": "Organization", - "note": "Note" - }, - "page_description": "Write down an organization worth following up, and move it through client and past client as things develop.", - "question": "Is there an organization I should be keeping track of?", - "road_description": "It sits as a prospect until something moves - then you mark it client, and later past client if the work ends.", - "road_icon": "route", - "road_title": "Moves as you update it", - "who_description": "Only you see this, so keep it wherever you check next.", - "who_icon": "user", - "who_title": "Just for you" - }, - "questions/received/collaborate.yaml": { - "back": "Back to site", - "description": "Your note is in. An owner reads every one and will get back to you if there's a fit worth exploring.", - "next_description": "If it looks like a fit, we'll reach out to talk about where you could help.", - "next_heading": "We'll write if there's a fit", - "question": "What happens to what I just sent?" - }, - "questions/received/commission.yaml": { - "back": "Back to home", - "description": "Your brief is in. An owner reads every commission end to end before replying.", - "next_description": "Expect a reply within a few working days, either way, straight to your inbox.", - "next_heading": "A real reply from someone who read it", - "question": "What happens now that we've sent our brief?" - }, - "questions/received/custody.yaml": { - "back": "Back to the site", - "description": "A custodian reads every message about the redoal network and what it keeps.", - "next_description": "Expect a reply once your report has been looked at and the network checked.", - "next_heading": "A custodian is on it", - "question": "Who looks after what the network keeps?" - }, - "questions/received/propose.yaml": { - "back": "Back home", - "description": "Your proposal is in. Someone here will read it and decide whether it fits before anything changes on the page.", - "next_description": "We'll write back once it's been read — approved and made live, or turned down with a reason.", - "next_heading": "A read, then a decision", - "question": "What happens to my proposal now?" - }, - "questions/received/subscribe.yaml": { - "back": "Back to site", - "description": "You'll hear from us when there's something worth saying, not on a schedule.", - "next_description": "You're on the list. Every note has an unsubscribe link if it stops being useful.", - "next_heading": "You're on the list", - "question": "What happens now that I've subscribed?" - }, - "questions/received/trial.yaml": { - "back": "Back to site", - "description": "We read every trial request ourselves before anything gets built.", - "next_description": "If it looks like a fit, we'll draft your site from your own words and send it back for your say before anything goes live.", - "next_heading": "A first draft, built from your own words", - "question": "What happens now that you've sent this?" - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/uhhm-2026-09-23/rated-mails-before/rate.json b/vendor/trainer/runs/uhhm-2026-09-23/rated-mails-before/rate.json deleted file mode 100644 index a104cc7..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/rated-mails-before/rate.json +++ /dev/null @@ -1,204 +0,0 @@ -{ - "collaborate": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 25.81998092513114, - "options": 8, - "overloaded": true, - "page": "/", - "personas": 3, - "required_fields": 3, - "understanding": { - "asked": 3, - "next": 3, - "where": 3, - "which": 3 - } - } - ], - "steps": 1 - }, - "commission": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 26.73015873015873, - "options": 8, - "overloaded": true, - "page": "/", - "personas": 3, - "required_fields": 4, - "understanding": { - "asked": 3, - "next": 3, - "where": 3, - "which": 3 - } - } - ], - "steps": 1 - }, - "custody": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 27.915853336850432, - "options": 8, - "overloaded": true, - "page": "/", - "personas": 3, - "required_fields": 4, - "understanding": { - "asked": 3, - "next": 3, - "where": 3, - "which": 3 - } - } - ], - "steps": 1 - }, - "mail custody_requests:declined": { - "lix": 28.275, - "words": 31 - }, - "mail custody_requests:open": { - "lix": 25.15, - "words": 31 - }, - "mail custody_requests:resolved": { - "lix": 28.275, - "words": 31 - }, - "mail projects:accepted": { - "lix": 22.666666666666668, - "words": 29 - }, - "mail projects:declined": { - "lix": 22.666666666666668, - "words": 29 - }, - "mail projects:open": { - "lix": 18.391941391941394, - "words": 35 - }, - "mail trials:approved": { - "lix": 20.757894736842104, - "words": 36 - }, - "mail trials:declined": { - "lix": 20.757894736842104, - "words": 36 - }, - "mail trials:open": { - "lix": 18.126315789473686, - "words": 36 - }, - "mail trials:previewed": { - "lix": 20.757894736842104, - "words": 36 - }, - "propose": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 27.536719122556033, - "options": 8, - "overloaded": true, - "page": "/", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "subscribe": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 26.73015873015873, - "options": 8, - "overloaded": true, - "page": "/", - "personas": 2, - "required_fields": 2, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 1 - } - } - ], - "steps": 1 - }, - "trial": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 27.441049146931498, - "options": 8, - "overloaded": true, - "page": "/", - "personas": 2, - "required_fields": 6, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/uhhm-2026-09-23/rated/rate.json b/vendor/trainer/runs/uhhm-2026-09-23/rated/rate.json deleted file mode 100644 index 53f94b1..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/rated/rate.json +++ /dev/null @@ -1,164 +0,0 @@ -{ - "collaborate": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 25.81998092513114, - "options": 8, - "overloaded": true, - "page": "/", - "personas": 3, - "required_fields": 3, - "understanding": { - "asked": 3, - "next": 3, - "where": 3, - "which": 3 - } - } - ], - "steps": 1 - }, - "commission": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 26.73015873015873, - "options": 8, - "overloaded": true, - "page": "/", - "personas": 3, - "required_fields": 4, - "understanding": { - "asked": 3, - "next": 3, - "where": 3, - "which": 3 - } - } - ], - "steps": 1 - }, - "custody": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 27.915853336850432, - "options": 8, - "overloaded": true, - "page": "/", - "personas": 3, - "required_fields": 4, - "understanding": { - "asked": 3, - "next": 3, - "where": 3, - "which": 3 - } - } - ], - "steps": 1 - }, - "propose": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 27.536719122556033, - "options": 8, - "overloaded": true, - "page": "/", - "personas": 2, - "required_fields": 3, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 2 - } - } - ], - "steps": 1 - }, - "subscribe": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 26.73015873015873, - "options": 8, - "overloaded": true, - "page": "/", - "personas": 2, - "required_fields": 2, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 1 - } - } - ], - "steps": 1 - }, - "trial": { - "pages": [ - { - "control": { - "asked": 0, - "next": 0, - "where": 0, - "which": 0 - }, - "control_ok": true, - "followup_shown": true, - "lix": 27.441049146931498, - "options": 8, - "overloaded": true, - "page": "/", - "personas": 2, - "required_fields": 6, - "understanding": { - "asked": 2, - "next": 2, - "where": 2, - "which": 1 - } - } - ], - "steps": 1 - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/uhhm-2026-09-23/score.log b/vendor/trainer/runs/uhhm-2026-09-23/score.log deleted file mode 100644 index 2ef6380..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/score.log +++ /dev/null @@ -1,22 +0,0 @@ -== answer full -== answer skim -== score full -MISROUTE: interaction-designer@/: picked "See your own business as a site, before you buy anything" (0.95), the need is met by ["Work with us"] -MISROUTE: dance-school@/: picked "Work with us" (0.95), the need is met by ["See your own business as a site, before you buy anything"] -MISROUTE: app-builder@/: picked "Work with us" (0.95), the need is met by ["You are on the redoal network: a node, an app, or a recording that concerns you"] -MISROUTE: rewrite@/: picked "What UHHM does" (0.95), the need is met by ["Suggest a change to this website"] -wording: 11/15 routed right (73%) -== score skim -MISROUTE: architecture-firm@/: picked "Work with us" (0.85), the need is met by ["Have us build it: send the brief"] -MISROUTE: tech-journalist@/: picked "What UHHM does" (0.95), the need is met by ["Hear from us now and then"] -MISROUTE: wording-fix@/: picked "Hear from us now and then" (0.95), the need is met by ["Suggest a change to this website"] -wording: 12/15 routed right (80%) -== rate -need LIX which where asked next gutted twin says page load -commission 27 very easy 3/3 3/3 3/3 3/3 0/0/0/0 ok 8 options, 4 required - SPLIT -trial 27 very easy 1/2 2/2 2/2 2/2 0/0/0/0 ok 8 options, 6 required - SPLIT -collaborate 26 very easy 3/3 3/3 3/3 3/3 0/0/0/0 ok 8 options, 3 required - SPLIT -subscribe 27 very easy 1/2 2/2 2/2 2/2 0/0/0/0 ok 8 options, 2 required - SPLIT -propose 28 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 8 options, 3 required - SPLIT -custody 28 very easy 3/3 3/3 3/3 3/3 0/0/0/0 ok 8 options, 4 required - SPLIT -== done diff --git a/vendor/trainer/runs/uhhm-2026-09-23/score.sh b/vendor/trainer/runs/uhhm-2026-09-23/score.sh deleted file mode 100755 index b7ef331..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/score.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/sh -# Score the built uhhm site: routing by a blind visitor (qwen3:8b), one -# task per call, with and without descriptions; then rate the cards. -set -eu -cd "$(dirname "$0")" -IRIS=/var/local/cargo-target/release/iris -T=/var/local/cargo-target/release/portal-trainer -LLM="MODEL=qwen3:8b ../../engines/ollama.sh" -$IRIS check --path site/questions --needs-tasks tasks-full.jsonl --needs-sim model.json > iris.log 2>&1 -$IRIS check --path site/questions --needs-tasks tasks-skim.jsonl --skim >> iris.log 2>&1 -echo "== answer full"; $T answer --tasks tasks-full.jsonl --repo site --llm "$LLM" > answers-full.jsonl -echo "== answer skim"; $T answer --tasks tasks-skim.jsonl --repo site --llm "$LLM" > answers-skim.jsonl -echo "== score full"; $IRIS check --path site/questions --needs-tasks tasks-full.jsonl --needs-score answers-full.jsonl 2>&1 | grep -E "MISROUTE|HESITANT|UNANSWERED|wording:" -echo "== score skim"; $IRIS check --path site/questions --needs-tasks tasks-skim.jsonl --skim --needs-score answers-skim.jsonl 2>&1 | grep -E "MISROUTE|HESITANT|UNANSWERED|wording:" -echo "== rate"; $T rate --model model.json --out rated --repo site --llm "$LLM" 2>&1 | tail -40 -echo "== done" diff --git a/vendor/trainer/runs/uhhm-2026-09-23/site/aggregates.yaml b/vendor/trainer/runs/uhhm-2026-09-23/site/aggregates.yaml deleted file mode 100644 index 25d90c2..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/site/aggregates.yaml +++ /dev/null @@ -1,155 +0,0 @@ -aggregates: -- bucket: applicants - initial: open - states: - active: - event: onboarded - declined: - event: declined - departed: - event: departed - invited: - event: invited - open: - event: applied - transitions: - active: - - departed - invited: - - active - - declined - open: - - invited - - declined -- bucket: custody_requests - initial: open - states: - declined: - event: declined - mail: - body: We've read your message and decided this isn't something we can take on as custodians. If you think we've missed something, write back and tell us. - subject: On your message to the custodians - to: submitter - in_dialogue: - event: in_dialogue - open: - event: received - mail: - body: Your message reached the custodians of the first node. We read everything that comes in - expect a real reply, not an autoresponder. - subject: We have your message - to: submitter - resolved: - event: resolved - mail: - body: This is resolved. Here's what we found and what we did about it - write back if it isn't settled from where you sit. - subject: Your case is resolved - to: submitter - transitions: - in_dialogue: - - resolved - - declined - open: - - in_dialogue - - declined -- bucket: development_proposals - initial: open - states: - approved: - event: approved - open: - event: proposed - rejected: - event: rejected - transitions: - open: - - approved - - rejected -- bucket: organizations - initial: prospect - states: - client: - event: became_client - past_client: - event: churned - prospect: - event: identified - transitions: - client: - - past_client - prospect: - - client - - past_client -- bucket: projects - initial: open - states: - accepted: - event: accepted - mail: - body: We want to take this on. Next we'll be in touch to talk through scope, timing and how we'll work together. - subject: We'd like to take this on - to: submitter - declined: - event: declined - mail: - body: We've read your brief and this isn't one we're taking on. It isn't a judgment on the problem - just not a fit for us right now. - subject: On your brief - to: submitter - open: - event: submitted - mail: - body: |- - Your brief is in front of us. We read the whole thing before we reply, so it may take a few days - you'll hear from us either way. - - What you can do next: {site}/decide/commission?chain={chain}&email={email} - subject: We have your brief - to: submitter - transitions: - open: - - accepted - - declined -- bucket: subscribers - initial: open - states: - open: - event: subscribed - unsubscribed: - event: unsubscribed - transitions: - open: - - unsubscribed -- attended_by: | - approved -> previewed: the n8n workflow that builds the draft site from an approved intake (docker, rauthy, portal content) and sends the preview link. Until it exists, owners run portal-trainer by hand and press the button. - bucket: trials - initial: open - states: - approved: - event: approved - mail: - body: Your draft is approved and on its way. We built it from your own words - have a look when it's ready and tell us what to change. - subject: Your draft is approved - to: submitter - declined: - event: declined - mail: - body: We've decided not to build this draft. If the situation changes, get back in touch and we'll take another look. - subject: On your draft - to: submitter - open: - event: received - mail: - body: We have what you sent. A person will read it and build your draft, or tell you why not - you'll hear from us either way. - subject: We're looking at your draft - to: submitter - previewed: - event: previewed - mail: - body: Your draft is ready to look at. It's built from your own words - the link below takes you straight to it. - subject: Your draft is ready to view - to: submitter - transitions: - approved: - - previewed - - declined - open: - - approved - - declined diff --git a/vendor/trainer/runs/uhhm-2026-09-23/site/model.json b/vendor/trainer/runs/uhhm-2026-09-23/site/model.json deleted file mode 100644 index 2129de9..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/site/model.json +++ /dev/null @@ -1,947 +0,0 @@ -{ - "needs": [ - { - "id": "commission", - "who": "an organization with a problem it wants software to solve", - "wants": "a considered reply to a brief, from people who read the whole thing", - "enters_as": null, - "lands_in": "projects", - "handled_by": "owners", - "done_when": [ - "accepted", - "declined" - ], - "success": [ - "accepted" - ], - "steps": [ - { - "page": "/", - "question": "What is UHHM, and what can you get here?", - "context": "What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network.", - "options": [ - { - "name": "Have us build it: send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing." - }, - { - "name": "See your own business as a site, before you buy anything", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through." - }, - { - "name": "Work with us", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit." - }, - { - "name": "Hear from us now and then", - "description": "You'd rather hear from us now and then than check back on your own." - }, - { - "name": "Suggest a change to this website", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how." - }, - { - "name": "You are on the redoal network: a node, an app, or a recording that concerns you", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at." - } - ], - "expect": [ - "Have us build it: send the brief" - ], - "alternative": "Have us build it: send the brief", - "fields": [ - { - "name": "name", - "label": "Your name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Your email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "project", - "label": "The problem you want solved", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "organization", - "label": "Your organization", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "org_contact", - "label": "Who we should talk to", - "type": "text", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "trial", - "who": "someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything", - "wants": "a first draft of a site for their own roles, built from their own words and approved by a person first", - "enters_as": null, - "lands_in": "trials", - "handled_by": "owners", - "done_when": [ - "previewed", - "declined" - ], - "success": [ - "previewed" - ], - "steps": [ - { - "page": "/", - "question": "What is UHHM, and what can you get here?", - "context": "What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network.", - "options": [ - { - "name": "Have us build it: send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing." - }, - { - "name": "See your own business as a site, before you buy anything", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through." - }, - { - "name": "Work with us", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit." - }, - { - "name": "Hear from us now and then", - "description": "You'd rather hear from us now and then than check back on your own." - }, - { - "name": "Suggest a change to this website", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how." - }, - { - "name": "You are on the redoal network: a node, an app, or a recording that concerns you", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at." - } - ], - "expect": [ - "See your own business as a site, before you buy anything" - ], - "alternative": "See your own business as a site, before you buy anything", - "fields": [ - { - "name": "business", - "label": "Your business", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Your email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "what_we_do", - "label": "What you do", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "who_comes_to_us", - "label": "Who comes to you", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "what_we_keep_track_of", - "label": "What you keep track of", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "who_is_involved", - "label": "Who's involved", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "what_slows_us_down", - "label": "What slows you down", - "type": "textarea", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "collaborate", - "who": "someone who wants to work with us on what we build", - "wants": "to be read as a person, and invited in if there is a fit", - "enters_as": null, - "lands_in": "applicants", - "handled_by": "owners", - "done_when": [ - "departed", - "declined" - ], - "success": [ - "departed" - ], - "steps": [ - { - "page": "/", - "question": "What is UHHM, and what can you get here?", - "context": "What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network.", - "options": [ - { - "name": "Have us build it: send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing." - }, - { - "name": "See your own business as a site, before you buy anything", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through." - }, - { - "name": "Work with us", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit." - }, - { - "name": "Hear from us now and then", - "description": "You'd rather hear from us now and then than check back on your own." - }, - { - "name": "Suggest a change to this website", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how." - }, - { - "name": "You are on the redoal network: a node, an app, or a recording that concerns you", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at." - } - ], - "expect": [ - "Work with us" - ], - "alternative": "Work with us", - "fields": [ - { - "name": "name", - "label": "Name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "interest", - "label": "What kind of work", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "note", - "label": "Tell us more", - "type": "textarea", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "subscribe", - "who": "someone who wants to hear from us when there is something to say", - "wants": "a note now and then, and an easy way out", - "enters_as": null, - "lands_in": "subscribers", - "handled_by": "owners", - "done_when": [ - "unsubscribed" - ], - "success": [], - "steps": [ - { - "page": "/", - "question": "What is UHHM, and what can you get here?", - "context": "What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network.", - "options": [ - { - "name": "Have us build it: send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing." - }, - { - "name": "See your own business as a site, before you buy anything", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through." - }, - { - "name": "Work with us", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit." - }, - { - "name": "Hear from us now and then", - "description": "You'd rather hear from us now and then than check back on your own." - }, - { - "name": "Suggest a change to this website", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how." - }, - { - "name": "You are on the redoal network: a node, an app, or a recording that concerns you", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at." - } - ], - "expect": [ - "Hear from us now and then" - ], - "alternative": "Hear from us now and then", - "fields": [ - { - "name": "name", - "label": "Name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "propose", - "who": "a visitor who sees how a page on this site should change", - "wants": "the change read by a person and, if approved, made", - "enters_as": null, - "lands_in": "development_proposals", - "handled_by": "owners", - "done_when": [ - "approved", - "rejected" - ], - "success": [ - "approved" - ], - "steps": [ - { - "page": "/", - "question": "What is UHHM, and what can you get here?", - "context": "What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network.", - "options": [ - { - "name": "Have us build it: send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing." - }, - { - "name": "See your own business as a site, before you buy anything", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through." - }, - { - "name": "Work with us", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit." - }, - { - "name": "Hear from us now and then", - "description": "You'd rather hear from us now and then than check back on your own." - }, - { - "name": "Suggest a change to this website", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how." - }, - { - "name": "You are on the redoal network: a node, an app, or a recording that concerns you", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at." - } - ], - "expect": [ - "Suggest a change to this website" - ], - "alternative": "Suggest a change to this website", - "fields": [ - { - "name": "submitted_by", - "label": "Your name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": true, - "options": [] - }, - { - "name": "page", - "label": "Which page", - "type": "text", - "optional": true, - "options": [] - }, - { - "name": "rationale", - "label": "Why this is better", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "proposed_yaml", - "label": "Your proposed text", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "custody", - "who": "someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node", - "wants": "an answer from a custodian, and action where the network keeps something it should not", - "enters_as": null, - "lands_in": "custody_requests", - "handled_by": "custodians", - "done_when": [ - "resolved", - "declined" - ], - "success": [ - "resolved" - ], - "steps": [ - { - "page": "/", - "question": "What is UHHM, and what can you get here?", - "context": "What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network.", - "options": [ - { - "name": "Have us build it: send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing." - }, - { - "name": "See your own business as a site, before you buy anything", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through." - }, - { - "name": "Work with us", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit." - }, - { - "name": "Hear from us now and then", - "description": "You'd rather hear from us now and then than check back on your own." - }, - { - "name": "Suggest a change to this website", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how." - }, - { - "name": "You are on the redoal network: a node, an app, or a recording that concerns you", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at." - } - ], - "expect": [ - "You are on the redoal network: a node, an app, or a recording that concerns you" - ], - "alternative": "You are on the redoal network: a node, an app, or a recording that concerns you", - "fields": [ - { - "name": "name", - "label": "Name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "about", - "label": "What's going on", - "type": "select", - "optional": false, - "options": [ - "Running a node of my own", - "Building on the network", - "Something the network keeps about me", - "Something else" - ] - }, - { - "name": "what", - "label": "In short", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "prospect", - "who": "an owner who has met an organization worth following up", - "wants": "it written down and walked through its states from the desk", - "enters_as": "owners", - "lands_in": "organizations", - "handled_by": "owners", - "done_when": [ - "past_client" - ], - "success": [], - "steps": [ - { - "page": "/owners/prospect", - "question": "Is there an organization I should be keeping track of?", - "context": "", - "options": [ - { - "name": "Keep an organization on your radar", - "description": "One line per organization worth watching, moved through the stages as things develop." - } - ], - "expect": [ - "Keep an organization on your radar" - ], - "alternative": "Keep an organization on your radar", - "fields": [ - { - "name": "name", - "label": "Organization", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "contact", - "label": "Contact", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "note", - "label": "Note", - "type": "textarea", - "optional": true, - "options": [] - } - ] - } - ] - } - ], - "buckets": { - "projects": { - "initial": "open", - "transitions": { - "open": [ - "accepted", - "declined" - ] - }, - "words": { - "accepted": "taken on", - "declined": "not a fit for us", - "open": "received" - }, - "desks": [ - { - "page": "/owners", - "group": "owners", - "moves": [ - { - "from": "open", - "to": "accepted", - "label": "Accept brief" - }, - { - "from": "open", - "to": "declined", - "label": "Decline brief" - } - ] - } - ], - "self_moves": [ - "declined" - ] - }, - "trials": { - "initial": "open", - "transitions": { - "approved": [ - "previewed", - "declined" - ], - "open": [ - "approved", - "declined" - ] - }, - "words": { - "approved": "approved for a draft", - "declined": "not a fit for us", - "open": "received", - "previewed": "a preview is ready" - }, - "desks": [ - { - "page": "/owners", - "group": "owners", - "moves": [ - { - "from": "approved", - "to": "previewed", - "label": "Mark previewed" - }, - { - "from": "approved", - "to": "declined", - "label": "Decline trial" - }, - { - "from": "open", - "to": "approved", - "label": "Approve trial" - }, - { - "from": "open", - "to": "declined", - "label": "Decline trial" - } - ] - } - ], - "self_moves": [] - }, - "applicants": { - "initial": "open", - "transitions": { - "active": [ - "departed" - ], - "invited": [ - "active", - "declined" - ], - "open": [ - "invited", - "declined" - ] - }, - "words": { - "active": "working with us", - "declined": "not a fit for us", - "departed": "moved on", - "invited": "invited in", - "open": "received" - }, - "desks": [ - { - "page": "/owners", - "group": "owners", - "moves": [ - { - "from": "active", - "to": "departed", - "label": "Mark departed" - }, - { - "from": "invited", - "to": "active", - "label": "Confirm active" - }, - { - "from": "invited", - "to": "declined", - "label": "Withdraw the invite" - }, - { - "from": "open", - "to": "invited", - "label": "Send invite" - }, - { - "from": "open", - "to": "declined", - "label": "Decline applicant" - } - ] - } - ], - "self_moves": [] - }, - "subscribers": { - "initial": "open", - "transitions": { - "open": [ - "unsubscribed" - ] - }, - "words": { - "open": "on the list", - "unsubscribed": "off the list" - }, - "desks": [ - { - "page": "/owners", - "group": "owners", - "moves": [ - { - "from": "open", - "to": "unsubscribed", - "label": "Unsubscribe them" - } - ] - } - ], - "self_moves": [ - "unsubscribed" - ] - }, - "development_proposals": { - "initial": "open", - "transitions": { - "open": [ - "approved", - "rejected" - ] - }, - "words": { - "approved": "approved", - "open": "received", - "rejected": "turned down" - }, - "desks": [ - { - "page": "/owners", - "group": "owners", - "moves": [ - { - "from": "open", - "to": "approved", - "label": "Approve change" - }, - { - "from": "open", - "to": "rejected", - "label": "Reject change" - } - ] - } - ], - "self_moves": [] - }, - "custody_requests": { - "initial": "open", - "transitions": { - "open": [ - "in_dialogue", - "declined" - ], - "in_dialogue": [ - "resolved", - "declined" - ] - }, - "words": { - "declined": "closed without action", - "in_dialogue": "in dialogue with a custodian", - "open": "received", - "resolved": "resolved" - }, - "desks": [ - { - "page": "/custodians", - "group": "custodians", - "moves": [ - { - "from": "in_dialogue", - "to": "resolved", - "label": "Mark resolved" - }, - { - "from": "in_dialogue", - "to": "declined", - "label": "Close, no action" - }, - { - "from": "open", - "to": "in_dialogue", - "label": "Open dialogue" - }, - { - "from": "open", - "to": "declined", - "label": "Decline case" - } - ] - }, - { - "page": "/owners", - "group": "owners", - "moves": [] - } - ], - "self_moves": [ - "resolved" - ] - }, - "organizations": { - "initial": "prospect", - "transitions": { - "prospect": [ - "client", - "past_client" - ], - "client": [ - "past_client" - ] - }, - "words": { - "client": "a client", - "past_client": "a past client", - "prospect": "a prospect" - }, - "desks": [ - { - "page": "/owners", - "group": "owners", - "moves": [ - { - "from": "client", - "to": "past_client", - "label": "Mark past client" - }, - { - "from": "prospect", - "to": "client", - "label": "Mark as client" - }, - { - "from": "prospect", - "to": "past_client", - "label": "Archive as past client" - } - ] - } - ], - "self_moves": [] - } - }, - "personas": [ - { - "id": "architecture-firm", - "need": "commission", - "text": "We run a small architecture firm and our project files are scattered across three cloud drives. We want to pay someone to set up proper storage and backups we control ourselves." - }, - { - "id": "climbing-gym-founder", - "need": "commission", - "text": "I have an idea for a booking app for climbing gyms and I'm looking for a team that can build the first version with me." - }, - { - "id": "municipality-buyer", - "need": "commission", - "text": "Our municipality needs an internal tool for tracking building permits. We are looking for a vendor who can scope it and deliver it." - }, - { - "id": "exhibition-visitor", - "need": "subscribe", - "text": "I saw your drawing network at an exhibition and liked it. I don't want to get involved, I'd just like to know when there is news." - }, - { - "id": "tech-journalist", - "need": "subscribe", - "text": "I write about Nordic technology. Keep me posted on what you release so I can cover it." - }, - { - "id": "rust-developer", - "need": "collaborate", - "text": "I'm a Rust developer between jobs and I like that you build in the open. I would love to contribute, and maybe join you." - }, - { - "id": "interaction-designer", - "need": "collaborate", - "text": "I'm an interaction designer. I want to work with you on the drawing interface." - }, - { - "id": "student-intern", - "need": "collaborate", - "text": "I'm a computer science student looking for a summer internship doing infrastructure work." - }, - { - "id": "plumber-owner", - "need": "trial", - "text": "I run a plumbing company with four vans. Jobs come in by phone and text and some get lost. I'd like to see how this would look for us before I spend any money." - }, - { - "id": "dance-school", - "need": "trial", - "text": "We are a dance school. Enrolments, cancellations and invoices all go through one email inbox that only I understand. Can you show me a version made for us?" - }, - { - "id": "node-runner", - "need": "custody", - "text": "I run a small server in Berlin and want to host a redoal node that peers with yours. Who do I talk to?" - }, - { - "id": "recorded-name", - "need": "custody", - "text": "Someone left a recording on redoal that says my full name and where I live. I want it gone, and I want to know who is responsible for that network." - }, - { - "id": "app-builder", - "need": "custody", - "text": "I'm building a music app and would like to use redoal's gesture addresses in it. Is that possible, and who decides?" - }, - { - "id": "wording-fix", - "need": "propose", - "text": "The subscribe page should say how often you actually write. I'd like to suggest that exact change to the page." - }, - { - "id": "rewrite", - "need": "propose", - "text": "One page on this site reads wrong to me and I know exactly how I'd rewrite it. Where do I send the new text?" - } - ] -} \ No newline at end of file diff --git a/vendor/trainer/runs/uhhm-2026-09-23/site/needs.yaml b/vendor/trainer/runs/uhhm-2026-09-23/site/needs.yaml deleted file mode 100644 index b94a531..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/site/needs.yaml +++ /dev/null @@ -1,204 +0,0 @@ -needs: -- done_when: - - accepted - - declined - enters: / - handled_by: owners - id: commission - lands_in: projects - max_fields: 4 - max_steps: 1 - stage_words: - accepted: taken on - declined: not a fit for us - open: received - stages: - - open - - accepted - - declined - success: - - accepted - via: 'Have us build it: send the brief' - wants: a considered reply to a brief, from people who read the whole thing - who: an organization with a problem it wants software to solve -- done_when: - - previewed - - declined - enters: / - handled_by: owners - id: trial - lands_in: trials - max_fields: 6 - max_steps: 1 - stage_words: - approved: approved for a draft - declined: not a fit for us - open: received - previewed: a preview is ready - stages: - - open - - approved - - previewed - - declined - success: - - previewed - via: See your own business as a site, before you buy anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first - who: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything -- done_when: - - departed - - declined - enters: / - handled_by: owners - id: collaborate - lands_in: applicants - max_fields: 3 - max_steps: 1 - stage_words: - active: working with us - declined: not a fit for us - departed: moved on - invited: invited in - open: received - stages: - - open - - invited - - active - - departed - - declined - success: - - departed - via: Work with us - wants: to be read as a person, and invited in if there is a fit - who: someone who wants to work with us on what we build -- done_when: - - unsubscribed - enters: / - handled_by: owners - id: subscribe - lands_in: subscribers - max_fields: 2 - max_steps: 1 - stage_words: - open: on the list - unsubscribed: off the list - stages: - - open - - unsubscribed - success: [] - via: Hear from us now and then - wants: a note now and then, and an easy way out - who: someone who wants to hear from us when there is something to say -- done_when: - - approved - - rejected - enters: / - handled_by: owners - id: propose - lands_in: development_proposals - max_fields: 3 - max_steps: 1 - stage_words: - approved: approved - open: received - rejected: turned down - stages: - - open - - approved - - rejected - success: - - approved - via: Suggest a change to this website - wants: the change read by a person and, if approved, made - who: a visitor who sees how a page on this site should change -- done_when: - - resolved - - declined - enters: / - handled_by: custodians - id: custody - lands_in: custody_requests - max_fields: 4 - max_steps: 1 - stage_words: - declined: closed without action - in_dialogue: in dialogue with a custodian - open: received - resolved: resolved - stages: - - open - - in_dialogue - - resolved - - declined - success: - - resolved - via: 'You are on the redoal network: a node, an app, or a recording that concerns you' - wants: an answer from a custodian, and action where the network keeps something it should not - who: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node -- done_when: - - past_client - enters: /owners/prospect - enters_as: owners - handled_by: owners - id: prospect - lands_in: organizations - max_fields: 2 - max_steps: 1 - stage_words: - client: a client - past_client: a past client - prospect: a prospect - stages: - - prospect - - client - - past_client - success: [] - via: Keep an organization on your radar - wants: it written down and walked through its states from the desk - who: an owner who has met an organization worth following up -personas: -- id: architecture-firm - need: commission - text: We run a small architecture firm and our project files are scattered across three cloud drives. We want to pay someone to set up proper storage and backups we control ourselves. -- id: climbing-gym-founder - need: commission - text: I have an idea for a booking app for climbing gyms and I'm looking for a team that can build the first version with me. -- id: municipality-buyer - need: commission - text: Our municipality needs an internal tool for tracking building permits. We are looking for a vendor who can scope it and deliver it. -- id: exhibition-visitor - need: subscribe - text: I saw your drawing network at an exhibition and liked it. I don't want to get involved, I'd just like to know when there is news. -- id: tech-journalist - need: subscribe - text: I write about Nordic technology. Keep me posted on what you release so I can cover it. -- id: rust-developer - need: collaborate - text: I'm a Rust developer between jobs and I like that you build in the open. I would love to contribute, and maybe join you. -- id: interaction-designer - need: collaborate - text: I'm an interaction designer. I want to work with you on the drawing interface. -- id: student-intern - need: collaborate - text: I'm a computer science student looking for a summer internship doing infrastructure work. -- id: plumber-owner - need: trial - text: I run a plumbing company with four vans. Jobs come in by phone and text and some get lost. I'd like to see how this would look for us before I spend any money. -- id: dance-school - need: trial - text: We are a dance school. Enrolments, cancellations and invoices all go through one email inbox that only I understand. Can you show me a version made for us? -- id: node-runner - need: custody - text: I run a small server in Berlin and want to host a redoal node that peers with yours. Who do I talk to? -- id: recorded-name - need: custody - text: Someone left a recording on redoal that says my full name and where I live. I want it gone, and I want to know who is responsible for that network. -- id: app-builder - need: custody - text: I'm building a music app and would like to use redoal's gesture addresses in it. Is that possible, and who decides? -- id: wording-fix - need: propose - text: The subscribe page should say how often you actually write. I'd like to suggest that exact change to the page. -- id: rewrite - need: propose - text: One page on this site reads wrong to me and I know exactly how I'd rewrite it. Where do I send the new text? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/custodians/_section.yaml b/vendor/trainer/runs/uhhm-2026-09-23/site/questions/custodians/_section.yaml deleted file mode 100644 index de40ef5..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/custodians/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: custodians diff --git a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/custodians/index.yaml b/vendor/trainer/runs/uhhm-2026-09-23/site/questions/custodians/index.yaml deleted file mode 100644 index 6a0b293..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/custodians/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -alternatives: -- action: /custodians - consequence: - - Confirm - description: Cases from people who use, build on, or answer for something the redoal network touches, and need a custodian's word on it. - features: - - description: '' - name: '' - resource: - requires_group: custodians - source: - bucket: custody_requests - kind: kv - transitions: - - from: in_dialogue - label: Mark resolved - to: resolved - - from: in_dialogue - label: Close, no action - to: declined - - from: open - label: Open dialogue - to: in_dialogue - - from: open - label: Decline case - to: declined - name: Custody cases waiting on you -- action: /custodians - consequence: - - Invite custodian - description: Give someone an account and a one-time link to join as a custodian. - features: - - description: '' - name: Invite a custodian - requirements: - - label: Name - name: name - - label: Email - name: email - type: email - invite: - group: custodians - name: Bring in another custodian -- action: /custodians - consequence: - - Confirm - description: Custodians invited but not yet signed in. - features: - - description: '' - name: '' - resource: - requires_group: custodians - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Signed in - to: done - name: Invited custodians -description: 'The desk for custodians: open custody cases, and the people invited to answer them.' -name: What is waiting on the custodians? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/decide/commission.yaml b/vendor/trainer/runs/uhhm-2026-09-23/site/questions/decide/commission.yaml deleted file mode 100644 index 4d2ac0c..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/decide/commission.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: '' - name: Declined - self_transition: - bucket: projects - label: Declined - to: declined -description: '' -name: What would you like to do? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/decide/custody.yaml b/vendor/trainer/runs/uhhm-2026-09-23/site/questions/decide/custody.yaml deleted file mode 100644 index 4573513..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/decide/custody.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: '' - name: Resolved - self_transition: - bucket: custody_requests - label: Resolved - to: resolved -description: '' -name: What would you like to do? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/decide/subscribe.yaml b/vendor/trainer/runs/uhhm-2026-09-23/site/questions/decide/subscribe.yaml deleted file mode 100644 index 45114ca..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/decide/subscribe.yaml +++ /dev/null @@ -1,9 +0,0 @@ -alternatives: -- description: You'll stop hearing from us. Nothing else changes. - name: Stop getting notes from us - self_transition: - bucket: subscribers - label: Unsubscribe - to: unsubscribed -description: You're on our list. Change your mind whenever you like. -name: Do you want to keep hearing from us? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/index.yaml b/vendor/trainer/runs/uhhm-2026-09-23/site/questions/index.yaml deleted file mode 100644 index 09f6cd1..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/index.yaml +++ /dev/null @@ -1,270 +0,0 @@ -alternatives: -- description: Two things, both built here and both running. - features: - - description: 'UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved.' - name: A network that answers to you - - description: 'Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.' - icon: lucide:layers - name: A considered reply to your brief, and software that fits the argument - name: What UHHM does -- description: Nothing to fill in here. What is already out in the world, and the network as it runs right now. - features: - - description: A few things already out in the world. - icon: lucide:hammer - name: What we have built - resource: - jq: | - .[] | {name: .name, description: .description, url: (if .website != null and .website != "" then .website elif .private then null else .html_url end)} - public: true - source: - kind: gitea_starred - username: bl - - description: Straight from the relay, the first node of the network. - icon: lucide:activity - name: The redoal network, live - resource: - empty: The first voice has not echoed yet. - jq: | - { "name": (.voices_echoed | tostring), - "description": "voices echoed so far" } - public: true - source: - kind: url - url: https://relay.redoal.com/pulse - name: Have a look around first -- action: /received/commission - consequence: - - Send the brief - description: You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing. - encouragements: - - Someone here reads every brief in full before writing back. - features: - - description: We read your brief and either take it on or tell you honestly if it's not a fit. - icon: lucide:route - name: What happens next - - description: One of the owners reads it; write to bl@uhhm.no if you'd rather reach us directly. - icon: lucide:user-check - name: Who reads this - - description: The more of the problem you put in, the better the reply. - icon: lucide:briefcase - name: Tell us the problem - requirements: - - label: Your name - name: name - placeholder: Sara Nilsen - type: text - - label: Your email - name: email - placeholder: sara@company.com - type: email - - label: The problem you want solved - name: project - placeholder: Our drivers log hours on paper and it takes a day to get them into payroll. - type: textarea - - label: Your organization - name: organization - placeholder: Nilsen Transport AS - type: text - - label: Who we should talk to - name: org_contact - optional: true - placeholder: Sara Nilsen, ops manager - type: text - name: 'Have us build it: send the brief' - record_as: projects -- action: /received/trial - consequence: - - Start the draft - description: Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through. - encouragements: - - A person looks at what you send before anything gets built. - features: - - description: We look at what you sent and, if it's a fit, build a draft from your own roles and words for you to see before anything moves further. - icon: lucide:route - name: What happens next - - description: An owner looks at what you send; write to bl@uhhm.no if you'd rather reach us directly. - icon: lucide:user-check - name: Who reads this - - description: Answer in your own words - there's no wrong way to describe your business. - icon: lucide:layers - name: Describe your business - requirements: - - label: Your business - name: business - placeholder: Nilsen Transport AS - type: text - - label: Your email - name: email - placeholder: sara@company.com - type: email - - label: What you do - name: what_we_do - placeholder: We move freight for local businesses and handle the paperwork for them. - type: textarea - - label: Who comes to you - name: who_comes_to_us - placeholder: Local businesses that need something moved on short notice. - type: textarea - - label: What you keep track of - name: what_we_keep_track_of - placeholder: Bookings, driver hours, and which loads are still waiting on a signature. - type: textarea - - label: Who's involved - name: who_is_involved - placeholder: Drivers, dispatchers, and the customers waiting on their delivery. - type: textarea - - label: What slows you down - name: what_slows_us_down - optional: true - placeholder: Approvals sit in someone's inbox for days before anyone acts on them. - type: textarea - name: See your own business as a site, before you buy anything - record_as: trials -- action: /received/collaborate - consequence: - - Get in touch - description: 'A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.' - encouragements: - - A person reads this, not a form filter — worth the ten minutes. - features: - - description: We read what you send and get back to you. If there's a fit, we invite you in and you start working with us — and if things ever change, that's fine too. - icon: lucide:route - name: What happens next - - description: One of the owners reads this directly — for anything urgent, write to bl@uhhm.no. - icon: lucide:user-check - name: Who reads this - - description: Tell us who you are and what kind of work you're after. - icon: lucide:handshake - name: Say hello - requirements: - - label: Name - name: name - placeholder: Your name - type: text - - label: Email - name: email - placeholder: you@example.com - type: email - - label: What kind of work - name: interest - placeholder: Backend work, or something design-heavy - type: textarea - - label: Tell us more - name: note - optional: true - placeholder: A bit about what you'd want to work on, or a link to your work - type: textarea - name: Work with us - record_as: applicants -- action: /received/subscribe - consequence: - - Sign up - description: You'd rather hear from us now and then than check back on your own. - encouragements: - - One click unsubscribes you later, no questions asked. - features: - - description: You're on the list. We write when there's something worth saying, and you can leave the list whenever you like. - icon: lucide:bell - name: What happens next - - description: An owner sends these notes directly — write to bl@uhhm.no if you'd rather ask something first. - icon: lucide:user-check - name: Who reads this - - description: Just your email, or your name too if you'd like. - icon: lucide:mail - name: Stay in the loop - requirements: - - label: Name - name: name - placeholder: Your name - type: text - - label: Email - name: email - placeholder: you@example.com - type: email - name: Hear from us now and then - record_as: subscribers -- action: /received/propose - consequence: - - Send change - description: You have spotted a page on uhhm.no that should read differently, and you know roughly how. - encouragements: - - Even a rough version helps — we can tidy the wording ourselves. - features: - - description: Someone here reads your proposal and either makes the change or explains why not. Either way, you'll hear back. - icon: lucide:route - name: What happens next - - description: An owner reads every proposal before anything changes — reach us at bl@uhhm.no if it's time-sensitive. - icon: lucide:user-check - name: Who reads this - - description: Point us to the page and show us the change. - icon: lucide:pencil - name: Propose a change - requirements: - - label: Your name - name: submitted_by - placeholder: Your name - type: text - - label: Email - name: email - optional: true - placeholder: you@example.com - type: email - - label: Which page - name: page - optional: true - placeholder: questions/join/index.yaml - type: text - - label: Why this is better - name: rationale - placeholder: The current heading doesn't say what you actually get - type: textarea - - label: Your proposed text - name: proposed_yaml - placeholder: 'heading: "A clearer way to say this"' - type: textarea - name: Suggest a change to this website - record_as: development_proposals -- action: /received/custody - consequence: - - Send to a custodian - description: UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at. - encouragements: - - A custodian reads every message that comes in here. - features: - - description: A custodian opens a dialogue with you. A node gets its peer, a builder gets an answer, and something the network should not keep gets removed. Either way you hear what was decided. - icon: lucide:route - name: What happens next - - description: A custodian reads it directly; if it's urgent, write to bl@uhhm.no in the meantime. - icon: lucide:user-check - name: Who reads this - - description: Say which of the four it is, and what you need, in a few lines. - icon: lucide:shield - name: Reach a custodian - requirements: - - label: Name - name: name - placeholder: Your name - type: text - - label: Email - name: email - placeholder: you@yourcompany.com - type: email - - label: What's going on - name: about - options: - - Running a node of my own - - Building on the network - - Something the network keeps about me - - Something else - type: select - - label: In short - name: what - placeholder: A relay node is misbehaving - type: textarea - name: 'You are on the redoal network: a node, an app, or a recording that concerns you' - record_as: custody_requests -description: UHHM builds software for organisations that can say what problem they have, and keeps the redoal network underneath. -name: What is UHHM, and what can you get here? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/owners/_section.yaml b/vendor/trainer/runs/uhhm-2026-09-23/site/questions/owners/_section.yaml deleted file mode 100644 index 670fca7..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/owners/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: owners diff --git a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/owners/index.yaml b/vendor/trainer/runs/uhhm-2026-09-23/site/questions/owners/index.yaml deleted file mode 100644 index dc1985e..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/owners/index.yaml +++ /dev/null @@ -1,209 +0,0 @@ -alternatives: -- action: /owners - consequence: - - Confirm - description: People who've asked to build with us, waiting on a decision or already working alongside us. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: applicants - kind: kv - transitions: - - from: active - label: Mark departed - to: departed - - from: invited - label: Confirm active - to: active - - from: invited - label: Withdraw the invite - to: declined - - from: open - label: Send invite - to: invited - - from: open - label: Decline applicant - to: declined - name: People who want to build with us -- action: /owners - consequence: - - Confirm - description: Questions and issues raised with the people who keep the first node - custodians handle these, but you can see where each one stands. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: custody_requests - kind: kv - transitions: [] - name: What's been raised with custodians -- action: /owners - consequence: - - Confirm - description: Changes visitors have proposed for pages on this site, waiting on a yes or no. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: development_proposals - kind: kv - transitions: - - from: open - label: Approve change - to: approved - - from: open - label: Reject change - to: rejected - name: Proposed changes to the site -- action: /owners - consequence: - - Confirm - description: Organizations you've met, tracked from first contact through to client and beyond. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: organizations - kind: kv - transitions: - - from: client - label: Mark past client - to: past_client - - from: prospect - label: Mark as client - to: client - - from: prospect - label: Archive as past client - to: past_client - name: Organizations you're tracking -- action: /owners - consequence: - - Confirm - description: Briefs sent in by organizations with a problem they want solved. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: projects - kind: kv - transitions: - - from: open - label: Accept brief - to: accepted - - from: open - label: Decline brief - to: declined - name: Briefs waiting on a reply -- action: /owners - consequence: - - Confirm - description: People who want to hear from you now and then. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: subscribers - kind: kv - transitions: - - from: open - label: Unsubscribe them - to: unsubscribed - name: Who's hearing from you -- action: /owners - consequence: - - Confirm - description: Businesses who want to see their own workflow as a working site before committing to anything. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: trials - kind: kv - transitions: - - from: approved - label: Mark previewed - to: previewed - - from: approved - label: Decline trial - to: declined - - from: open - label: Approve trial - to: approved - - from: open - label: Decline trial - to: declined - name: Trial sites in progress -- action: /owners/prospect - consequence: - - Add prospect - description: Write down an organization worth following up, and track it from first contact onward. - name: Track a new organization -- action: /owners - consequence: - - Send invite - description: Bring someone in to help keep the first node and answer for the network. - features: - - description: '' - name: Invite a custodian - requirements: - - label: Their name - name: name - - label: Their email - name: email - type: email - invite: - group: custodians - name: Bring in a custodian -- action: /owners - consequence: - - Send invite - description: Bring someone in to work this desk alongside you. - features: - - description: '' - name: Invite an owner - requirements: - - label: Their name - name: name - - label: Their email - name: email - type: email - invite: - group: owners - name: Bring in another owner -- action: /owners - consequence: - - Confirm - description: People you've invited in, and whether they've taken it up yet. - features: - - description: '' - name: '' - resource: - requires_group: owners - source: - bucket: portal_invites - kind: kv - transitions: - - from: open - label: Taken up - to: done - name: Invites you've sent -description: 'Everything waiting on you: briefs, trials, applicants, subscribers, and proposals, all in one place.' -name: What's waiting on me today? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/owners/prospect-sent.yaml b/vendor/trainer/runs/uhhm-2026-09-23/site/questions/owners/prospect-sent.yaml deleted file mode 100644 index d49a1d4..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/owners/prospect-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: An owner walks it from prospect to client, and on to past client, as the relationship moves. - name: It's on the desk now -- action: /owners - consequence: - - Back to site - description: '' - name: Back to site -description: Thanks — we've got your prospect written down, and it now moves through the desk with everything else we're tracking. -name: What happens to this now? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/owners/prospect.yaml b/vendor/trainer/runs/uhhm-2026-09-23/site/questions/owners/prospect.yaml deleted file mode 100644 index 581bd11..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/owners/prospect.yaml +++ /dev/null @@ -1,39 +0,0 @@ -alternatives: -- action: /owners/prospect-sent - consequence: - - Add to prospects - description: One line per organization worth watching, moved through the stages as things develop. - encouragements: - - Takes a minute, and it's yours to update later. - features: - - description: It sits as a prospect until something moves - then you mark it client, and later past client if the work ends. - icon: lucide:route - name: Moves as you update it - - description: Only you see this, so keep it wherever you check next. - icon: lucide:user - name: Just for you - - description: Name the organization and where things stand. - icon: lucide:briefcase - name: New prospect - requirements: - - label: Organization - name: name - placeholder: Nordvik Bakery - type: text - - label: Contact - name: contact - placeholder: met at the bakers' conference, [email protected] - type: text - - label: Note - name: note - optional: true - placeholder: wants a booking flow, follow up after harvest season - type: textarea - name: Keep an organization on your radar - record_as: organizations -description: Write down an organization worth following up, and move it through client and past client as things develop. -followup: false -name: Is there an organization I should be keeping track of? -responsible: - contact: bl@uhhm.no - name: Bendik Aagaard Lynghaug diff --git a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/collaborate.yaml b/vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/collaborate.yaml deleted file mode 100644 index c612fe8..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/collaborate.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: If it looks like a fit, we'll reach out to talk about where you could help. - name: We'll write if there's a fit -- action: / - consequence: - - Back to site - description: '' - name: Back to site -description: Your note is in. An owner reads every one and will get back to you if there's a fit worth exploring. -name: What happens to what I just sent? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/commission.yaml b/vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/commission.yaml deleted file mode 100644 index 59e77bc..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/commission.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Expect a reply within a few working days, either way, straight to your inbox. - name: A real reply from someone who read it -- action: / - consequence: - - Back to home - description: '' - name: Back to home -description: Your brief is in. An owner reads every commission end to end before replying. -name: What happens now that we've sent our brief? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/custody.yaml b/vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/custody.yaml deleted file mode 100644 index 150966f..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/custody.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: Expect a reply once your report has been looked at and the network checked. - name: A custodian is on it -- action: / - consequence: - - Back to the site - description: '' - name: Back to the site -description: A custodian reads every message about the redoal network and what it keeps. -name: Who looks after what the network keeps? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/propose.yaml b/vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/propose.yaml deleted file mode 100644 index 1ae02a9..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/propose.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: We'll write back once it's been read — approved and made live, or turned down with a reason. - name: A read, then a decision -- action: / - consequence: - - Back home - description: '' - name: Back home -description: Your proposal is in. Someone here will read it and decide whether it fits before anything changes on the page. -name: What happens to my proposal now? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/subscribe.yaml b/vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/subscribe.yaml deleted file mode 100644 index c2910bb..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/subscribe.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: You're on the list. Every note has an unsubscribe link if it stops being useful. - name: You're on the list -- action: / - consequence: - - Back to site - description: '' - name: Back to site -description: You'll hear from us when there's something worth saying, not on a schedule. -name: What happens now that I've subscribed? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/trial.yaml b/vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/trial.yaml deleted file mode 100644 index 586bcd3..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/site/questions/received/trial.yaml +++ /dev/null @@ -1,10 +0,0 @@ -alternatives: -- description: If it looks like a fit, we'll draft your site from your own words and send it back for your say before anything goes live. - name: A first draft, built from your own words -- action: / - consequence: - - Back to site - description: '' - name: Back to site -description: We read every trial request ourselves before anything gets built. -name: What happens now that you've sent this? diff --git a/vendor/trainer/runs/uhhm-2026-09-23/site/site.yaml b/vendor/trainer/runs/uhhm-2026-09-23/site/site.yaml deleted file mode 100644 index 02da7b2..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/site/site.yaml +++ /dev/null @@ -1,5 +0,0 @@ -lang: en -mail: - from: UHHM - reply_to: bl@uhhm.no -title: UHHM diff --git a/vendor/trainer/runs/uhhm-2026-09-23/site/words.json b/vendor/trainer/runs/uhhm-2026-09-23/site/words.json deleted file mode 100644 index 50f504b..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/site/words.json +++ /dev/null @@ -1,500 +0,0 @@ -{ - "aggregates.yaml": { - "custody_requests": { - "declined": { - "body": "We've read your message and decided this isn't something we can take on as custodians. If you think we've missed something, write back and tell us.", - "subject": "On your message to the custodians" - }, - "open": { - "body": "Your message reached the custodians of the first node. We read everything that comes in - expect a real reply, not an autoresponder.", - "subject": "We have your message" - }, - "resolved": { - "body": "This is resolved. Here's what we found and what we did about it - write back if it isn't settled from where you sit.", - "subject": "Your case is resolved" - } - }, - "projects": { - "accepted": { - "body": "We want to take this on. Next we'll be in touch to talk through scope, timing and how we'll work together.", - "subject": "We'd like to take this on" - }, - "declined": { - "body": "We've read your brief and this isn't one we're taking on. It isn't a judgment on the problem - just not a fit for us right now.", - "subject": "On your brief" - }, - "open": { - "body": "Your brief is in front of us. We read the whole thing before we reply, so it may take a few days - you'll hear from us either way.\n\nWhat you can do next: {site}/decide/commission?chain={chain}&email={email}", - "subject": "We have your brief" - } - }, - "trials": { - "approved": { - "body": "Your draft is approved and on its way. We built it from your own words - have a look when it's ready and tell us what to change.", - "subject": "Your draft is approved" - }, - "declined": { - "body": "We've decided not to build this draft. If the situation changes, get back in touch and we'll take another look.", - "subject": "On your draft" - }, - "open": { - "body": "We have what you sent. A person will read it and build your draft, or tell you why not - you'll hear from us either way.", - "subject": "We're looking at your draft" - }, - "previewed": { - "body": "Your draft is ready to look at. It's built from your own words - the link below takes you straight to it.", - "subject": "Your draft is ready to view" - } - } - }, - "questions/custodians/index.yaml": { - "buckets": { - "custody_requests": { - "description": "Cases from people who use, build on, or answer for something the redoal network touches, and need a custodian's word on it.", - "heading": "Custody cases waiting on you", - "moves": { - "in_dialogue->declined": "Close, no action", - "in_dialogue->resolved": "Mark resolved", - "open->declined": "Decline case", - "open->in_dialogue": "Open dialogue" - } - } - }, - "confirm": "Confirm", - "description": "The desk for custodians: open custody cases, and the people invited to answer them.", - "invited": { - "description": "Custodians invited but not yet signed in.", - "done": "Signed in", - "heading": "Invited custodians" - }, - "invites": { - "custodians": { - "button": "Invite custodian", - "description": "Give someone an account and a one-time link to join as a custodian.", - "form_title": "Invite a custodian", - "heading": "Bring in another custodian", - "labels": { - "email": "Email", - "name": "Name" - } - } - }, - "links": {}, - "question": "What is waiting on the custodians?" - }, - "questions/decide/commission.yaml": { - "description": "", - "moves": { - "declined": { - "button": "Declined", - "description": "", - "heading": "Declined" - } - }, - "question": "What would you like to do?" - }, - "questions/decide/custody.yaml": { - "description": "", - "moves": { - "resolved": { - "button": "Resolved", - "description": "", - "heading": "Resolved" - } - }, - "question": "What would you like to do?" - }, - "questions/decide/subscribe.yaml": { - "description": "You're on our list. Change your mind whenever you like.", - "moves": { - "unsubscribed": { - "button": "Unsubscribe", - "description": "You'll stop hearing from us. Nothing else changes.", - "heading": "Stop getting notes from us" - } - }, - "question": "Do you want to keep hearing from us?" - }, - "questions/index.yaml": { - "description": "UHHM builds software for organisations that can say what problem they have, and keeps the redoal network underneath.", - "doors": {}, - "needs": { - "collaborate": { - "button": "Get in touch", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.", - "encouragement": "A person reads this, not a form filter — worth the ten minutes.", - "form_description": "Tell us who you are and what kind of work you're after.", - "form_title": "Say hello", - "heading": "Work with us", - "hints": { - "email": "you@example.com", - "interest": "Backend work, or something design-heavy", - "name": "Your name", - "note": "A bit about what you'd want to work on, or a link to your work" - }, - "icon": "handshake", - "labels": { - "email": "Email", - "interest": "What kind of work", - "name": "Name", - "note": "Tell us more" - }, - "road_description": "We read what you send and get back to you. If there's a fit, we invite you in and you start working with us — and if things ever change, that's fine too.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads this directly — for anything urgent, write to bl@uhhm.no.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "commission": { - "button": "Send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.", - "encouragement": "Someone here reads every brief in full before writing back.", - "form_description": "The more of the problem you put in, the better the reply.", - "form_title": "Tell us the problem", - "heading": "Have us build it: send the brief", - "hints": { - "email": "sara@company.com", - "name": "Sara Nilsen", - "org_contact": "Sara Nilsen, ops manager", - "organization": "Nilsen Transport AS", - "project": "Our drivers log hours on paper and it takes a day to get them into payroll." - }, - "icon": "briefcase", - "labels": { - "email": "Your email", - "name": "Your name", - "org_contact": "Who we should talk to", - "organization": "Your organization", - "project": "The problem you want solved" - }, - "road_description": "We read your brief and either take it on or tell you honestly if it's not a fit.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads it; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "custody": { - "button": "Send to a custodian", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at.", - "encouragement": "A custodian reads every message that comes in here.", - "form_description": "Say which of the four it is, and what you need, in a few lines.", - "form_title": "Reach a custodian", - "heading": "You are on the redoal network: a node, an app, or a recording that concerns you", - "hints": { - "about": "We run our order system on a relay node and it's been dropping messages since Tuesday", - "email": "you@yourcompany.com", - "name": "Your name", - "what": "A relay node is misbehaving" - }, - "icon": "shield", - "labels": { - "about": "What's going on", - "email": "Email", - "name": "Name", - "what": "In short" - }, - "road_description": "A custodian opens a dialogue with you. A node gets its peer, a builder gets an answer, and something the network should not keep gets removed. Either way you hear what was decided.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A custodian reads it directly; if it's urgent, write to bl@uhhm.no in the meantime.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "propose": { - "button": "Send change", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how.", - "encouragement": "Even a rough version helps — we can tidy the wording ourselves.", - "form_description": "Point us to the page and show us the change.", - "form_title": "Propose a change", - "heading": "Suggest a change to this website", - "hints": { - "email": "you@example.com", - "page": "questions/join/index.yaml", - "proposed_yaml": "heading: \"A clearer way to say this\"", - "rationale": "The current heading doesn't say what you actually get", - "submitted_by": "Your name" - }, - "icon": "pencil", - "labels": { - "email": "Email", - "page": "Which page", - "proposed_yaml": "Your proposed text", - "rationale": "Why this is better", - "submitted_by": "Your name" - }, - "road_description": "Someone here reads your proposal and either makes the change or explains why not. Either way, you'll hear back.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner reads every proposal before anything changes — reach us at bl@uhhm.no if it's time-sensitive.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "subscribe": { - "button": "Sign up", - "description": "You'd rather hear from us now and then than check back on your own.", - "encouragement": "One click unsubscribes you later, no questions asked.", - "form_description": "Just your email, or your name too if you'd like.", - "form_title": "Stay in the loop", - "heading": "Hear from us now and then", - "hints": { - "email": "you@example.com", - "name": "Your name" - }, - "icon": "mail", - "labels": { - "email": "Email", - "name": "Name" - }, - "road_description": "You're on the list. We write when there's something worth saying, and you can leave the list whenever you like.", - "road_icon": "bell", - "road_title": "What happens next", - "who_description": "An owner sends these notes directly — write to bl@uhhm.no if you'd rather ask something first.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "trial": { - "button": "Start the draft", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.", - "encouragement": "A person looks at what you send before anything gets built.", - "form_description": "Answer in your own words - there's no wrong way to describe your business.", - "form_title": "Describe your business", - "heading": "See your own business as a site, before you buy anything", - "hints": { - "business": "Nilsen Transport AS", - "email": "sara@company.com", - "what_slows_us_down": "Approvals sit in someone's inbox for days before anyone acts on them.", - "what_we_do": "We move freight for local businesses and handle the paperwork for them.", - "what_we_keep_track_of": "Bookings, driver hours, and which loads are still waiting on a signature.", - "who_comes_to_us": "Local businesses that need something moved on short notice.", - "who_is_involved": "Drivers, dispatchers, and the customers waiting on their delivery." - }, - "icon": "layers", - "labels": { - "business": "Your business", - "email": "Your email", - "what_slows_us_down": "What slows you down", - "what_we_do": "What you do", - "what_we_keep_track_of": "What you keep track of", - "who_comes_to_us": "Who comes to you", - "who_is_involved": "Who's involved" - }, - "road_description": "We look at what you sent and, if it's a fit, build a draft from your own roles and words for you to see before anything moves further.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner looks at what you send; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "opener": { - "description": "Two things, both built here and both running.", - "features": { - "redoal": { - "description": "UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved.", - "heading": "A network that answers to you", - "icon": "waypoints" - }, - "software": { - "description": "Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.", - "heading": "A considered reply to your brief, and software that fits the argument", - "icon": "layers" - } - }, - "heading": "What UHHM does" - }, - "question": "What is UHHM, and what can you get here?", - "shopping": { - "description": "Nothing to fill in here. What is already out in the world, and the network as it runs right now.", - "heading": "Have a look around first", - "items": { - "built": { - "description": "A few things already out in the world.", - "heading": "What we have built", - "icon": "hammer" - }, - "voices": { - "description": "Straight from the relay, the first node of the network.", - "heading": "The redoal network, live", - "icon": "activity" - } - } - } - }, - "questions/owners/index.yaml": { - "buckets": { - "applicants": { - "description": "People who've asked to build with us, waiting on a decision or already working alongside us.", - "heading": "People who want to build with us", - "moves": { - "active->departed": "Mark departed", - "invited->active": "Confirm active", - "invited->declined": "Withdraw the invite", - "open->declined": "Decline applicant", - "open->invited": "Send invite" - } - }, - "custody_requests": { - "description": "Questions and issues raised with the people who keep the first node - custodians handle these, but you can see where each one stands.", - "heading": "What's been raised with custodians", - "moves": {} - }, - "development_proposals": { - "description": "Changes visitors have proposed for pages on this site, waiting on a yes or no.", - "heading": "Proposed changes to the site", - "moves": { - "open->approved": "Approve change", - "open->rejected": "Reject change" - } - }, - "organizations": { - "description": "Organizations you've met, tracked from first contact through to client and beyond.", - "heading": "Organizations you're tracking", - "moves": { - "client->past_client": "Mark past client", - "prospect->client": "Mark as client", - "prospect->past_client": "Archive as past client" - } - }, - "projects": { - "description": "Briefs sent in by organizations with a problem they want solved.", - "heading": "Briefs waiting on a reply", - "moves": { - "open->accepted": "Accept brief", - "open->declined": "Decline brief" - } - }, - "subscribers": { - "description": "People who want to hear from you now and then.", - "heading": "Who's hearing from you", - "moves": { - "open->unsubscribed": "Unsubscribe them" - } - }, - "trials": { - "description": "Businesses who want to see their own workflow as a working site before committing to anything.", - "heading": "Trial sites in progress", - "moves": { - "approved->declined": "Decline trial", - "approved->previewed": "Mark previewed", - "open->approved": "Approve trial", - "open->declined": "Decline trial" - } - } - }, - "confirm": "Confirm", - "description": "Everything waiting on you: briefs, trials, applicants, subscribers, and proposals, all in one place.", - "invited": { - "description": "People you've invited in, and whether they've taken it up yet.", - "done": "Taken up", - "heading": "Invites you've sent" - }, - "invites": { - "custodians": { - "button": "Send invite", - "description": "Bring someone in to help keep the first node and answer for the network.", - "form_title": "Invite a custodian", - "heading": "Bring in a custodian", - "labels": { - "email": "Their email", - "name": "Their name" - } - }, - "owners": { - "button": "Send invite", - "description": "Bring someone in to work this desk alongside you.", - "form_title": "Invite an owner", - "heading": "Bring in another owner", - "labels": { - "email": "Their email", - "name": "Their name" - } - } - }, - "links": { - "prospect": { - "button": "Add prospect", - "description": "Write down an organization worth following up, and track it from first contact onward.", - "heading": "Track a new organization" - } - }, - "question": "What's waiting on me today?" - }, - "questions/owners/prospect-sent.yaml": { - "back": "Back to site", - "description": "Thanks — we've got your prospect written down, and it now moves through the desk with everything else we're tracking.", - "next_description": "An owner walks it from prospect to client, and on to past client, as the relationship moves.", - "next_heading": "It's on the desk now", - "question": "What happens to this now?" - }, - "questions/owners/prospect.yaml": { - "button": "Add to prospects", - "description": "One line per organization worth watching, moved through the stages as things develop.", - "encouragement": "Takes a minute, and it's yours to update later.", - "form_description": "Name the organization and where things stand.", - "form_title": "New prospect", - "heading": "Keep an organization on your radar", - "hints": { - "contact": "met at the bakers' conference, [email protected]", - "name": "Nordvik Bakery", - "note": "wants a booking flow, follow up after harvest season" - }, - "icon": "briefcase", - "labels": { - "contact": "Contact", - "name": "Organization", - "note": "Note" - }, - "page_description": "Write down an organization worth following up, and move it through client and past client as things develop.", - "question": "Is there an organization I should be keeping track of?", - "road_description": "It sits as a prospect until something moves - then you mark it client, and later past client if the work ends.", - "road_icon": "route", - "road_title": "Moves as you update it", - "who_description": "Only you see this, so keep it wherever you check next.", - "who_icon": "user", - "who_title": "Just for you" - }, - "questions/received/collaborate.yaml": { - "back": "Back to site", - "description": "Your note is in. An owner reads every one and will get back to you if there's a fit worth exploring.", - "next_description": "If it looks like a fit, we'll reach out to talk about where you could help.", - "next_heading": "We'll write if there's a fit", - "question": "What happens to what I just sent?" - }, - "questions/received/commission.yaml": { - "back": "Back to home", - "description": "Your brief is in. An owner reads every commission end to end before replying.", - "next_description": "Expect a reply within a few working days, either way, straight to your inbox.", - "next_heading": "A real reply from someone who read it", - "question": "What happens now that we've sent our brief?" - }, - "questions/received/custody.yaml": { - "back": "Back to the site", - "description": "A custodian reads every message about the redoal network and what it keeps.", - "next_description": "Expect a reply once your report has been looked at and the network checked.", - "next_heading": "A custodian is on it", - "question": "Who looks after what the network keeps?" - }, - "questions/received/propose.yaml": { - "back": "Back home", - "description": "Your proposal is in. Someone here will read it and decide whether it fits before anything changes on the page.", - "next_description": "We'll write back once it's been read — approved and made live, or turned down with a reason.", - "next_heading": "A read, then a decision", - "question": "What happens to my proposal now?" - }, - "questions/received/subscribe.yaml": { - "back": "Back to site", - "description": "You'll hear from us when there's something worth saying, not on a schedule.", - "next_description": "You're on the list. Every note has an unsubscribe link if it stops being useful.", - "next_heading": "You're on the list", - "question": "What happens now that I've subscribed?" - }, - "questions/received/trial.yaml": { - "back": "Back to site", - "description": "We read every trial request ourselves before anything gets built.", - "next_description": "If it looks like a fit, we'll draft your site from your own words and send it back for your say before anything goes live.", - "next_heading": "A first draft, built from your own words", - "question": "What happens now that you've sent this?" - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/uhhm-2026-09-23/tasks-full.jsonl b/vendor/trainer/runs/uhhm-2026-09-23/tasks-full.jsonl deleted file mode 100644 index cfc820e..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/tasks-full.jsonl +++ /dev/null @@ -1,15 +0,0 @@ -{"id":"architecture-firm@/","persona":"architecture-firm","need":"commission","page":"/","state":{"body":"We run a small architecture firm and our project files are scattered across three cloud drives. We want to pay someone to set up proper storage and backups we control ourselves.","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.","Hear from us now and then":"You'd rather hear from us now and then than check back on your own.","See your own business as a site, before you buy anything":"Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.","Suggest a change to this website":"You have spotted a page on uhhm.no that should read differently, and you know roughly how.","Work with us":"A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.","You are on the redoal network: a node, an app, or a recording that concerns you":"UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at."}}},"expect":["Have us build it: send the brief"]} -{"id":"climbing-gym-founder@/","persona":"climbing-gym-founder","need":"commission","page":"/","state":{"body":"I have an idea for a booking app for climbing gyms and I'm looking for a team that can build the first version with me.","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.","Hear from us now and then":"You'd rather hear from us now and then than check back on your own.","See your own business as a site, before you buy anything":"Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.","Suggest a change to this website":"You have spotted a page on uhhm.no that should read differently, and you know roughly how.","Work with us":"A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.","You are on the redoal network: a node, an app, or a recording that concerns you":"UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at."}}},"expect":["Have us build it: send the brief"]} -{"id":"municipality-buyer@/","persona":"municipality-buyer","need":"commission","page":"/","state":{"body":"Our municipality needs an internal tool for tracking building permits. We are looking for a vendor who can scope it and deliver it.","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.","Hear from us now and then":"You'd rather hear from us now and then than check back on your own.","See your own business as a site, before you buy anything":"Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.","Suggest a change to this website":"You have spotted a page on uhhm.no that should read differently, and you know roughly how.","Work with us":"A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.","You are on the redoal network: a node, an app, or a recording that concerns you":"UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at."}}},"expect":["Have us build it: send the brief"]} -{"id":"exhibition-visitor@/","persona":"exhibition-visitor","need":"subscribe","page":"/","state":{"body":"I saw your drawing network at an exhibition and liked it. I don't want to get involved, I'd just like to know when there is news.","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.","Hear from us now and then":"You'd rather hear from us now and then than check back on your own.","See your own business as a site, before you buy anything":"Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.","Suggest a change to this website":"You have spotted a page on uhhm.no that should read differently, and you know roughly how.","Work with us":"A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.","You are on the redoal network: a node, an app, or a recording that concerns you":"UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at."}}},"expect":["Hear from us now and then"]} -{"id":"tech-journalist@/","persona":"tech-journalist","need":"subscribe","page":"/","state":{"body":"I write about Nordic technology. Keep me posted on what you release so I can cover it.","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.","Hear from us now and then":"You'd rather hear from us now and then than check back on your own.","See your own business as a site, before you buy anything":"Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.","Suggest a change to this website":"You have spotted a page on uhhm.no that should read differently, and you know roughly how.","Work with us":"A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.","You are on the redoal network: a node, an app, or a recording that concerns you":"UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at."}}},"expect":["Hear from us now and then"]} -{"id":"rust-developer@/","persona":"rust-developer","need":"collaborate","page":"/","state":{"body":"I'm a Rust developer between jobs and I like that you build in the open. I would love to contribute, and maybe join you.","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.","Hear from us now and then":"You'd rather hear from us now and then than check back on your own.","See your own business as a site, before you buy anything":"Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.","Suggest a change to this website":"You have spotted a page on uhhm.no that should read differently, and you know roughly how.","Work with us":"A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.","You are on the redoal network: a node, an app, or a recording that concerns you":"UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at."}}},"expect":["Work with us"]} -{"id":"interaction-designer@/","persona":"interaction-designer","need":"collaborate","page":"/","state":{"body":"I'm an interaction designer. I want to work with you on the drawing interface.","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.","Hear from us now and then":"You'd rather hear from us now and then than check back on your own.","See your own business as a site, before you buy anything":"Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.","Suggest a change to this website":"You have spotted a page on uhhm.no that should read differently, and you know roughly how.","Work with us":"A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.","You are on the redoal network: a node, an app, or a recording that concerns you":"UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at."}}},"expect":["Work with us"]} -{"id":"student-intern@/","persona":"student-intern","need":"collaborate","page":"/","state":{"body":"I'm a computer science student looking for a summer internship doing infrastructure work.","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.","Hear from us now and then":"You'd rather hear from us now and then than check back on your own.","See your own business as a site, before you buy anything":"Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.","Suggest a change to this website":"You have spotted a page on uhhm.no that should read differently, and you know roughly how.","Work with us":"A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.","You are on the redoal network: a node, an app, or a recording that concerns you":"UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at."}}},"expect":["Work with us"]} -{"id":"plumber-owner@/","persona":"plumber-owner","need":"trial","page":"/","state":{"body":"I run a plumbing company with four vans. Jobs come in by phone and text and some get lost. I'd like to see how this would look for us before I spend any money.","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.","Hear from us now and then":"You'd rather hear from us now and then than check back on your own.","See your own business as a site, before you buy anything":"Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.","Suggest a change to this website":"You have spotted a page on uhhm.no that should read differently, and you know roughly how.","Work with us":"A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.","You are on the redoal network: a node, an app, or a recording that concerns you":"UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at."}}},"expect":["See your own business as a site, before you buy anything"]} -{"id":"dance-school@/","persona":"dance-school","need":"trial","page":"/","state":{"body":"We are a dance school. Enrolments, cancellations and invoices all go through one email inbox that only I understand. Can you show me a version made for us?","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.","Hear from us now and then":"You'd rather hear from us now and then than check back on your own.","See your own business as a site, before you buy anything":"Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.","Suggest a change to this website":"You have spotted a page on uhhm.no that should read differently, and you know roughly how.","Work with us":"A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.","You are on the redoal network: a node, an app, or a recording that concerns you":"UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at."}}},"expect":["See your own business as a site, before you buy anything"]} -{"id":"node-runner@/","persona":"node-runner","need":"custody","page":"/","state":{"body":"I run a small server in Berlin and want to host a redoal node that peers with yours. Who do I talk to?","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.","Hear from us now and then":"You'd rather hear from us now and then than check back on your own.","See your own business as a site, before you buy anything":"Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.","Suggest a change to this website":"You have spotted a page on uhhm.no that should read differently, and you know roughly how.","Work with us":"A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.","You are on the redoal network: a node, an app, or a recording that concerns you":"UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at."}}},"expect":["You are on the redoal network: a node, an app, or a recording that concerns you"]} -{"id":"recorded-name@/","persona":"recorded-name","need":"custody","page":"/","state":{"body":"Someone left a recording on redoal that says my full name and where I live. I want it gone, and I want to know who is responsible for that network.","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.","Hear from us now and then":"You'd rather hear from us now and then than check back on your own.","See your own business as a site, before you buy anything":"Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.","Suggest a change to this website":"You have spotted a page on uhhm.no that should read differently, and you know roughly how.","Work with us":"A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.","You are on the redoal network: a node, an app, or a recording that concerns you":"UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at."}}},"expect":["You are on the redoal network: a node, an app, or a recording that concerns you"]} -{"id":"app-builder@/","persona":"app-builder","need":"custody","page":"/","state":{"body":"I'm building a music app and would like to use redoal's gesture addresses in it. Is that possible, and who decides?","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.","Hear from us now and then":"You'd rather hear from us now and then than check back on your own.","See your own business as a site, before you buy anything":"Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.","Suggest a change to this website":"You have spotted a page on uhhm.no that should read differently, and you know roughly how.","Work with us":"A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.","You are on the redoal network: a node, an app, or a recording that concerns you":"UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at."}}},"expect":["You are on the redoal network: a node, an app, or a recording that concerns you"]} -{"id":"wording-fix@/","persona":"wording-fix","need":"propose","page":"/","state":{"body":"The subscribe page should say how often you actually write. I'd like to suggest that exact change to the page.","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.","Hear from us now and then":"You'd rather hear from us now and then than check back on your own.","See your own business as a site, before you buy anything":"Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.","Suggest a change to this website":"You have spotted a page on uhhm.no that should read differently, and you know roughly how.","Work with us":"A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.","You are on the redoal network: a node, an app, or a recording that concerns you":"UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at."}}},"expect":["Suggest a change to this website"]} -{"id":"rewrite@/","persona":"rewrite","need":"propose","page":"/","state":{"body":"One page on this site reads wrong to me and I know exactly how I'd rewrite it. Where do I send the new text?","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.","Hear from us now and then":"You'd rather hear from us now and then than check back on your own.","See your own business as a site, before you buy anything":"Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.","Suggest a change to this website":"You have spotted a page on uhhm.no that should read differently, and you know roughly how.","Work with us":"A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.","You are on the redoal network: a node, an app, or a recording that concerns you":"UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at."}}},"expect":["Suggest a change to this website"]} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/tasks-skim.jsonl b/vendor/trainer/runs/uhhm-2026-09-23/tasks-skim.jsonl deleted file mode 100644 index cd22839..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/tasks-skim.jsonl +++ /dev/null @@ -1,15 +0,0 @@ -{"id":"architecture-firm@/","persona":"architecture-firm","need":"commission","page":"/","state":{"body":"We run a small architecture firm and our project files are scattered across three cloud drives. We want to pay someone to set up proper storage and backups we control ourselves.","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"Have us build it: send the brief","Hear from us now and then":"Hear from us now and then","See your own business as a site, before you buy anything":"See your own business as a site, before you buy anything","Suggest a change to this website":"Suggest a change to this website","Work with us":"Work with us","You are on the redoal network: a node, an app, or a recording that concerns you":"You are on the redoal network: a node, an app, or a recording that concerns you"}}},"expect":["Have us build it: send the brief"]} -{"id":"climbing-gym-founder@/","persona":"climbing-gym-founder","need":"commission","page":"/","state":{"body":"I have an idea for a booking app for climbing gyms and I'm looking for a team that can build the first version with me.","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"Have us build it: send the brief","Hear from us now and then":"Hear from us now and then","See your own business as a site, before you buy anything":"See your own business as a site, before you buy anything","Suggest a change to this website":"Suggest a change to this website","Work with us":"Work with us","You are on the redoal network: a node, an app, or a recording that concerns you":"You are on the redoal network: a node, an app, or a recording that concerns you"}}},"expect":["Have us build it: send the brief"]} -{"id":"municipality-buyer@/","persona":"municipality-buyer","need":"commission","page":"/","state":{"body":"Our municipality needs an internal tool for tracking building permits. We are looking for a vendor who can scope it and deliver it.","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"Have us build it: send the brief","Hear from us now and then":"Hear from us now and then","See your own business as a site, before you buy anything":"See your own business as a site, before you buy anything","Suggest a change to this website":"Suggest a change to this website","Work with us":"Work with us","You are on the redoal network: a node, an app, or a recording that concerns you":"You are on the redoal network: a node, an app, or a recording that concerns you"}}},"expect":["Have us build it: send the brief"]} -{"id":"exhibition-visitor@/","persona":"exhibition-visitor","need":"subscribe","page":"/","state":{"body":"I saw your drawing network at an exhibition and liked it. I don't want to get involved, I'd just like to know when there is news.","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"Have us build it: send the brief","Hear from us now and then":"Hear from us now and then","See your own business as a site, before you buy anything":"See your own business as a site, before you buy anything","Suggest a change to this website":"Suggest a change to this website","Work with us":"Work with us","You are on the redoal network: a node, an app, or a recording that concerns you":"You are on the redoal network: a node, an app, or a recording that concerns you"}}},"expect":["Hear from us now and then"]} -{"id":"tech-journalist@/","persona":"tech-journalist","need":"subscribe","page":"/","state":{"body":"I write about Nordic technology. Keep me posted on what you release so I can cover it.","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"Have us build it: send the brief","Hear from us now and then":"Hear from us now and then","See your own business as a site, before you buy anything":"See your own business as a site, before you buy anything","Suggest a change to this website":"Suggest a change to this website","Work with us":"Work with us","You are on the redoal network: a node, an app, or a recording that concerns you":"You are on the redoal network: a node, an app, or a recording that concerns you"}}},"expect":["Hear from us now and then"]} -{"id":"rust-developer@/","persona":"rust-developer","need":"collaborate","page":"/","state":{"body":"I'm a Rust developer between jobs and I like that you build in the open. I would love to contribute, and maybe join you.","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"Have us build it: send the brief","Hear from us now and then":"Hear from us now and then","See your own business as a site, before you buy anything":"See your own business as a site, before you buy anything","Suggest a change to this website":"Suggest a change to this website","Work with us":"Work with us","You are on the redoal network: a node, an app, or a recording that concerns you":"You are on the redoal network: a node, an app, or a recording that concerns you"}}},"expect":["Work with us"]} -{"id":"interaction-designer@/","persona":"interaction-designer","need":"collaborate","page":"/","state":{"body":"I'm an interaction designer. I want to work with you on the drawing interface.","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"Have us build it: send the brief","Hear from us now and then":"Hear from us now and then","See your own business as a site, before you buy anything":"See your own business as a site, before you buy anything","Suggest a change to this website":"Suggest a change to this website","Work with us":"Work with us","You are on the redoal network: a node, an app, or a recording that concerns you":"You are on the redoal network: a node, an app, or a recording that concerns you"}}},"expect":["Work with us"]} -{"id":"student-intern@/","persona":"student-intern","need":"collaborate","page":"/","state":{"body":"I'm a computer science student looking for a summer internship doing infrastructure work.","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"Have us build it: send the brief","Hear from us now and then":"Hear from us now and then","See your own business as a site, before you buy anything":"See your own business as a site, before you buy anything","Suggest a change to this website":"Suggest a change to this website","Work with us":"Work with us","You are on the redoal network: a node, an app, or a recording that concerns you":"You are on the redoal network: a node, an app, or a recording that concerns you"}}},"expect":["Work with us"]} -{"id":"plumber-owner@/","persona":"plumber-owner","need":"trial","page":"/","state":{"body":"I run a plumbing company with four vans. Jobs come in by phone and text and some get lost. I'd like to see how this would look for us before I spend any money.","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"Have us build it: send the brief","Hear from us now and then":"Hear from us now and then","See your own business as a site, before you buy anything":"See your own business as a site, before you buy anything","Suggest a change to this website":"Suggest a change to this website","Work with us":"Work with us","You are on the redoal network: a node, an app, or a recording that concerns you":"You are on the redoal network: a node, an app, or a recording that concerns you"}}},"expect":["See your own business as a site, before you buy anything"]} -{"id":"dance-school@/","persona":"dance-school","need":"trial","page":"/","state":{"body":"We are a dance school. Enrolments, cancellations and invoices all go through one email inbox that only I understand. Can you show me a version made for us?","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"Have us build it: send the brief","Hear from us now and then":"Hear from us now and then","See your own business as a site, before you buy anything":"See your own business as a site, before you buy anything","Suggest a change to this website":"Suggest a change to this website","Work with us":"Work with us","You are on the redoal network: a node, an app, or a recording that concerns you":"You are on the redoal network: a node, an app, or a recording that concerns you"}}},"expect":["See your own business as a site, before you buy anything"]} -{"id":"node-runner@/","persona":"node-runner","need":"custody","page":"/","state":{"body":"I run a small server in Berlin and want to host a redoal node that peers with yours. Who do I talk to?","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"Have us build it: send the brief","Hear from us now and then":"Hear from us now and then","See your own business as a site, before you buy anything":"See your own business as a site, before you buy anything","Suggest a change to this website":"Suggest a change to this website","Work with us":"Work with us","You are on the redoal network: a node, an app, or a recording that concerns you":"You are on the redoal network: a node, an app, or a recording that concerns you"}}},"expect":["You are on the redoal network: a node, an app, or a recording that concerns you"]} -{"id":"recorded-name@/","persona":"recorded-name","need":"custody","page":"/","state":{"body":"Someone left a recording on redoal that says my full name and where I live. I want it gone, and I want to know who is responsible for that network.","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"Have us build it: send the brief","Hear from us now and then":"Hear from us now and then","See your own business as a site, before you buy anything":"See your own business as a site, before you buy anything","Suggest a change to this website":"Suggest a change to this website","Work with us":"Work with us","You are on the redoal network: a node, an app, or a recording that concerns you":"You are on the redoal network: a node, an app, or a recording that concerns you"}}},"expect":["You are on the redoal network: a node, an app, or a recording that concerns you"]} -{"id":"app-builder@/","persona":"app-builder","need":"custody","page":"/","state":{"body":"I'm building a music app and would like to use redoal's gesture addresses in it. Is that possible, and who decides?","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"Have us build it: send the brief","Hear from us now and then":"Hear from us now and then","See your own business as a site, before you buy anything":"See your own business as a site, before you buy anything","Suggest a change to this website":"Suggest a change to this website","Work with us":"Work with us","You are on the redoal network: a node, an app, or a recording that concerns you":"You are on the redoal network: a node, an app, or a recording that concerns you"}}},"expect":["You are on the redoal network: a node, an app, or a recording that concerns you"]} -{"id":"wording-fix@/","persona":"wording-fix","need":"propose","page":"/","state":{"body":"The subscribe page should say how often you actually write. I'd like to suggest that exact change to the page.","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"Have us build it: send the brief","Hear from us now and then":"Hear from us now and then","See your own business as a site, before you buy anything":"See your own business as a site, before you buy anything","Suggest a change to this website":"Suggest a change to this website","Work with us":"Work with us","You are on the redoal network: a node, an app, or a recording that concerns you":"You are on the redoal network: a node, an app, or a recording that concerns you"}}},"expect":["Suggest a change to this website"]} -{"id":"rewrite@/","persona":"rewrite","need":"propose","page":"/","state":{"body":"One page on this site reads wrong to me and I know exactly how I'd rewrite it. Where do I send the new text?","page":"What UHHM does: Two things, both built here and both running. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network."},"questions":{"pick":{"type":"choice","instructions":"A visitor reads the page question \"What is UHHM, and what can you get here?\". Which alternative do they choose?","criteria":{"Have us build it: send the brief":"Have us build it: send the brief","Hear from us now and then":"Hear from us now and then","See your own business as a site, before you buy anything":"See your own business as a site, before you buy anything","Suggest a change to this website":"Suggest a change to this website","Work with us":"Work with us","You are on the redoal network: a node, an app, or a recording that concerns you":"You are on the redoal network: a node, an app, or a recording that concerns you"}}},"expect":["Suggest a change to this website"]} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/words-r2.json b/vendor/trainer/runs/uhhm-2026-09-23/words-r2.json deleted file mode 100644 index 7fc8e57..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/words-r2.json +++ /dev/null @@ -1,426 +0,0 @@ -{ - "questions/build/index.yaml": { - "description": "Have a problem software should solve, or want to see your own way of working as a site before you pay anyone?", - "needs": { - "commission": { - "button": "Send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.", - "encouragement": "Someone here reads every brief in full before writing back.", - "form_description": "The more of the problem you put in, the better the reply.", - "form_title": "Tell us the problem", - "heading": "Have us build it: send the brief", - "hints": { - "email": "sara@company.com", - "name": "Sara Nilsen", - "org_contact": "Sara Nilsen, ops manager", - "organization": "Nilsen Transport AS", - "project": "Our drivers log hours on paper and it takes a day to get them into payroll." - }, - "icon": "briefcase", - "labels": { - "email": "Your email", - "name": "Your name", - "org_contact": "Who we should talk to", - "organization": "Your organization", - "project": "The problem you want solved" - }, - "road_description": "We read your brief and either take it on or tell you honestly if it's not a fit.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads it; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "trial": { - "button": "Start the draft", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.", - "encouragement": "A person looks at what you send before anything gets built.", - "form_description": "Answer in your own words - there's no wrong way to describe your business.", - "form_title": "Describe your business", - "heading": "See your own business as a site, before you buy anything", - "hints": { - "business": "Nilsen Transport AS", - "email": "sara@company.com", - "what_slows_us_down": "Approvals sit in someone's inbox for days before anyone acts on them.", - "what_we_do": "We move freight for local businesses and handle the paperwork for them.", - "what_we_keep_track_of": "Bookings, driver hours, and which loads are still waiting on a signature.", - "who_comes_to_us": "Local businesses that need something moved on short notice.", - "who_is_involved": "Drivers, dispatchers, and the customers waiting on their delivery." - }, - "icon": "layers", - "labels": { - "business": "Your business", - "email": "Your email", - "what_slows_us_down": "What slows you down", - "what_we_do": "What you do", - "what_we_keep_track_of": "What you keep track of", - "who_comes_to_us": "Who comes to you", - "who_is_involved": "Who's involved" - }, - "road_description": "We look at what you sent and, if it's a fit, build a draft from your own roles and words for you to see before anything moves further.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner looks at what you send; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "Do you have a brief, or do you want to see your business as a site first?" - }, - "questions/custodians/index.yaml": { - "buckets": { - "custody_requests": { - "description": "Cases from people who use, build on, or answer for something the redoal network touches, and need a custodian's word on it.", - "heading": "Custody cases waiting on you", - "moves": { - "in_dialogue->declined": "Close, no action", - "in_dialogue->resolved": "Mark resolved", - "open->declined": "Decline case", - "open->in_dialogue": "Open dialogue" - } - } - }, - "confirm": "Confirm", - "description": "The desk for custodians: open custody cases, and the people invited to answer them.", - "invited": { - "description": "Custodians invited but not yet signed in.", - "done": "Signed in", - "heading": "Invited custodians" - }, - "invites": { - "custodians": { - "button": "Invite custodian", - "description": "Give someone an account and a one-time link to join as a custodian.", - "form_title": "Invite a custodian", - "heading": "Bring in another custodian", - "labels": { - "email": "Email", - "name": "Name" - } - } - }, - "links": {}, - "question": "What is waiting on the custodians?" - }, - "questions/decide/subscribe.yaml": { - "description": "You're on our list. Change your mind whenever you like.", - "moves": { - "unsubscribed": { - "button": "Unsubscribe", - "description": "You'll stop hearing from us. Nothing else changes.", - "heading": "Stop getting notes from us" - } - }, - "question": "Do you want to keep hearing from us?" - }, - "questions/index.yaml": { - "description": "UHHM builds software for organisations that can say what problem they have, and keeps the redoal network underneath.", - "doors": { - "build": { - "button": "Start here", - "description": "Send us a brief, or describe how work flows through your business and see it as a working site before you pay for anything.", - "for_whom": "For an organisation with a problem, or a business sizing us up", - "heading": "Get software built, or try a site for your business first", - "icon": "hammer" - }, - "join": { - "button": "Start here", - "description": "Join us as a collaborator, get a note now and then, or suggest a change to a page on uhhm.no.", - "for_whom": "For anyone who wants in, on their own terms", - "heading": "Work with us, hear from us, or change this website", - "icon": "handshake" - } - }, - "needs": { - "custody": { - "button": "Send to a custodian", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at.", - "encouragement": "A custodian reads every message that comes in here.", - "form_description": "Say which of the four it is, and what you need, in a few lines.", - "form_title": "Reach a custodian", - "heading": "About the redoal network: run a node, build on it, or have something removed", - "hints": { - "about": "We run our order system on a relay node and it's been dropping messages since Tuesday", - "email": "you@yourcompany.com", - "name": "Your name", - "what": "A relay node is misbehaving" - }, - "icon": "shield", - "labels": { - "about": "What's going on", - "email": "Email", - "name": "Name", - "what": "In short" - }, - "road_description": "A custodian opens a dialogue with you. A node gets its peer, a builder gets an answer, and something the network should not keep gets removed. Either way you hear what was decided.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A custodian reads it directly; if it's urgent, write to bl@uhhm.no in the meantime.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "What brings you here?" - }, - "questions/join/index.yaml": { - "description": "Three ways to be part of what UHHM builds: work with us, hear from us, or fix something on this site.", - "needs": { - "collaborate": { - "button": "Get in touch", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.", - "encouragement": "A person reads this, not a form filter — worth the ten minutes.", - "form_description": "Tell us who you are and what kind of work you're after.", - "form_title": "Say hello", - "heading": "Work with us", - "hints": { - "email": "you@example.com", - "interest": "Backend work, or something design-heavy", - "name": "Your name", - "note": "A bit about what you'd want to work on, or a link to your work" - }, - "icon": "handshake", - "labels": { - "email": "Email", - "interest": "What kind of work", - "name": "Name", - "note": "Tell us more" - }, - "road_description": "We read what you send and get back to you. If there's a fit, we invite you in and you start working with us — and if things ever change, that's fine too.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads this directly — for anything urgent, write to bl@uhhm.no.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "propose": { - "button": "Send change", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how.", - "encouragement": "Even a rough version helps — we can tidy the wording ourselves.", - "form_description": "Point us to the page and show us the change.", - "form_title": "Propose a change", - "heading": "Suggest a change to this website", - "hints": { - "email": "you@example.com", - "page": "questions/join/index.yaml", - "proposed_yaml": "heading: \"A clearer way to say this\"", - "rationale": "The current heading doesn't say what you actually get", - "submitted_by": "Your name" - }, - "icon": "pencil", - "labels": { - "email": "Email", - "page": "Which page", - "proposed_yaml": "Your proposed text", - "rationale": "Why this is better", - "submitted_by": "Your name" - }, - "road_description": "Someone here reads your proposal and either makes the change or explains why not. Either way, you'll hear back.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner reads every proposal before anything changes — reach us at bl@uhhm.no if it's time-sensitive.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "subscribe": { - "button": "Sign up", - "description": "You'd rather hear from us now and then than check back on your own.", - "encouragement": "One click unsubscribes you later, no questions asked.", - "form_description": "Just your email, or your name too if you'd like.", - "form_title": "Stay in the loop", - "heading": "Hear from us now and then", - "hints": { - "email": "you@example.com", - "name": "Your name" - }, - "icon": "mail", - "labels": { - "email": "Email", - "name": "Name" - }, - "road_description": "You're on the list. We write when there's something worth saying, and you can leave the list whenever you like.", - "road_icon": "bell", - "road_title": "What happens next", - "who_description": "An owner sends these notes directly — write to bl@uhhm.no if you'd rather ask something first.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "How do you want to be part of this?" - }, - "questions/owners/index.yaml": { - "buckets": { - "applicants": { - "description": "People who've asked to build with us, waiting on a decision or already working alongside us.", - "heading": "People who want to build with us", - "moves": { - "active->declined": "End collaboration", - "active->departed": "Mark departed", - "invited->active": "Confirm active", - "invited->declined": "Withdraw invite", - "open->declined": "Decline applicant", - "open->invited": "Send invite" - } - }, - "custody_requests": { - "description": "Questions and issues raised with the people who keep the first node - custodians handle these, but you can see where each one stands.", - "heading": "What's been raised with custodians", - "moves": {} - }, - "development_proposals": { - "description": "Changes visitors have proposed for pages on this site, waiting on a yes or no.", - "heading": "Proposed changes to the site", - "moves": { - "open->approved": "Approve change", - "open->rejected": "Reject change" - } - }, - "organizations": { - "description": "Organizations you've met, tracked from first contact through to client and beyond.", - "heading": "Organizations you're tracking", - "moves": { - "client->past_client": "Mark past client", - "prospect->client": "Mark as client", - "prospect->past_client": "Mark not pursued" - } - }, - "projects": { - "description": "Briefs sent in by organizations with a problem they want solved.", - "heading": "Briefs waiting on a reply", - "moves": { - "open->accepted": "Accept brief", - "open->declined": "Decline brief" - } - }, - "subscribers": { - "description": "People who want to hear from you now and then.", - "heading": "Who's hearing from you", - "moves": { - "open->unsubscribed": "Unsubscribe them" - } - }, - "trials": { - "description": "Businesses who want to see their own workflow as a working site before committing to anything.", - "heading": "Trial sites in progress", - "moves": { - "approved->declined": "Decline trial", - "approved->previewed": "Mark previewed", - "open->approved": "Approve trial", - "open->declined": "Decline trial" - } - } - }, - "confirm": "Confirm", - "description": "Everything waiting on you: briefs, trials, applicants, subscribers, and proposals, all in one place.", - "invited": { - "description": "People you've invited in, and whether they've taken it up yet.", - "done": "Taken up", - "heading": "Invites you've sent" - }, - "invites": { - "custodians": { - "button": "Send invite", - "description": "Bring someone in to help keep the first node and answer for the network.", - "form_title": "Invite a custodian", - "heading": "Bring in a custodian", - "labels": { - "email": "Their email", - "name": "Their name" - } - }, - "owners": { - "button": "Send invite", - "description": "Bring someone in to work this desk alongside you.", - "form_title": "Invite an owner", - "heading": "Bring in another owner", - "labels": { - "email": "Their email", - "name": "Their name" - } - } - }, - "links": { - "prospect": { - "button": "Add prospect", - "description": "Write down an organization worth following up, and track it from first contact onward.", - "heading": "Track a new organization" - } - }, - "question": "What's waiting on me today?" - }, - "questions/owners/prospect-sent.yaml": { - "back": "Back to site", - "description": "Thanks — we've got your prospect written down, and it now moves through the desk with everything else we're tracking.", - "next_description": "An owner walks it from prospect to client, and on to past client, as the relationship moves.", - "next_heading": "It's on the desk now", - "question": "What happens to this now?" - }, - "questions/owners/prospect.yaml": { - "button": "Add to prospects", - "description": "One line per organization worth watching, moved through the stages as things develop.", - "encouragement": "Takes a minute, and it's yours to update later.", - "form_description": "Name the organization and where things stand.", - "form_title": "New prospect", - "heading": "Keep an organization on your radar", - "hints": { - "contact": "met at the bakers' conference, [email protected]", - "name": "Nordvik Bakery", - "note": "wants a booking flow, follow up after harvest season" - }, - "icon": "briefcase", - "labels": { - "contact": "Contact", - "name": "Organization", - "note": "Note" - }, - "page_description": "Write down an organization worth following up, and move it through client and past client as things develop.", - "question": "Is there an organization I should be keeping track of?", - "road_description": "It sits as a prospect until something moves - then you mark it client, and later past client if the work ends.", - "road_icon": "route", - "road_title": "Moves as you update it", - "who_description": "Only you see this, so keep it wherever you check next.", - "who_icon": "user", - "who_title": "Just for you" - }, - "questions/received/collaborate.yaml": { - "back": "Back to site", - "description": "Your note is in. An owner reads every one and will get back to you if there's a fit worth exploring.", - "next_description": "If it looks like a fit, we'll reach out to talk about where you could help.", - "next_heading": "We'll write if there's a fit", - "question": "What happens to what I just sent?" - }, - "questions/received/commission.yaml": { - "back": "Back to home", - "description": "Your brief is in. An owner reads every commission end to end before replying.", - "next_description": "Expect a reply within a few working days, either way, straight to your inbox.", - "next_heading": "A real reply from someone who read it", - "question": "What happens now that we've sent our brief?" - }, - "questions/received/custody.yaml": { - "back": "Back to the site", - "description": "A custodian reads every message about the redoal network and what it keeps.", - "next_description": "Expect a reply once your report has been looked at and the network checked.", - "next_heading": "A custodian is on it", - "question": "Who looks after what the network keeps?" - }, - "questions/received/propose.yaml": { - "back": "Back home", - "description": "Your proposal is in. Someone here will read it and decide whether it fits before anything changes on the page.", - "next_description": "We'll write back once it's been read — approved and made live, or turned down with a reason.", - "next_heading": "A read, then a decision", - "question": "What happens to my proposal now?" - }, - "questions/received/subscribe.yaml": { - "back": "Back to site", - "description": "You'll hear from us when there's something worth saying, not on a schedule.", - "next_description": "You're on the list. Every note has an unsubscribe link if it stops being useful.", - "next_heading": "You're on the list", - "question": "What happens now that I've subscribed?" - }, - "questions/received/trial.yaml": { - "back": "Back to site", - "description": "We read every trial request ourselves before anything gets built.", - "next_description": "If it looks like a fit, we'll draft your site from your own words and send it back for your say before anything goes live.", - "next_heading": "A first draft, built from your own words", - "question": "What happens now that you've sent this?" - } -} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/words-r3.json b/vendor/trainer/runs/uhhm-2026-09-23/words-r3.json deleted file mode 100644 index 40fa3f0..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/words-r3.json +++ /dev/null @@ -1,426 +0,0 @@ -{ - "questions/build/index.yaml": { - "description": "Have a problem software should solve, or want to see your own way of working as a site before you pay anyone?", - "needs": { - "commission": { - "button": "Send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.", - "encouragement": "Someone here reads every brief in full before writing back.", - "form_description": "The more of the problem you put in, the better the reply.", - "form_title": "Tell us the problem", - "heading": "Have us build it: send the brief", - "hints": { - "email": "sara@company.com", - "name": "Sara Nilsen", - "org_contact": "Sara Nilsen, ops manager", - "organization": "Nilsen Transport AS", - "project": "Our drivers log hours on paper and it takes a day to get them into payroll." - }, - "icon": "briefcase", - "labels": { - "email": "Your email", - "name": "Your name", - "org_contact": "Who we should talk to", - "organization": "Your organization", - "project": "The problem you want solved" - }, - "road_description": "We read your brief and either take it on or tell you honestly if it's not a fit.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads it; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "trial": { - "button": "Start the draft", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.", - "encouragement": "A person looks at what you send before anything gets built.", - "form_description": "Answer in your own words - there's no wrong way to describe your business.", - "form_title": "Describe your business", - "heading": "See your own business as a site, before you buy anything", - "hints": { - "business": "Nilsen Transport AS", - "email": "sara@company.com", - "what_slows_us_down": "Approvals sit in someone's inbox for days before anyone acts on them.", - "what_we_do": "We move freight for local businesses and handle the paperwork for them.", - "what_we_keep_track_of": "Bookings, driver hours, and which loads are still waiting on a signature.", - "who_comes_to_us": "Local businesses that need something moved on short notice.", - "who_is_involved": "Drivers, dispatchers, and the customers waiting on their delivery." - }, - "icon": "layers", - "labels": { - "business": "Your business", - "email": "Your email", - "what_slows_us_down": "What slows you down", - "what_we_do": "What you do", - "what_we_keep_track_of": "What you keep track of", - "who_comes_to_us": "Who comes to you", - "who_is_involved": "Who's involved" - }, - "road_description": "We look at what you sent and, if it's a fit, build a draft from your own roles and words for you to see before anything moves further.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner looks at what you send; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "Do you have a brief, or do you want to see your business as a site first?" - }, - "questions/custodians/index.yaml": { - "buckets": { - "custody_requests": { - "description": "Cases from people who use, build on, or answer for something the redoal network touches, and need a custodian's word on it.", - "heading": "Custody cases waiting on you", - "moves": { - "in_dialogue->declined": "Close, no action", - "in_dialogue->resolved": "Mark resolved", - "open->declined": "Decline case", - "open->in_dialogue": "Open dialogue" - } - } - }, - "confirm": "Confirm", - "description": "The desk for custodians: open custody cases, and the people invited to answer them.", - "invited": { - "description": "Custodians invited but not yet signed in.", - "done": "Signed in", - "heading": "Invited custodians" - }, - "invites": { - "custodians": { - "button": "Invite custodian", - "description": "Give someone an account and a one-time link to join as a custodian.", - "form_title": "Invite a custodian", - "heading": "Bring in another custodian", - "labels": { - "email": "Email", - "name": "Name" - } - } - }, - "links": {}, - "question": "What is waiting on the custodians?" - }, - "questions/decide/subscribe.yaml": { - "description": "You're on our list. Change your mind whenever you like.", - "moves": { - "unsubscribed": { - "button": "Unsubscribe", - "description": "You'll stop hearing from us. Nothing else changes.", - "heading": "Stop getting notes from us" - } - }, - "question": "Do you want to keep hearing from us?" - }, - "questions/index.yaml": { - "description": "UHHM builds software for organisations that can say what problem they have, and keeps the redoal network underneath.", - "doors": { - "build": { - "button": "Start here", - "description": "Send us a brief, or first describe how work flows through your business and see it as a working site before you pay for anything.", - "for_whom": "For a business or an organization with a job for us", - "heading": "You run an organization that needs software built", - "icon": "hammer" - }, - "join": { - "button": "Start here", - "description": "A developer, designer or student who wants in; someone who wants a note now and then; or a reader who would reword a page on uhhm.no.", - "for_whom": "For a person, on their own behalf", - "heading": "You want to join us, follow us, or fix a page on this site", - "icon": "handshake" - } - }, - "needs": { - "custody": { - "button": "Send to a custodian", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at.", - "encouragement": "A custodian reads every message that comes in here.", - "form_description": "Say which of the four it is, and what you need, in a few lines.", - "form_title": "Reach a custodian", - "heading": "You are on the redoal network: a node, an app, or a recording that concerns you", - "hints": { - "about": "We run our order system on a relay node and it's been dropping messages since Tuesday", - "email": "you@yourcompany.com", - "name": "Your name", - "what": "A relay node is misbehaving" - }, - "icon": "shield", - "labels": { - "about": "What's going on", - "email": "Email", - "name": "Name", - "what": "In short" - }, - "road_description": "A custodian opens a dialogue with you. A node gets its peer, a builder gets an answer, and something the network should not keep gets removed. Either way you hear what was decided.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A custodian reads it directly; if it's urgent, write to bl@uhhm.no in the meantime.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "Who are you, and what do you need from UHHM?" - }, - "questions/join/index.yaml": { - "description": "Three ways to be part of what UHHM builds: work with us, hear from us, or fix something on this site.", - "needs": { - "collaborate": { - "button": "Get in touch", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.", - "encouragement": "A person reads this, not a form filter — worth the ten minutes.", - "form_description": "Tell us who you are and what kind of work you're after.", - "form_title": "Say hello", - "heading": "Work with us", - "hints": { - "email": "you@example.com", - "interest": "Backend work, or something design-heavy", - "name": "Your name", - "note": "A bit about what you'd want to work on, or a link to your work" - }, - "icon": "handshake", - "labels": { - "email": "Email", - "interest": "What kind of work", - "name": "Name", - "note": "Tell us more" - }, - "road_description": "We read what you send and get back to you. If there's a fit, we invite you in and you start working with us — and if things ever change, that's fine too.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads this directly — for anything urgent, write to bl@uhhm.no.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "propose": { - "button": "Send change", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how.", - "encouragement": "Even a rough version helps — we can tidy the wording ourselves.", - "form_description": "Point us to the page and show us the change.", - "form_title": "Propose a change", - "heading": "Suggest a change to this website", - "hints": { - "email": "you@example.com", - "page": "questions/join/index.yaml", - "proposed_yaml": "heading: \"A clearer way to say this\"", - "rationale": "The current heading doesn't say what you actually get", - "submitted_by": "Your name" - }, - "icon": "pencil", - "labels": { - "email": "Email", - "page": "Which page", - "proposed_yaml": "Your proposed text", - "rationale": "Why this is better", - "submitted_by": "Your name" - }, - "road_description": "Someone here reads your proposal and either makes the change or explains why not. Either way, you'll hear back.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner reads every proposal before anything changes — reach us at bl@uhhm.no if it's time-sensitive.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "subscribe": { - "button": "Sign up", - "description": "You'd rather hear from us now and then than check back on your own.", - "encouragement": "One click unsubscribes you later, no questions asked.", - "form_description": "Just your email, or your name too if you'd like.", - "form_title": "Stay in the loop", - "heading": "Hear from us now and then", - "hints": { - "email": "you@example.com", - "name": "Your name" - }, - "icon": "mail", - "labels": { - "email": "Email", - "name": "Name" - }, - "road_description": "You're on the list. We write when there's something worth saying, and you can leave the list whenever you like.", - "road_icon": "bell", - "road_title": "What happens next", - "who_description": "An owner sends these notes directly — write to bl@uhhm.no if you'd rather ask something first.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "How do you want to be part of this?" - }, - "questions/owners/index.yaml": { - "buckets": { - "applicants": { - "description": "People who've asked to build with us, waiting on a decision or already working alongside us.", - "heading": "People who want to build with us", - "moves": { - "active->declined": "End collaboration", - "active->departed": "Mark departed", - "invited->active": "Confirm active", - "invited->declined": "Withdraw invite", - "open->declined": "Decline applicant", - "open->invited": "Send invite" - } - }, - "custody_requests": { - "description": "Questions and issues raised with the people who keep the first node - custodians handle these, but you can see where each one stands.", - "heading": "What's been raised with custodians", - "moves": {} - }, - "development_proposals": { - "description": "Changes visitors have proposed for pages on this site, waiting on a yes or no.", - "heading": "Proposed changes to the site", - "moves": { - "open->approved": "Approve change", - "open->rejected": "Reject change" - } - }, - "organizations": { - "description": "Organizations you've met, tracked from first contact through to client and beyond.", - "heading": "Organizations you're tracking", - "moves": { - "client->past_client": "Mark past client", - "prospect->client": "Mark as client", - "prospect->past_client": "Mark not pursued" - } - }, - "projects": { - "description": "Briefs sent in by organizations with a problem they want solved.", - "heading": "Briefs waiting on a reply", - "moves": { - "open->accepted": "Accept brief", - "open->declined": "Decline brief" - } - }, - "subscribers": { - "description": "People who want to hear from you now and then.", - "heading": "Who's hearing from you", - "moves": { - "open->unsubscribed": "Unsubscribe them" - } - }, - "trials": { - "description": "Businesses who want to see their own workflow as a working site before committing to anything.", - "heading": "Trial sites in progress", - "moves": { - "approved->declined": "Decline trial", - "approved->previewed": "Mark previewed", - "open->approved": "Approve trial", - "open->declined": "Decline trial" - } - } - }, - "confirm": "Confirm", - "description": "Everything waiting on you: briefs, trials, applicants, subscribers, and proposals, all in one place.", - "invited": { - "description": "People you've invited in, and whether they've taken it up yet.", - "done": "Taken up", - "heading": "Invites you've sent" - }, - "invites": { - "custodians": { - "button": "Send invite", - "description": "Bring someone in to help keep the first node and answer for the network.", - "form_title": "Invite a custodian", - "heading": "Bring in a custodian", - "labels": { - "email": "Their email", - "name": "Their name" - } - }, - "owners": { - "button": "Send invite", - "description": "Bring someone in to work this desk alongside you.", - "form_title": "Invite an owner", - "heading": "Bring in another owner", - "labels": { - "email": "Their email", - "name": "Their name" - } - } - }, - "links": { - "prospect": { - "button": "Add prospect", - "description": "Write down an organization worth following up, and track it from first contact onward.", - "heading": "Track a new organization" - } - }, - "question": "What's waiting on me today?" - }, - "questions/owners/prospect-sent.yaml": { - "back": "Back to site", - "description": "Thanks — we've got your prospect written down, and it now moves through the desk with everything else we're tracking.", - "next_description": "An owner walks it from prospect to client, and on to past client, as the relationship moves.", - "next_heading": "It's on the desk now", - "question": "What happens to this now?" - }, - "questions/owners/prospect.yaml": { - "button": "Add to prospects", - "description": "One line per organization worth watching, moved through the stages as things develop.", - "encouragement": "Takes a minute, and it's yours to update later.", - "form_description": "Name the organization and where things stand.", - "form_title": "New prospect", - "heading": "Keep an organization on your radar", - "hints": { - "contact": "met at the bakers' conference, [email protected]", - "name": "Nordvik Bakery", - "note": "wants a booking flow, follow up after harvest season" - }, - "icon": "briefcase", - "labels": { - "contact": "Contact", - "name": "Organization", - "note": "Note" - }, - "page_description": "Write down an organization worth following up, and move it through client and past client as things develop.", - "question": "Is there an organization I should be keeping track of?", - "road_description": "It sits as a prospect until something moves - then you mark it client, and later past client if the work ends.", - "road_icon": "route", - "road_title": "Moves as you update it", - "who_description": "Only you see this, so keep it wherever you check next.", - "who_icon": "user", - "who_title": "Just for you" - }, - "questions/received/collaborate.yaml": { - "back": "Back to site", - "description": "Your note is in. An owner reads every one and will get back to you if there's a fit worth exploring.", - "next_description": "If it looks like a fit, we'll reach out to talk about where you could help.", - "next_heading": "We'll write if there's a fit", - "question": "What happens to what I just sent?" - }, - "questions/received/commission.yaml": { - "back": "Back to home", - "description": "Your brief is in. An owner reads every commission end to end before replying.", - "next_description": "Expect a reply within a few working days, either way, straight to your inbox.", - "next_heading": "A real reply from someone who read it", - "question": "What happens now that we've sent our brief?" - }, - "questions/received/custody.yaml": { - "back": "Back to the site", - "description": "A custodian reads every message about the redoal network and what it keeps.", - "next_description": "Expect a reply once your report has been looked at and the network checked.", - "next_heading": "A custodian is on it", - "question": "Who looks after what the network keeps?" - }, - "questions/received/propose.yaml": { - "back": "Back home", - "description": "Your proposal is in. Someone here will read it and decide whether it fits before anything changes on the page.", - "next_description": "We'll write back once it's been read — approved and made live, or turned down with a reason.", - "next_heading": "A read, then a decision", - "question": "What happens to my proposal now?" - }, - "questions/received/subscribe.yaml": { - "back": "Back to site", - "description": "You'll hear from us when there's something worth saying, not on a schedule.", - "next_description": "You're on the list. Every note has an unsubscribe link if it stops being useful.", - "next_heading": "You're on the list", - "question": "What happens now that I've subscribed?" - }, - "questions/received/trial.yaml": { - "back": "Back to site", - "description": "We read every trial request ourselves before anything gets built.", - "next_description": "If it looks like a fit, we'll draft your site from your own words and send it back for your say before anything goes live.", - "next_heading": "A first draft, built from your own words", - "question": "What happens now that you've sent this?" - } -} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/words-r4.json b/vendor/trainer/runs/uhhm-2026-09-23/words-r4.json deleted file mode 100644 index 863e568..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/words-r4.json +++ /dev/null @@ -1,430 +0,0 @@ -{ - "questions/custodians/index.yaml": { - "buckets": { - "custody_requests": { - "description": "Cases from people who use, build on, or answer for something the redoal network touches, and need a custodian's word on it.", - "heading": "Custody cases waiting on you", - "moves": { - "in_dialogue->declined": "Close, no action", - "in_dialogue->resolved": "Mark resolved", - "open->declined": "Decline case", - "open->in_dialogue": "Open dialogue" - } - } - }, - "confirm": "Confirm", - "description": "The desk for custodians: open custody cases, and the people invited to answer them.", - "invited": { - "description": "Custodians invited but not yet signed in.", - "done": "Signed in", - "heading": "Invited custodians" - }, - "invites": { - "custodians": { - "button": "Invite custodian", - "description": "Give someone an account and a one-time link to join as a custodian.", - "form_title": "Invite a custodian", - "heading": "Bring in another custodian", - "labels": { - "email": "Email", - "name": "Name" - } - } - }, - "links": {}, - "question": "What is waiting on the custodians?" - }, - "questions/decide/subscribe.yaml": { - "description": "You're on our list. Change your mind whenever you like.", - "moves": { - "unsubscribed": { - "button": "Unsubscribe", - "description": "You'll stop hearing from us. Nothing else changes.", - "heading": "Stop getting notes from us" - } - }, - "question": "Do you want to keep hearing from us?" - }, - "questions/index.yaml": { - "description": "UHHM builds software for organisations that can say what problem they have, and keeps the redoal network underneath.", - "needs": { - "commission": { - "button": "Send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.", - "encouragement": "Someone here reads every brief in full before writing back.", - "form_description": "The more of the problem you put in, the better the reply.", - "form_title": "Tell us the problem", - "heading": "Have us build it: send the brief", - "hints": { - "email": "sara@company.com", - "name": "Sara Nilsen", - "org_contact": "Sara Nilsen, ops manager", - "organization": "Nilsen Transport AS", - "project": "Our drivers log hours on paper and it takes a day to get them into payroll." - }, - "icon": "briefcase", - "labels": { - "email": "Your email", - "name": "Your name", - "org_contact": "Who we should talk to", - "organization": "Your organization", - "project": "The problem you want solved" - }, - "road_description": "We read your brief and either take it on or tell you honestly if it's not a fit.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads it; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "trial": { - "button": "Start the draft", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.", - "encouragement": "A person looks at what you send before anything gets built.", - "form_description": "Answer in your own words - there's no wrong way to describe your business.", - "form_title": "Describe your business", - "heading": "See your own business as a site, before you buy anything", - "hints": { - "business": "Nilsen Transport AS", - "email": "sara@company.com", - "what_slows_us_down": "Approvals sit in someone's inbox for days before anyone acts on them.", - "what_we_do": "We move freight for local businesses and handle the paperwork for them.", - "what_we_keep_track_of": "Bookings, driver hours, and which loads are still waiting on a signature.", - "who_comes_to_us": "Local businesses that need something moved on short notice.", - "who_is_involved": "Drivers, dispatchers, and the customers waiting on their delivery." - }, - "icon": "layers", - "labels": { - "business": "Your business", - "email": "Your email", - "what_slows_us_down": "What slows you down", - "what_we_do": "What you do", - "what_we_keep_track_of": "What you keep track of", - "who_comes_to_us": "Who comes to you", - "who_is_involved": "Who's involved" - }, - "road_description": "We look at what you sent and, if it's a fit, build a draft from your own roles and words for you to see before anything moves further.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner looks at what you send; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "collaborate": { - "button": "Get in touch", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.", - "encouragement": "A person reads this, not a form filter — worth the ten minutes.", - "form_description": "Tell us who you are and what kind of work you're after.", - "form_title": "Say hello", - "heading": "Work with us", - "hints": { - "email": "you@example.com", - "interest": "Backend work, or something design-heavy", - "name": "Your name", - "note": "A bit about what you'd want to work on, or a link to your work" - }, - "icon": "handshake", - "labels": { - "email": "Email", - "interest": "What kind of work", - "name": "Name", - "note": "Tell us more" - }, - "road_description": "We read what you send and get back to you. If there's a fit, we invite you in and you start working with us — and if things ever change, that's fine too.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads this directly — for anything urgent, write to bl@uhhm.no.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "propose": { - "button": "Send change", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how.", - "encouragement": "Even a rough version helps — we can tidy the wording ourselves.", - "form_description": "Point us to the page and show us the change.", - "form_title": "Propose a change", - "heading": "Suggest a change to this website", - "hints": { - "email": "you@example.com", - "page": "questions/join/index.yaml", - "proposed_yaml": "heading: \"A clearer way to say this\"", - "rationale": "The current heading doesn't say what you actually get", - "submitted_by": "Your name" - }, - "icon": "pencil", - "labels": { - "email": "Email", - "page": "Which page", - "proposed_yaml": "Your proposed text", - "rationale": "Why this is better", - "submitted_by": "Your name" - }, - "road_description": "Someone here reads your proposal and either makes the change or explains why not. Either way, you'll hear back.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner reads every proposal before anything changes — reach us at bl@uhhm.no if it's time-sensitive.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "subscribe": { - "button": "Sign up", - "description": "You'd rather hear from us now and then than check back on your own.", - "encouragement": "One click unsubscribes you later, no questions asked.", - "form_description": "Just your email, or your name too if you'd like.", - "form_title": "Stay in the loop", - "heading": "Hear from us now and then", - "hints": { - "email": "you@example.com", - "name": "Your name" - }, - "icon": "mail", - "labels": { - "email": "Email", - "name": "Name" - }, - "road_description": "You're on the list. We write when there's something worth saying, and you can leave the list whenever you like.", - "road_icon": "bell", - "road_title": "What happens next", - "who_description": "An owner sends these notes directly — write to bl@uhhm.no if you'd rather ask something first.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "custody": { - "button": "Send to a custodian", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at.", - "encouragement": "A custodian reads every message that comes in here.", - "form_description": "Say which of the four it is, and what you need, in a few lines.", - "form_title": "Reach a custodian", - "heading": "You are on the redoal network: a node, an app, or a recording that concerns you", - "hints": { - "about": "We run our order system on a relay node and it's been dropping messages since Tuesday", - "email": "you@yourcompany.com", - "name": "Your name", - "what": "A relay node is misbehaving" - }, - "icon": "shield", - "labels": { - "about": "What's going on", - "email": "Email", - "name": "Name", - "what": "In short" - }, - "road_description": "A custodian opens a dialogue with you. A node gets its peer, a builder gets an answer, and something the network should not keep gets removed. Either way you hear what was decided.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A custodian reads it directly; if it's urgent, write to bl@uhhm.no in the meantime.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "What is UHHM, and what can you get here?", - "opener": { - "heading": "What UHHM does", - "description": "Two things, both built here and both running.", - "features": { - "software": { - "heading": "Software built around a clear argument", - "description": "Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything.", - "icon": "layers" - }, - "redoal": { - "heading": "The redoal network, built and carried here", - "description": "The gesture math, the relay, the first node, and the portal this page runs on. UHHM answers for what that network keeps.", - "icon": "waypoints" - } - } - }, - "shopping": { - "heading": "Have a look around first", - "description": "Nothing to fill in here. What is already out in the world, and the network as it runs right now.", - "items": { - "built": { - "heading": "What we have built", - "description": "A few things already out in the world.", - "icon": "hammer" - }, - "voices": { - "heading": "The redoal network, live", - "description": "Straight from the relay, the first node of the network.", - "icon": "activity" - } - } - } - }, - "questions/owners/index.yaml": { - "buckets": { - "applicants": { - "description": "People who've asked to build with us, waiting on a decision or already working alongside us.", - "heading": "People who want to build with us", - "moves": { - "active->declined": "End collaboration", - "active->departed": "Mark departed", - "invited->active": "Confirm active", - "invited->declined": "Withdraw invite", - "open->declined": "Decline applicant", - "open->invited": "Send invite" - } - }, - "custody_requests": { - "description": "Questions and issues raised with the people who keep the first node - custodians handle these, but you can see where each one stands.", - "heading": "What's been raised with custodians", - "moves": {} - }, - "development_proposals": { - "description": "Changes visitors have proposed for pages on this site, waiting on a yes or no.", - "heading": "Proposed changes to the site", - "moves": { - "open->approved": "Approve change", - "open->rejected": "Reject change" - } - }, - "organizations": { - "description": "Organizations you've met, tracked from first contact through to client and beyond.", - "heading": "Organizations you're tracking", - "moves": { - "client->past_client": "Mark past client", - "prospect->client": "Mark as client", - "prospect->past_client": "Mark not pursued" - } - }, - "projects": { - "description": "Briefs sent in by organizations with a problem they want solved.", - "heading": "Briefs waiting on a reply", - "moves": { - "open->accepted": "Accept brief", - "open->declined": "Decline brief" - } - }, - "subscribers": { - "description": "People who want to hear from you now and then.", - "heading": "Who's hearing from you", - "moves": { - "open->unsubscribed": "Unsubscribe them" - } - }, - "trials": { - "description": "Businesses who want to see their own workflow as a working site before committing to anything.", - "heading": "Trial sites in progress", - "moves": { - "approved->declined": "Decline trial", - "approved->previewed": "Mark previewed", - "open->approved": "Approve trial", - "open->declined": "Decline trial" - } - } - }, - "confirm": "Confirm", - "description": "Everything waiting on you: briefs, trials, applicants, subscribers, and proposals, all in one place.", - "invited": { - "description": "People you've invited in, and whether they've taken it up yet.", - "done": "Taken up", - "heading": "Invites you've sent" - }, - "invites": { - "custodians": { - "button": "Send invite", - "description": "Bring someone in to help keep the first node and answer for the network.", - "form_title": "Invite a custodian", - "heading": "Bring in a custodian", - "labels": { - "email": "Their email", - "name": "Their name" - } - }, - "owners": { - "button": "Send invite", - "description": "Bring someone in to work this desk alongside you.", - "form_title": "Invite an owner", - "heading": "Bring in another owner", - "labels": { - "email": "Their email", - "name": "Their name" - } - } - }, - "links": { - "prospect": { - "button": "Add prospect", - "description": "Write down an organization worth following up, and track it from first contact onward.", - "heading": "Track a new organization" - } - }, - "question": "What's waiting on me today?" - }, - "questions/owners/prospect-sent.yaml": { - "back": "Back to site", - "description": "Thanks — we've got your prospect written down, and it now moves through the desk with everything else we're tracking.", - "next_description": "An owner walks it from prospect to client, and on to past client, as the relationship moves.", - "next_heading": "It's on the desk now", - "question": "What happens to this now?" - }, - "questions/owners/prospect.yaml": { - "button": "Add to prospects", - "description": "One line per organization worth watching, moved through the stages as things develop.", - "encouragement": "Takes a minute, and it's yours to update later.", - "form_description": "Name the organization and where things stand.", - "form_title": "New prospect", - "heading": "Keep an organization on your radar", - "hints": { - "contact": "met at the bakers' conference, [email protected]", - "name": "Nordvik Bakery", - "note": "wants a booking flow, follow up after harvest season" - }, - "icon": "briefcase", - "labels": { - "contact": "Contact", - "name": "Organization", - "note": "Note" - }, - "page_description": "Write down an organization worth following up, and move it through client and past client as things develop.", - "question": "Is there an organization I should be keeping track of?", - "road_description": "It sits as a prospect until something moves - then you mark it client, and later past client if the work ends.", - "road_icon": "route", - "road_title": "Moves as you update it", - "who_description": "Only you see this, so keep it wherever you check next.", - "who_icon": "user", - "who_title": "Just for you" - }, - "questions/received/collaborate.yaml": { - "back": "Back to site", - "description": "Your note is in. An owner reads every one and will get back to you if there's a fit worth exploring.", - "next_description": "If it looks like a fit, we'll reach out to talk about where you could help.", - "next_heading": "We'll write if there's a fit", - "question": "What happens to what I just sent?" - }, - "questions/received/commission.yaml": { - "back": "Back to home", - "description": "Your brief is in. An owner reads every commission end to end before replying.", - "next_description": "Expect a reply within a few working days, either way, straight to your inbox.", - "next_heading": "A real reply from someone who read it", - "question": "What happens now that we've sent our brief?" - }, - "questions/received/custody.yaml": { - "back": "Back to the site", - "description": "A custodian reads every message about the redoal network and what it keeps.", - "next_description": "Expect a reply once your report has been looked at and the network checked.", - "next_heading": "A custodian is on it", - "question": "Who looks after what the network keeps?" - }, - "questions/received/propose.yaml": { - "back": "Back home", - "description": "Your proposal is in. Someone here will read it and decide whether it fits before anything changes on the page.", - "next_description": "We'll write back once it's been read — approved and made live, or turned down with a reason.", - "next_heading": "A read, then a decision", - "question": "What happens to my proposal now?" - }, - "questions/received/subscribe.yaml": { - "back": "Back to site", - "description": "You'll hear from us when there's something worth saying, not on a schedule.", - "next_description": "You're on the list. Every note has an unsubscribe link if it stops being useful.", - "next_heading": "You're on the list", - "question": "What happens now that I've subscribed?" - }, - "questions/received/trial.yaml": { - "back": "Back to site", - "description": "We read every trial request ourselves before anything gets built.", - "next_description": "If it looks like a fit, we'll draft your site from your own words and send it back for your say before anything goes live.", - "next_heading": "A first draft, built from your own words", - "question": "What happens now that you've sent this?" - } -} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/words-r5.json b/vendor/trainer/runs/uhhm-2026-09-23/words-r5.json deleted file mode 100644 index 806ee9f..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/words-r5.json +++ /dev/null @@ -1,430 +0,0 @@ -{ - "questions/custodians/index.yaml": { - "buckets": { - "custody_requests": { - "description": "Cases from people who use, build on, or answer for something the redoal network touches, and need a custodian's word on it.", - "heading": "Custody cases waiting on you", - "moves": { - "in_dialogue->declined": "Close, no action", - "in_dialogue->resolved": "Mark resolved", - "open->declined": "Decline case", - "open->in_dialogue": "Open dialogue" - } - } - }, - "confirm": "Confirm", - "description": "The desk for custodians: open custody cases, and the people invited to answer them.", - "invited": { - "description": "Custodians invited but not yet signed in.", - "done": "Signed in", - "heading": "Invited custodians" - }, - "invites": { - "custodians": { - "button": "Invite custodian", - "description": "Give someone an account and a one-time link to join as a custodian.", - "form_title": "Invite a custodian", - "heading": "Bring in another custodian", - "labels": { - "email": "Email", - "name": "Name" - } - } - }, - "links": {}, - "question": "What is waiting on the custodians?" - }, - "questions/decide/subscribe.yaml": { - "description": "You're on our list. Change your mind whenever you like.", - "moves": { - "unsubscribed": { - "button": "Unsubscribe", - "description": "You'll stop hearing from us. Nothing else changes.", - "heading": "Stop getting notes from us" - } - }, - "question": "Do you want to keep hearing from us?" - }, - "questions/index.yaml": { - "description": "UHHM builds software for organisations that can say what problem they have, and keeps the redoal network underneath.", - "needs": { - "commission": { - "button": "Send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.", - "encouragement": "Someone here reads every brief in full before writing back.", - "form_description": "The more of the problem you put in, the better the reply.", - "form_title": "Tell us the problem", - "heading": "Have us build it: send the brief", - "hints": { - "email": "sara@company.com", - "name": "Sara Nilsen", - "org_contact": "Sara Nilsen, ops manager", - "organization": "Nilsen Transport AS", - "project": "Our drivers log hours on paper and it takes a day to get them into payroll." - }, - "icon": "briefcase", - "labels": { - "email": "Your email", - "name": "Your name", - "org_contact": "Who we should talk to", - "organization": "Your organization", - "project": "The problem you want solved" - }, - "road_description": "We read your brief and either take it on or tell you honestly if it's not a fit.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads it; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "trial": { - "button": "Start the draft", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.", - "encouragement": "A person looks at what you send before anything gets built.", - "form_description": "Answer in your own words - there's no wrong way to describe your business.", - "form_title": "Describe your business", - "heading": "See your own business as a site, before you buy anything", - "hints": { - "business": "Nilsen Transport AS", - "email": "sara@company.com", - "what_slows_us_down": "Approvals sit in someone's inbox for days before anyone acts on them.", - "what_we_do": "We move freight for local businesses and handle the paperwork for them.", - "what_we_keep_track_of": "Bookings, driver hours, and which loads are still waiting on a signature.", - "who_comes_to_us": "Local businesses that need something moved on short notice.", - "who_is_involved": "Drivers, dispatchers, and the customers waiting on their delivery." - }, - "icon": "layers", - "labels": { - "business": "Your business", - "email": "Your email", - "what_slows_us_down": "What slows you down", - "what_we_do": "What you do", - "what_we_keep_track_of": "What you keep track of", - "who_comes_to_us": "Who comes to you", - "who_is_involved": "Who's involved" - }, - "road_description": "We look at what you sent and, if it's a fit, build a draft from your own roles and words for you to see before anything moves further.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner looks at what you send; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "collaborate": { - "button": "Get in touch", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.", - "encouragement": "A person reads this, not a form filter — worth the ten minutes.", - "form_description": "Tell us who you are and what kind of work you're after.", - "form_title": "Say hello", - "heading": "Work with us", - "hints": { - "email": "you@example.com", - "interest": "Backend work, or something design-heavy", - "name": "Your name", - "note": "A bit about what you'd want to work on, or a link to your work" - }, - "icon": "handshake", - "labels": { - "email": "Email", - "interest": "What kind of work", - "name": "Name", - "note": "Tell us more" - }, - "road_description": "We read what you send and get back to you. If there's a fit, we invite you in and you start working with us — and if things ever change, that's fine too.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads this directly — for anything urgent, write to bl@uhhm.no.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "propose": { - "button": "Send change", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how.", - "encouragement": "Even a rough version helps — we can tidy the wording ourselves.", - "form_description": "Point us to the page and show us the change.", - "form_title": "Propose a change", - "heading": "Suggest a change to this website", - "hints": { - "email": "you@example.com", - "page": "questions/join/index.yaml", - "proposed_yaml": "heading: \"A clearer way to say this\"", - "rationale": "The current heading doesn't say what you actually get", - "submitted_by": "Your name" - }, - "icon": "pencil", - "labels": { - "email": "Email", - "page": "Which page", - "proposed_yaml": "Your proposed text", - "rationale": "Why this is better", - "submitted_by": "Your name" - }, - "road_description": "Someone here reads your proposal and either makes the change or explains why not. Either way, you'll hear back.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner reads every proposal before anything changes — reach us at bl@uhhm.no if it's time-sensitive.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "subscribe": { - "button": "Sign up", - "description": "You'd rather hear from us now and then than check back on your own.", - "encouragement": "One click unsubscribes you later, no questions asked.", - "form_description": "Just your email, or your name too if you'd like.", - "form_title": "Stay in the loop", - "heading": "Hear from us now and then", - "hints": { - "email": "you@example.com", - "name": "Your name" - }, - "icon": "mail", - "labels": { - "email": "Email", - "name": "Name" - }, - "road_description": "You're on the list. We write when there's something worth saying, and you can leave the list whenever you like.", - "road_icon": "bell", - "road_title": "What happens next", - "who_description": "An owner sends these notes directly — write to bl@uhhm.no if you'd rather ask something first.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "custody": { - "button": "Send to a custodian", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at.", - "encouragement": "A custodian reads every message that comes in here.", - "form_description": "Say which of the four it is, and what you need, in a few lines.", - "form_title": "Reach a custodian", - "heading": "You are on the redoal network: a node, an app, or a recording that concerns you", - "hints": { - "about": "We run our order system on a relay node and it's been dropping messages since Tuesday", - "email": "you@yourcompany.com", - "name": "Your name", - "what": "A relay node is misbehaving" - }, - "icon": "shield", - "labels": { - "about": "What's going on", - "email": "Email", - "name": "Name", - "what": "In short" - }, - "road_description": "A custodian opens a dialogue with you. A node gets its peer, a builder gets an answer, and something the network should not keep gets removed. Either way you hear what was decided.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A custodian reads it directly; if it's urgent, write to bl@uhhm.no in the meantime.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "question": "What is UHHM, and what can you get here?", - "opener": { - "heading": "What UHHM does", - "description": "Two things, both built here and both running.", - "features": { - "software": { - "heading": "A considered reply to your brief, and software that fits the argument", - "description": "Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.", - "icon": "layers" - }, - "redoal": { - "heading": "A network that answers to you", - "description": "UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved.", - "icon": "waypoints" - } - } - }, - "shopping": { - "heading": "Have a look around first", - "description": "Nothing to fill in here. What is already out in the world, and the network as it runs right now.", - "items": { - "built": { - "heading": "What we have built", - "description": "A few things already out in the world.", - "icon": "hammer" - }, - "voices": { - "heading": "The redoal network, live", - "description": "Straight from the relay, the first node of the network.", - "icon": "activity" - } - } - } - }, - "questions/owners/index.yaml": { - "buckets": { - "applicants": { - "description": "People who've asked to build with us, waiting on a decision or already working alongside us.", - "heading": "People who want to build with us", - "moves": { - "active->declined": "End collaboration", - "active->departed": "Mark departed", - "invited->active": "Confirm active", - "invited->declined": "Withdraw invite", - "open->declined": "Decline applicant", - "open->invited": "Send invite" - } - }, - "custody_requests": { - "description": "Questions and issues raised with the people who keep the first node - custodians handle these, but you can see where each one stands.", - "heading": "What's been raised with custodians", - "moves": {} - }, - "development_proposals": { - "description": "Changes visitors have proposed for pages on this site, waiting on a yes or no.", - "heading": "Proposed changes to the site", - "moves": { - "open->approved": "Approve change", - "open->rejected": "Reject change" - } - }, - "organizations": { - "description": "Organizations you've met, tracked from first contact through to client and beyond.", - "heading": "Organizations you're tracking", - "moves": { - "client->past_client": "Mark past client", - "prospect->client": "Mark as client", - "prospect->past_client": "Mark not pursued" - } - }, - "projects": { - "description": "Briefs sent in by organizations with a problem they want solved.", - "heading": "Briefs waiting on a reply", - "moves": { - "open->accepted": "Accept brief", - "open->declined": "Decline brief" - } - }, - "subscribers": { - "description": "People who want to hear from you now and then.", - "heading": "Who's hearing from you", - "moves": { - "open->unsubscribed": "Unsubscribe them" - } - }, - "trials": { - "description": "Businesses who want to see their own workflow as a working site before committing to anything.", - "heading": "Trial sites in progress", - "moves": { - "approved->declined": "Decline trial", - "approved->previewed": "Mark previewed", - "open->approved": "Approve trial", - "open->declined": "Decline trial" - } - } - }, - "confirm": "Confirm", - "description": "Everything waiting on you: briefs, trials, applicants, subscribers, and proposals, all in one place.", - "invited": { - "description": "People you've invited in, and whether they've taken it up yet.", - "done": "Taken up", - "heading": "Invites you've sent" - }, - "invites": { - "custodians": { - "button": "Send invite", - "description": "Bring someone in to help keep the first node and answer for the network.", - "form_title": "Invite a custodian", - "heading": "Bring in a custodian", - "labels": { - "email": "Their email", - "name": "Their name" - } - }, - "owners": { - "button": "Send invite", - "description": "Bring someone in to work this desk alongside you.", - "form_title": "Invite an owner", - "heading": "Bring in another owner", - "labels": { - "email": "Their email", - "name": "Their name" - } - } - }, - "links": { - "prospect": { - "button": "Add prospect", - "description": "Write down an organization worth following up, and track it from first contact onward.", - "heading": "Track a new organization" - } - }, - "question": "What's waiting on me today?" - }, - "questions/owners/prospect-sent.yaml": { - "back": "Back to site", - "description": "Thanks — we've got your prospect written down, and it now moves through the desk with everything else we're tracking.", - "next_description": "An owner walks it from prospect to client, and on to past client, as the relationship moves.", - "next_heading": "It's on the desk now", - "question": "What happens to this now?" - }, - "questions/owners/prospect.yaml": { - "button": "Add to prospects", - "description": "One line per organization worth watching, moved through the stages as things develop.", - "encouragement": "Takes a minute, and it's yours to update later.", - "form_description": "Name the organization and where things stand.", - "form_title": "New prospect", - "heading": "Keep an organization on your radar", - "hints": { - "contact": "met at the bakers' conference, [email protected]", - "name": "Nordvik Bakery", - "note": "wants a booking flow, follow up after harvest season" - }, - "icon": "briefcase", - "labels": { - "contact": "Contact", - "name": "Organization", - "note": "Note" - }, - "page_description": "Write down an organization worth following up, and move it through client and past client as things develop.", - "question": "Is there an organization I should be keeping track of?", - "road_description": "It sits as a prospect until something moves - then you mark it client, and later past client if the work ends.", - "road_icon": "route", - "road_title": "Moves as you update it", - "who_description": "Only you see this, so keep it wherever you check next.", - "who_icon": "user", - "who_title": "Just for you" - }, - "questions/received/collaborate.yaml": { - "back": "Back to site", - "description": "Your note is in. An owner reads every one and will get back to you if there's a fit worth exploring.", - "next_description": "If it looks like a fit, we'll reach out to talk about where you could help.", - "next_heading": "We'll write if there's a fit", - "question": "What happens to what I just sent?" - }, - "questions/received/commission.yaml": { - "back": "Back to home", - "description": "Your brief is in. An owner reads every commission end to end before replying.", - "next_description": "Expect a reply within a few working days, either way, straight to your inbox.", - "next_heading": "A real reply from someone who read it", - "question": "What happens now that we've sent our brief?" - }, - "questions/received/custody.yaml": { - "back": "Back to the site", - "description": "A custodian reads every message about the redoal network and what it keeps.", - "next_description": "Expect a reply once your report has been looked at and the network checked.", - "next_heading": "A custodian is on it", - "question": "Who looks after what the network keeps?" - }, - "questions/received/propose.yaml": { - "back": "Back home", - "description": "Your proposal is in. Someone here will read it and decide whether it fits before anything changes on the page.", - "next_description": "We'll write back once it's been read — approved and made live, or turned down with a reason.", - "next_heading": "A read, then a decision", - "question": "What happens to my proposal now?" - }, - "questions/received/subscribe.yaml": { - "back": "Back to site", - "description": "You'll hear from us when there's something worth saying, not on a schedule.", - "next_description": "You're on the list. Every note has an unsubscribe link if it stops being useful.", - "next_heading": "You're on the list", - "question": "What happens now that I've subscribed?" - }, - "questions/received/trial.yaml": { - "back": "Back to site", - "description": "We read every trial request ourselves before anything gets built.", - "next_description": "If it looks like a fit, we'll draft your site from your own words and send it back for your say before anything goes live.", - "next_heading": "A first draft, built from your own words", - "question": "What happens now that you've sent this?" - } -} diff --git a/vendor/trainer/runs/uhhm-2026-09-23/words-r7.json b/vendor/trainer/runs/uhhm-2026-09-23/words-r7.json deleted file mode 100644 index 3a53bd4..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/words-r7.json +++ /dev/null @@ -1,501 +0,0 @@ -{ - "aggregates.yaml": { - "custody_requests": { - "declined": { - "body": "We've read your message and decided this isn't something we can take on as custodians. If you think we've missed something, write back and tell us.", - "subject": "On your message to the custodians" - }, - "open": { - "body": "Your message reached the custodians of the first node. We read everything that comes in - expect a real reply, not an autoresponder.", - "subject": "We have your message" - }, - "resolved": { - "body": "This is resolved. Here's what we found and what we did about it - write back if it isn't settled from where you sit.", - "subject": "Your case is resolved" - } - }, - "projects": { - "accepted": { - "body": "We want to take this on. Next we'll be in touch to talk through scope, timing and how we'll work together.", - "subject": "We'd like to take this on" - }, - "declined": { - "body": "We've read your brief and this isn't one we're taking on. It isn't a judgment on the problem - just not a fit for us right now.", - "subject": "On your brief" - }, - "open": { - "body": "Your brief is in front of us. We read the whole thing before we reply, so it may take a few days - you'll hear from us either way.\n\nWhat you can do next: {site}/decide/commission?chain={chain}&email={email}", - "subject": "We have your brief" - } - }, - "trials": { - "approved": { - "body": "Your draft is approved and on its way. We built it from your own words - have a look when it's ready and tell us what to change.", - "subject": "Your draft is approved" - }, - "declined": { - "body": "We've decided not to build this draft. If the situation changes, get back in touch and we'll take another look.", - "subject": "On your draft" - }, - "open": { - "body": "We have what you sent. A person will read it and build your draft, or tell you why not - you'll hear from us either way.", - "subject": "We're looking at your draft" - }, - "previewed": { - "body": "Your draft is ready to look at. It's built from your own words - the link below takes you straight to it.", - "subject": "Your draft is ready to view" - } - } - }, - "questions/custodians/index.yaml": { - "buckets": { - "custody_requests": { - "description": "Cases from people who use, build on, or answer for something the redoal network touches, and need a custodian's word on it.", - "heading": "Custody cases waiting on you", - "moves": { - "in_dialogue->declined": "Close, no action", - "in_dialogue->resolved": "Mark resolved", - "open->declined": "Decline case", - "open->in_dialogue": "Open dialogue" - } - } - }, - "confirm": "Confirm", - "description": "The desk for custodians: open custody cases, and the people invited to answer them.", - "invited": { - "description": "Custodians invited but not yet signed in.", - "done": "Signed in", - "heading": "Invited custodians" - }, - "invites": { - "custodians": { - "button": "Invite custodian", - "description": "Give someone an account and a one-time link to join as a custodian.", - "form_title": "Invite a custodian", - "heading": "Bring in another custodian", - "labels": { - "email": "Email", - "name": "Name" - } - } - }, - "links": {}, - "question": "What is waiting on the custodians?" - }, - "questions/decide/commission.yaml": { - "description": "", - "moves": { - "declined": { - "button": "Declined", - "description": "", - "heading": "Declined" - } - }, - "question": "What would you like to do?" - }, - "questions/decide/custody.yaml": { - "description": "", - "moves": { - "resolved": { - "button": "Resolved", - "description": "", - "heading": "Resolved" - } - }, - "question": "What would you like to do?" - }, - "questions/decide/subscribe.yaml": { - "description": "You're on our list. Change your mind whenever you like.", - "moves": { - "unsubscribed": { - "button": "Unsubscribe", - "description": "You'll stop hearing from us. Nothing else changes.", - "heading": "Stop getting notes from us" - } - }, - "question": "Do you want to keep hearing from us?" - }, - "questions/index.yaml": { - "description": "UHHM builds software for organisations that can say what problem they have, and keeps the redoal network underneath.", - "doors": {}, - "needs": { - "collaborate": { - "button": "Get in touch", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.", - "encouragement": "A person reads this, not a form filter — worth the ten minutes.", - "form_description": "Tell us who you are and what kind of work you're after.", - "form_title": "Say hello", - "heading": "Work with us", - "hints": { - "email": "you@example.com", - "interest": "Backend work, or something design-heavy", - "name": "Your name", - "note": "A bit about what you'd want to work on, or a link to your work" - }, - "icon": "handshake", - "labels": { - "email": "Email", - "interest": "What kind of work", - "name": "Name", - "note": "Tell us more" - }, - "road_description": "We read what you send and get back to you. If there's a fit, we invite you in and you start working with us — and if things ever change, that's fine too.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads this directly — for anything urgent, write to bl@uhhm.no.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "commission": { - "button": "Send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.", - "encouragement": "Someone here reads every brief in full before writing back.", - "form_description": "The more of the problem you put in, the better the reply.", - "form_title": "Tell us the problem", - "heading": "Have us build it: send the brief", - "hints": { - "email": "sara@company.com", - "name": "Sara Nilsen", - "org_contact": "Sara Nilsen, ops manager", - "organization": "Nilsen Transport AS", - "project": "Our drivers log hours on paper and it takes a day to get them into payroll." - }, - "icon": "briefcase", - "labels": { - "email": "Your email", - "name": "Your name", - "org_contact": "Who we should talk to", - "organization": "Your organization", - "project": "The problem you want solved" - }, - "road_description": "We read your brief and either take it on or tell you honestly if it's not a fit.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads it; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "custody": { - "button": "Send to a custodian", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at.", - "encouragement": "A custodian reads every message that comes in here.", - "form_description": "Say which of the four it is, and what you need, in a few lines.", - "form_title": "Reach a custodian", - "heading": "You are on the redoal network: a node, an app, or a recording that concerns you", - "hints": { - "about": "We run our order system on a relay node and it's been dropping messages since Tuesday", - "email": "you@yourcompany.com", - "name": "Your name", - "what": "A relay node is misbehaving" - }, - "icon": "shield", - "labels": { - "about": "What's going on", - "email": "Email", - "name": "Name", - "what": "In short" - }, - "road_description": "A custodian opens a dialogue with you. A node gets its peer, a builder gets an answer, and something the network should not keep gets removed. Either way you hear what was decided.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A custodian reads it directly; if it's urgent, write to bl@uhhm.no in the meantime.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "propose": { - "button": "Send change", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how.", - "encouragement": "Even a rough version helps — we can tidy the wording ourselves.", - "form_description": "Point us to the page and show us the change.", - "form_title": "Propose a change", - "heading": "Suggest a change to this website", - "hints": { - "email": "you@example.com", - "page": "questions/join/index.yaml", - "proposed_yaml": "heading: \"A clearer way to say this\"", - "rationale": "The current heading doesn't say what you actually get", - "submitted_by": "Your name" - }, - "icon": "pencil", - "labels": { - "email": "Email", - "page": "Which page", - "proposed_yaml": "Your proposed text", - "rationale": "Why this is better", - "submitted_by": "Your name" - }, - "road_description": "Someone here reads your proposal and either makes the change or explains why not. Either way, you'll hear back.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner reads every proposal before anything changes — reach us at bl@uhhm.no if it's time-sensitive.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "subscribe": { - "button": "Sign up", - "description": "You'd rather hear from us now and then than check back on your own.", - "encouragement": "One click unsubscribes you later, no questions asked.", - "form_description": "Just your email, or your name too if you'd like.", - "form_title": "Stay in the loop", - "heading": "Hear from us now and then", - "hints": { - "email": "you@example.com", - "name": "Your name" - }, - "icon": "mail", - "labels": { - "email": "Email", - "name": "Name" - }, - "road_description": "You're on the list. We write when there's something worth saying, and you can leave the list whenever you like.", - "road_icon": "bell", - "road_title": "What happens next", - "who_description": "An owner sends these notes directly — write to bl@uhhm.no if you'd rather ask something first.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "trial": { - "button": "Start the draft", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.", - "encouragement": "A person looks at what you send before anything gets built.", - "form_description": "Answer in your own words - there's no wrong way to describe your business.", - "form_title": "Describe your business", - "heading": "See your own business as a site, before you buy anything", - "hints": { - "business": "Nilsen Transport AS", - "email": "sara@company.com", - "what_slows_us_down": "Approvals sit in someone's inbox for days before anyone acts on them.", - "what_we_do": "We move freight for local businesses and handle the paperwork for them.", - "what_we_keep_track_of": "Bookings, driver hours, and which loads are still waiting on a signature.", - "who_comes_to_us": "Local businesses that need something moved on short notice.", - "who_is_involved": "Drivers, dispatchers, and the customers waiting on their delivery." - }, - "icon": "layers", - "labels": { - "business": "Your business", - "email": "Your email", - "what_slows_us_down": "What slows you down", - "what_we_do": "What you do", - "what_we_keep_track_of": "What you keep track of", - "who_comes_to_us": "Who comes to you", - "who_is_involved": "Who's involved" - }, - "road_description": "We look at what you sent and, if it's a fit, build a draft from your own roles and words for you to see before anything moves further.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner looks at what you send; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "opener": { - "description": "Two things, both built here and both running.", - "features": { - "redoal": { - "description": "UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved.", - "heading": "A network that answers to you", - "icon": "waypoints" - }, - "software": { - "description": "Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.", - "heading": "A considered reply to your brief, and software that fits the argument", - "icon": "layers" - } - }, - "heading": "What UHHM does" - }, - "question": "What is UHHM, and what can you get here?", - "shopping": { - "description": "Nothing to fill in here. What is already out in the world, and the network as it runs right now.", - "heading": "Have a look around first", - "items": { - "built": { - "description": "A few things already out in the world.", - "heading": "What we have built", - "icon": "hammer" - }, - "voices": { - "description": "Straight from the relay, the first node of the network.", - "heading": "The redoal network, live", - "icon": "activity" - } - } - } - }, - "questions/owners/index.yaml": { - "buckets": { - "applicants": { - "description": "People who've asked to build with us, waiting on a decision or already working alongside us.", - "heading": "People who want to build with us", - "moves": { - "active->declined": "End collaboration", - "active->departed": "Mark departed", - "invited->active": "Confirm active", - "invited->declined": "Withdraw invite", - "open->declined": "Decline applicant", - "open->invited": "Send invite" - } - }, - "custody_requests": { - "description": "Questions and issues raised with the people who keep the first node - custodians handle these, but you can see where each one stands.", - "heading": "What's been raised with custodians", - "moves": {} - }, - "development_proposals": { - "description": "Changes visitors have proposed for pages on this site, waiting on a yes or no.", - "heading": "Proposed changes to the site", - "moves": { - "open->approved": "Approve change", - "open->rejected": "Reject change" - } - }, - "organizations": { - "description": "Organizations you've met, tracked from first contact through to client and beyond.", - "heading": "Organizations you're tracking", - "moves": { - "client->past_client": "Mark past client", - "prospect->client": "Mark as client", - "prospect->past_client": "Mark not pursued" - } - }, - "projects": { - "description": "Briefs sent in by organizations with a problem they want solved.", - "heading": "Briefs waiting on a reply", - "moves": { - "open->accepted": "Accept brief", - "open->declined": "Decline brief" - } - }, - "subscribers": { - "description": "People who want to hear from you now and then.", - "heading": "Who's hearing from you", - "moves": { - "open->unsubscribed": "Unsubscribe them" - } - }, - "trials": { - "description": "Businesses who want to see their own workflow as a working site before committing to anything.", - "heading": "Trial sites in progress", - "moves": { - "approved->declined": "Decline trial", - "approved->previewed": "Mark previewed", - "open->approved": "Approve trial", - "open->declined": "Decline trial" - } - } - }, - "confirm": "Confirm", - "description": "Everything waiting on you: briefs, trials, applicants, subscribers, and proposals, all in one place.", - "invited": { - "description": "People you've invited in, and whether they've taken it up yet.", - "done": "Taken up", - "heading": "Invites you've sent" - }, - "invites": { - "custodians": { - "button": "Send invite", - "description": "Bring someone in to help keep the first node and answer for the network.", - "form_title": "Invite a custodian", - "heading": "Bring in a custodian", - "labels": { - "email": "Their email", - "name": "Their name" - } - }, - "owners": { - "button": "Send invite", - "description": "Bring someone in to work this desk alongside you.", - "form_title": "Invite an owner", - "heading": "Bring in another owner", - "labels": { - "email": "Their email", - "name": "Their name" - } - } - }, - "links": { - "prospect": { - "button": "Add prospect", - "description": "Write down an organization worth following up, and track it from first contact onward.", - "heading": "Track a new organization" - } - }, - "question": "What's waiting on me today?" - }, - "questions/owners/prospect-sent.yaml": { - "back": "Back to site", - "description": "Thanks — we've got your prospect written down, and it now moves through the desk with everything else we're tracking.", - "next_description": "An owner walks it from prospect to client, and on to past client, as the relationship moves.", - "next_heading": "It's on the desk now", - "question": "What happens to this now?" - }, - "questions/owners/prospect.yaml": { - "button": "Add to prospects", - "description": "One line per organization worth watching, moved through the stages as things develop.", - "encouragement": "Takes a minute, and it's yours to update later.", - "form_description": "Name the organization and where things stand.", - "form_title": "New prospect", - "heading": "Keep an organization on your radar", - "hints": { - "contact": "met at the bakers' conference, [email protected]", - "name": "Nordvik Bakery", - "note": "wants a booking flow, follow up after harvest season" - }, - "icon": "briefcase", - "labels": { - "contact": "Contact", - "name": "Organization", - "note": "Note" - }, - "page_description": "Write down an organization worth following up, and move it through client and past client as things develop.", - "question": "Is there an organization I should be keeping track of?", - "road_description": "It sits as a prospect until something moves - then you mark it client, and later past client if the work ends.", - "road_icon": "route", - "road_title": "Moves as you update it", - "who_description": "Only you see this, so keep it wherever you check next.", - "who_icon": "user", - "who_title": "Just for you" - }, - "questions/received/collaborate.yaml": { - "back": "Back to site", - "description": "Your note is in. An owner reads every one and will get back to you if there's a fit worth exploring.", - "next_description": "If it looks like a fit, we'll reach out to talk about where you could help.", - "next_heading": "We'll write if there's a fit", - "question": "What happens to what I just sent?" - }, - "questions/received/commission.yaml": { - "back": "Back to home", - "description": "Your brief is in. An owner reads every commission end to end before replying.", - "next_description": "Expect a reply within a few working days, either way, straight to your inbox.", - "next_heading": "A real reply from someone who read it", - "question": "What happens now that we've sent our brief?" - }, - "questions/received/custody.yaml": { - "back": "Back to the site", - "description": "A custodian reads every message about the redoal network and what it keeps.", - "next_description": "Expect a reply once your report has been looked at and the network checked.", - "next_heading": "A custodian is on it", - "question": "Who looks after what the network keeps?" - }, - "questions/received/propose.yaml": { - "back": "Back home", - "description": "Your proposal is in. Someone here will read it and decide whether it fits before anything changes on the page.", - "next_description": "We'll write back once it's been read — approved and made live, or turned down with a reason.", - "next_heading": "A read, then a decision", - "question": "What happens to my proposal now?" - }, - "questions/received/subscribe.yaml": { - "back": "Back to site", - "description": "You'll hear from us when there's something worth saying, not on a schedule.", - "next_description": "You're on the list. Every note has an unsubscribe link if it stops being useful.", - "next_heading": "You're on the list", - "question": "What happens now that I've subscribed?" - }, - "questions/received/trial.yaml": { - "back": "Back to site", - "description": "We read every trial request ourselves before anything gets built.", - "next_description": "If it looks like a fit, we'll draft your site from your own words and send it back for your say before anything goes live.", - "next_heading": "A first draft, built from your own words", - "question": "What happens now that you've sent this?" - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/uhhm-2026-09-23/words-r8.json b/vendor/trainer/runs/uhhm-2026-09-23/words-r8.json deleted file mode 100644 index 50f504b..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-23/words-r8.json +++ /dev/null @@ -1,500 +0,0 @@ -{ - "aggregates.yaml": { - "custody_requests": { - "declined": { - "body": "We've read your message and decided this isn't something we can take on as custodians. If you think we've missed something, write back and tell us.", - "subject": "On your message to the custodians" - }, - "open": { - "body": "Your message reached the custodians of the first node. We read everything that comes in - expect a real reply, not an autoresponder.", - "subject": "We have your message" - }, - "resolved": { - "body": "This is resolved. Here's what we found and what we did about it - write back if it isn't settled from where you sit.", - "subject": "Your case is resolved" - } - }, - "projects": { - "accepted": { - "body": "We want to take this on. Next we'll be in touch to talk through scope, timing and how we'll work together.", - "subject": "We'd like to take this on" - }, - "declined": { - "body": "We've read your brief and this isn't one we're taking on. It isn't a judgment on the problem - just not a fit for us right now.", - "subject": "On your brief" - }, - "open": { - "body": "Your brief is in front of us. We read the whole thing before we reply, so it may take a few days - you'll hear from us either way.\n\nWhat you can do next: {site}/decide/commission?chain={chain}&email={email}", - "subject": "We have your brief" - } - }, - "trials": { - "approved": { - "body": "Your draft is approved and on its way. We built it from your own words - have a look when it's ready and tell us what to change.", - "subject": "Your draft is approved" - }, - "declined": { - "body": "We've decided not to build this draft. If the situation changes, get back in touch and we'll take another look.", - "subject": "On your draft" - }, - "open": { - "body": "We have what you sent. A person will read it and build your draft, or tell you why not - you'll hear from us either way.", - "subject": "We're looking at your draft" - }, - "previewed": { - "body": "Your draft is ready to look at. It's built from your own words - the link below takes you straight to it.", - "subject": "Your draft is ready to view" - } - } - }, - "questions/custodians/index.yaml": { - "buckets": { - "custody_requests": { - "description": "Cases from people who use, build on, or answer for something the redoal network touches, and need a custodian's word on it.", - "heading": "Custody cases waiting on you", - "moves": { - "in_dialogue->declined": "Close, no action", - "in_dialogue->resolved": "Mark resolved", - "open->declined": "Decline case", - "open->in_dialogue": "Open dialogue" - } - } - }, - "confirm": "Confirm", - "description": "The desk for custodians: open custody cases, and the people invited to answer them.", - "invited": { - "description": "Custodians invited but not yet signed in.", - "done": "Signed in", - "heading": "Invited custodians" - }, - "invites": { - "custodians": { - "button": "Invite custodian", - "description": "Give someone an account and a one-time link to join as a custodian.", - "form_title": "Invite a custodian", - "heading": "Bring in another custodian", - "labels": { - "email": "Email", - "name": "Name" - } - } - }, - "links": {}, - "question": "What is waiting on the custodians?" - }, - "questions/decide/commission.yaml": { - "description": "", - "moves": { - "declined": { - "button": "Declined", - "description": "", - "heading": "Declined" - } - }, - "question": "What would you like to do?" - }, - "questions/decide/custody.yaml": { - "description": "", - "moves": { - "resolved": { - "button": "Resolved", - "description": "", - "heading": "Resolved" - } - }, - "question": "What would you like to do?" - }, - "questions/decide/subscribe.yaml": { - "description": "You're on our list. Change your mind whenever you like.", - "moves": { - "unsubscribed": { - "button": "Unsubscribe", - "description": "You'll stop hearing from us. Nothing else changes.", - "heading": "Stop getting notes from us" - } - }, - "question": "Do you want to keep hearing from us?" - }, - "questions/index.yaml": { - "description": "UHHM builds software for organisations that can say what problem they have, and keeps the redoal network underneath.", - "doors": {}, - "needs": { - "collaborate": { - "button": "Get in touch", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.", - "encouragement": "A person reads this, not a form filter — worth the ten minutes.", - "form_description": "Tell us who you are and what kind of work you're after.", - "form_title": "Say hello", - "heading": "Work with us", - "hints": { - "email": "you@example.com", - "interest": "Backend work, or something design-heavy", - "name": "Your name", - "note": "A bit about what you'd want to work on, or a link to your work" - }, - "icon": "handshake", - "labels": { - "email": "Email", - "interest": "What kind of work", - "name": "Name", - "note": "Tell us more" - }, - "road_description": "We read what you send and get back to you. If there's a fit, we invite you in and you start working with us — and if things ever change, that's fine too.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads this directly — for anything urgent, write to bl@uhhm.no.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "commission": { - "button": "Send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.", - "encouragement": "Someone here reads every brief in full before writing back.", - "form_description": "The more of the problem you put in, the better the reply.", - "form_title": "Tell us the problem", - "heading": "Have us build it: send the brief", - "hints": { - "email": "sara@company.com", - "name": "Sara Nilsen", - "org_contact": "Sara Nilsen, ops manager", - "organization": "Nilsen Transport AS", - "project": "Our drivers log hours on paper and it takes a day to get them into payroll." - }, - "icon": "briefcase", - "labels": { - "email": "Your email", - "name": "Your name", - "org_contact": "Who we should talk to", - "organization": "Your organization", - "project": "The problem you want solved" - }, - "road_description": "We read your brief and either take it on or tell you honestly if it's not a fit.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "One of the owners reads it; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "custody": { - "button": "Send to a custodian", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at.", - "encouragement": "A custodian reads every message that comes in here.", - "form_description": "Say which of the four it is, and what you need, in a few lines.", - "form_title": "Reach a custodian", - "heading": "You are on the redoal network: a node, an app, or a recording that concerns you", - "hints": { - "about": "We run our order system on a relay node and it's been dropping messages since Tuesday", - "email": "you@yourcompany.com", - "name": "Your name", - "what": "A relay node is misbehaving" - }, - "icon": "shield", - "labels": { - "about": "What's going on", - "email": "Email", - "name": "Name", - "what": "In short" - }, - "road_description": "A custodian opens a dialogue with you. A node gets its peer, a builder gets an answer, and something the network should not keep gets removed. Either way you hear what was decided.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "A custodian reads it directly; if it's urgent, write to bl@uhhm.no in the meantime.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "propose": { - "button": "Send change", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how.", - "encouragement": "Even a rough version helps — we can tidy the wording ourselves.", - "form_description": "Point us to the page and show us the change.", - "form_title": "Propose a change", - "heading": "Suggest a change to this website", - "hints": { - "email": "you@example.com", - "page": "questions/join/index.yaml", - "proposed_yaml": "heading: \"A clearer way to say this\"", - "rationale": "The current heading doesn't say what you actually get", - "submitted_by": "Your name" - }, - "icon": "pencil", - "labels": { - "email": "Email", - "page": "Which page", - "proposed_yaml": "Your proposed text", - "rationale": "Why this is better", - "submitted_by": "Your name" - }, - "road_description": "Someone here reads your proposal and either makes the change or explains why not. Either way, you'll hear back.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner reads every proposal before anything changes — reach us at bl@uhhm.no if it's time-sensitive.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "subscribe": { - "button": "Sign up", - "description": "You'd rather hear from us now and then than check back on your own.", - "encouragement": "One click unsubscribes you later, no questions asked.", - "form_description": "Just your email, or your name too if you'd like.", - "form_title": "Stay in the loop", - "heading": "Hear from us now and then", - "hints": { - "email": "you@example.com", - "name": "Your name" - }, - "icon": "mail", - "labels": { - "email": "Email", - "name": "Name" - }, - "road_description": "You're on the list. We write when there's something worth saying, and you can leave the list whenever you like.", - "road_icon": "bell", - "road_title": "What happens next", - "who_description": "An owner sends these notes directly — write to bl@uhhm.no if you'd rather ask something first.", - "who_icon": "user-check", - "who_title": "Who reads this" - }, - "trial": { - "button": "Start the draft", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.", - "encouragement": "A person looks at what you send before anything gets built.", - "form_description": "Answer in your own words - there's no wrong way to describe your business.", - "form_title": "Describe your business", - "heading": "See your own business as a site, before you buy anything", - "hints": { - "business": "Nilsen Transport AS", - "email": "sara@company.com", - "what_slows_us_down": "Approvals sit in someone's inbox for days before anyone acts on them.", - "what_we_do": "We move freight for local businesses and handle the paperwork for them.", - "what_we_keep_track_of": "Bookings, driver hours, and which loads are still waiting on a signature.", - "who_comes_to_us": "Local businesses that need something moved on short notice.", - "who_is_involved": "Drivers, dispatchers, and the customers waiting on their delivery." - }, - "icon": "layers", - "labels": { - "business": "Your business", - "email": "Your email", - "what_slows_us_down": "What slows you down", - "what_we_do": "What you do", - "what_we_keep_track_of": "What you keep track of", - "who_comes_to_us": "Who comes to you", - "who_is_involved": "Who's involved" - }, - "road_description": "We look at what you sent and, if it's a fit, build a draft from your own roles and words for you to see before anything moves further.", - "road_icon": "route", - "road_title": "What happens next", - "who_description": "An owner looks at what you send; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "who_title": "Who reads this" - } - }, - "opener": { - "description": "Two things, both built here and both running.", - "features": { - "redoal": { - "description": "UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved.", - "heading": "A network that answers to you", - "icon": "waypoints" - }, - "software": { - "description": "Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.", - "heading": "A considered reply to your brief, and software that fits the argument", - "icon": "layers" - } - }, - "heading": "What UHHM does" - }, - "question": "What is UHHM, and what can you get here?", - "shopping": { - "description": "Nothing to fill in here. What is already out in the world, and the network as it runs right now.", - "heading": "Have a look around first", - "items": { - "built": { - "description": "A few things already out in the world.", - "heading": "What we have built", - "icon": "hammer" - }, - "voices": { - "description": "Straight from the relay, the first node of the network.", - "heading": "The redoal network, live", - "icon": "activity" - } - } - } - }, - "questions/owners/index.yaml": { - "buckets": { - "applicants": { - "description": "People who've asked to build with us, waiting on a decision or already working alongside us.", - "heading": "People who want to build with us", - "moves": { - "active->departed": "Mark departed", - "invited->active": "Confirm active", - "invited->declined": "Withdraw the invite", - "open->declined": "Decline applicant", - "open->invited": "Send invite" - } - }, - "custody_requests": { - "description": "Questions and issues raised with the people who keep the first node - custodians handle these, but you can see where each one stands.", - "heading": "What's been raised with custodians", - "moves": {} - }, - "development_proposals": { - "description": "Changes visitors have proposed for pages on this site, waiting on a yes or no.", - "heading": "Proposed changes to the site", - "moves": { - "open->approved": "Approve change", - "open->rejected": "Reject change" - } - }, - "organizations": { - "description": "Organizations you've met, tracked from first contact through to client and beyond.", - "heading": "Organizations you're tracking", - "moves": { - "client->past_client": "Mark past client", - "prospect->client": "Mark as client", - "prospect->past_client": "Archive as past client" - } - }, - "projects": { - "description": "Briefs sent in by organizations with a problem they want solved.", - "heading": "Briefs waiting on a reply", - "moves": { - "open->accepted": "Accept brief", - "open->declined": "Decline brief" - } - }, - "subscribers": { - "description": "People who want to hear from you now and then.", - "heading": "Who's hearing from you", - "moves": { - "open->unsubscribed": "Unsubscribe them" - } - }, - "trials": { - "description": "Businesses who want to see their own workflow as a working site before committing to anything.", - "heading": "Trial sites in progress", - "moves": { - "approved->declined": "Decline trial", - "approved->previewed": "Mark previewed", - "open->approved": "Approve trial", - "open->declined": "Decline trial" - } - } - }, - "confirm": "Confirm", - "description": "Everything waiting on you: briefs, trials, applicants, subscribers, and proposals, all in one place.", - "invited": { - "description": "People you've invited in, and whether they've taken it up yet.", - "done": "Taken up", - "heading": "Invites you've sent" - }, - "invites": { - "custodians": { - "button": "Send invite", - "description": "Bring someone in to help keep the first node and answer for the network.", - "form_title": "Invite a custodian", - "heading": "Bring in a custodian", - "labels": { - "email": "Their email", - "name": "Their name" - } - }, - "owners": { - "button": "Send invite", - "description": "Bring someone in to work this desk alongside you.", - "form_title": "Invite an owner", - "heading": "Bring in another owner", - "labels": { - "email": "Their email", - "name": "Their name" - } - } - }, - "links": { - "prospect": { - "button": "Add prospect", - "description": "Write down an organization worth following up, and track it from first contact onward.", - "heading": "Track a new organization" - } - }, - "question": "What's waiting on me today?" - }, - "questions/owners/prospect-sent.yaml": { - "back": "Back to site", - "description": "Thanks — we've got your prospect written down, and it now moves through the desk with everything else we're tracking.", - "next_description": "An owner walks it from prospect to client, and on to past client, as the relationship moves.", - "next_heading": "It's on the desk now", - "question": "What happens to this now?" - }, - "questions/owners/prospect.yaml": { - "button": "Add to prospects", - "description": "One line per organization worth watching, moved through the stages as things develop.", - "encouragement": "Takes a minute, and it's yours to update later.", - "form_description": "Name the organization and where things stand.", - "form_title": "New prospect", - "heading": "Keep an organization on your radar", - "hints": { - "contact": "met at the bakers' conference, [email protected]", - "name": "Nordvik Bakery", - "note": "wants a booking flow, follow up after harvest season" - }, - "icon": "briefcase", - "labels": { - "contact": "Contact", - "name": "Organization", - "note": "Note" - }, - "page_description": "Write down an organization worth following up, and move it through client and past client as things develop.", - "question": "Is there an organization I should be keeping track of?", - "road_description": "It sits as a prospect until something moves - then you mark it client, and later past client if the work ends.", - "road_icon": "route", - "road_title": "Moves as you update it", - "who_description": "Only you see this, so keep it wherever you check next.", - "who_icon": "user", - "who_title": "Just for you" - }, - "questions/received/collaborate.yaml": { - "back": "Back to site", - "description": "Your note is in. An owner reads every one and will get back to you if there's a fit worth exploring.", - "next_description": "If it looks like a fit, we'll reach out to talk about where you could help.", - "next_heading": "We'll write if there's a fit", - "question": "What happens to what I just sent?" - }, - "questions/received/commission.yaml": { - "back": "Back to home", - "description": "Your brief is in. An owner reads every commission end to end before replying.", - "next_description": "Expect a reply within a few working days, either way, straight to your inbox.", - "next_heading": "A real reply from someone who read it", - "question": "What happens now that we've sent our brief?" - }, - "questions/received/custody.yaml": { - "back": "Back to the site", - "description": "A custodian reads every message about the redoal network and what it keeps.", - "next_description": "Expect a reply once your report has been looked at and the network checked.", - "next_heading": "A custodian is on it", - "question": "Who looks after what the network keeps?" - }, - "questions/received/propose.yaml": { - "back": "Back home", - "description": "Your proposal is in. Someone here will read it and decide whether it fits before anything changes on the page.", - "next_description": "We'll write back once it's been read — approved and made live, or turned down with a reason.", - "next_heading": "A read, then a decision", - "question": "What happens to my proposal now?" - }, - "questions/received/subscribe.yaml": { - "back": "Back to site", - "description": "You'll hear from us when there's something worth saying, not on a schedule.", - "next_description": "You're on the list. Every note has an unsubscribe link if it stops being useful.", - "next_heading": "You're on the list", - "question": "What happens now that I've subscribed?" - }, - "questions/received/trial.yaml": { - "back": "Back to site", - "description": "We read every trial request ourselves before anything gets built.", - "next_description": "If it looks like a fit, we'll draft your site from your own words and send it back for your say before anything goes live.", - "next_heading": "A first draft, built from your own words", - "question": "What happens now that you've sent this?" - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/uhhm-2026-09-28/README.md b/vendor/trainer/runs/uhhm-2026-09-28/README.md deleted file mode 100644 index d087999..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/README.md +++ /dev/null @@ -1,101 +0,0 @@ -# uhhm.no, rebuilt for portal 0.5.1 and previewed from a branch - -**Scrapped 2026-09-28** after the preview: the original reads better. -The branch, the instance, its NATS and its Caddy route are removed; -the `preview.uhhm.no` DNS record remains in uhhm/infrastructure. What -carried over to the trainer: the 0.5 schema, the mail scoring, and the -iris mail checks. - -`plans/uhhm.yaml` (the 2026-09-23 plan) built with round 8's words -(`runs/uhhm-2026-09-23/words-r8.json`), after the builder learned -portal 0.5's content schema. Lints green with iris v0.5.1: 15 pages, -9 aggregates, 58 access rules, 7 needs met. - -What is new against round 8: - -- **A submitter's own moves say where they may be made from.** - Portal 0.5 reads a `self_transition` without `from` as the initial - state alone; the builder writes `from:` for every one. (The - Tomter Vel content deployed on 2026-09-23 fails the 0.5 lint for - this reason: its "hjelpen er gitt" link moves from `formidlet`.) -- **The approved changes to this site are public.** `propose` gets - `watched_by: [public]` and `public_states: [approved]`, so - `/status/development_proposals` lists what was approved, without - who proposed it (`submitted_by` is `private`). The page's words are - Sonnet's, told that the list shows only approved changes - (`words-status.json`); the front door's card for it is worded by - hand (`overrides.json`). - -Build, reproducibly, without a model: - -``` -portal-trainer build --plan plans/uhhm.yaml --out runs/uhhm-2026-09-28/site \ - --words runs/uhhm-2026-09-23/words-r8.json \ - --words runs/uhhm-2026-09-28/words-status.json \ - --words runs/uhhm-2026-09-28/overrides.json --lint iris -``` - -## The preview - -uhhm/questions branch `preview/trainer` carries this build, and -`.gitea/workflows/preview.yml` serves any `preview/*` branch as -`app@uhhm-preview` on ergo (:3012, `preview.uhhm.no`): - -- its own NATS container (`uhhm-preview-nats`, 127.0.0.1:4232), so a - preview never writes into uhhm.no's buckets, and gdo, which reads - the real NATS, never delivers its mail; -- no sign-in, so the owners' and custodians' desks are not reachable - in a preview; -- the pushed commit, not the branch name, as `CONTENT_BRANCH`: - portal puts the ref into Gitea's `git/trees/` path, and the - slash in `preview/trainer` 404s there. A portal fix would let a - preview follow its branch with the normal reload. - -`preview.uhhm.no` needs a DNS record (uhhm/infrastructure pull -request 4, then a manual terraform apply) before Caddy can get it a -certificate. Until then the preview answers on the host: -`curl -H 'X-Forwarded-For: 127.0.0.1' http://127.0.0.1:3012/`. - -Not in this build: `grants`, deadlines (`after`) and `type: record`. -Nothing in the uhhm plan is an approval that means membership of a -group that exists, nor a stage a clock should end, and `type: record` -needs dynamic pages the builder does not make yet. - -## The mails, scored as a person reads them - -`rate --repo` now rates every mail the site sends, the invite mail -included (site.yaml `mail.invite`, written by the builder whenever a -plan onboards people and has a sender). Besides LIX, each mail is put -to its reader - someone who sent a form, or someone just brought in - -with three questions: what happened and to what, what can I do now, -who wrote and how do I answer. Each is also put to a gutted twin -("News. There is news."); a yes the twin also gets fails the control. -The mail is read as it arrives, placeholders filled with plausible -values. - -| Round | Mails | All three answered | iris mail warnings | -|---|---|---|---| -| 1 (`rate-round1.txt`) | round 8's, plus the invite | 7 of 11 | 0 | -| 2 (not rated) | reworded: name the case and the sender | - | 5 | -| 3 (`rate.txt`) | reworded again with every rule below | 11 of 11 | 0 | - -Round 1's four misses never named their case ("We'd like to take this -on", "your message", "your draft" for what was a description) or who -wrote; the rule became: every mail names the case by a field the -person filled in and ends with the business's name. Following it, -round 2 found new ways to go wrong, each now a rule too: - -- `{project}`, a whole brief, in a subject line, and `{org_contact}`, - usually empty, in a greeting (the five warnings): the prompt marks - fields `(long)` and `(optional)` and keeps both out; -- "the custodian has written why in the reply", which no desk can - do: a decision's mail offers a reply instead, since a reply reaches - the people who decided as a note. - -The deterministic half of that went into iris (uhhm/iris PR 1): a -placeholder nothing fills, a link to a page that does not exist, a -grant on a site that mails no one, an invite without `{link}` fail; -a placeholder only some forms collect or all mark optional, a long -answer in a subject, a dialogue that never says how it ended, and a -mail about a case the person may act on without their link, warn. -The preview branch carries round 3's mails. diff --git a/vendor/trainer/runs/uhhm-2026-09-28/aggregates-before-naming.yaml b/vendor/trainer/runs/uhhm-2026-09-28/aggregates-before-naming.yaml deleted file mode 100644 index 6d5cc2d..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/aggregates-before-naming.yaml +++ /dev/null @@ -1,155 +0,0 @@ -aggregates: -- bucket: applicants - initial: open - states: - open: - event: applied - invited: - event: invited - active: - event: onboarded - departed: - event: departed - declined: - event: declined - transitions: - active: - - departed - invited: - - active - - declined - open: - - invited - - declined -- bucket: custody_requests - initial: open - states: - open: - event: received - mail: - to: submitter - subject: We have your message - body: Your message reached the custodians of the first node. We read everything that comes in - expect a real reply, not an autoresponder. - in_dialogue: - event: in_dialogue - resolved: - event: resolved - mail: - to: submitter - subject: Your case is resolved - body: This is resolved. Here's what we found and what we did about it - write back if it isn't settled from where you sit. - declined: - event: declined - mail: - to: submitter - subject: On your message to the custodians - body: We've read your message and decided this isn't something we can take on as custodians. If you think we've missed something, write back and tell us. - transitions: - in_dialogue: - - resolved - - declined - open: - - in_dialogue - - declined -- bucket: development_proposals - initial: open - states: - open: - event: proposed - approved: - event: approved - rejected: - event: rejected - transitions: - open: - - approved - - rejected -- bucket: organizations - initial: prospect - states: - prospect: - event: identified - client: - event: became_client - past_client: - event: churned - transitions: - client: - - past_client - prospect: - - client - - past_client -- bucket: projects - initial: open - states: - open: - event: submitted - mail: - to: submitter - subject: We have your brief - body: |- - Your brief is in front of us. We read the whole thing before we reply, so it may take a few days - you'll hear from us either way. - - What you can do next: {site}/decide/commission?chain={chain}&email={email} - accepted: - event: accepted - mail: - to: submitter - subject: We'd like to take this on - body: We want to take this on. Next we'll be in touch to talk through scope, timing and how we'll work together. - declined: - event: declined - mail: - to: submitter - subject: On your brief - body: We've read your brief and this isn't one we're taking on. It isn't a judgment on the problem - just not a fit for us right now. - transitions: - open: - - accepted - - declined -- bucket: subscribers - initial: open - states: - open: - event: subscribed - unsubscribed: - event: unsubscribed - transitions: - open: - - unsubscribed -- bucket: trials - initial: open - states: - open: - event: received - mail: - to: submitter - subject: We're looking at your draft - body: We have what you sent. A person will read it and build your draft, or tell you why not - you'll hear from us either way. - approved: - event: approved - mail: - to: submitter - subject: Your draft is approved - body: Your draft is approved and on its way. We built it from your own words - have a look when it's ready and tell us what to change. - previewed: - event: previewed - mail: - to: submitter - subject: Your draft is ready to view - body: Your draft is ready to look at. It's built from your own words - the link below takes you straight to it. - declined: - event: declined - mail: - to: submitter - subject: On your draft - body: We've decided not to build this draft. If the situation changes, get back in touch and we'll take another look. - transitions: - approved: - - previewed - - declined - open: - - approved - - declined - attended_by: | - approved -> previewed: the n8n workflow that builds the draft site from an approved intake (docker, rauthy, portal content) and sends the preview link. Until it exists, owners run portal-trainer by hand and press the button. diff --git a/vendor/trainer/runs/uhhm-2026-09-28/build-invite.log b/vendor/trainer/runs/uhhm-2026-09-28/build-invite.log deleted file mode 100644 index 96c4f6c..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/build-invite.log +++ /dev/null @@ -1,13 +0,0 @@ -words: site.yaml -content repo written to runs/uhhm-2026-09-28/site -OK: 15 question(s), 9 aggregate(s) valid -OK: access policy, 58 rule(s), validates -OK: 11 mail(s): every placeholder fills, every link lands -need "commission": / [Have us build it: send the brief] -> "projects" -need "trial": / [See your own business as a site, before you buy anything] -> "trials" -need "collaborate": / [Work with us] -> "applicants" -need "subscribe": / [Hear from us now and then] -> "subscribers" -need "propose": / [Suggest a change to this website] -> "development_proposals" -need "custody": / [You are on the redoal network: a node, an app, or a recording that concerns you] -> "custody_requests" -need "prospect": /owners/prospect [Keep an organization on your radar] -> "organizations" -OK: 7 need(s) structurally met, 0 planned, 15 persona(s) diff --git a/vendor/trainer/runs/uhhm-2026-09-28/build-mails.log b/vendor/trainer/runs/uhhm-2026-09-28/build-mails.log deleted file mode 100644 index 5426892..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/build-mails.log +++ /dev/null @@ -1,13 +0,0 @@ -words: aggregates.yaml -content repo written to runs/uhhm-2026-09-28/site -OK: 15 question(s), 9 aggregate(s) valid -OK: access policy, 58 rule(s), validates -OK: 11 mail(s): every placeholder fills, every link lands -need "commission": / [Have us build it: send the brief] -> "projects" -need "trial": / [See your own business as a site, before you buy anything] -> "trials" -need "collaborate": / [Work with us] -> "applicants" -need "subscribe": / [Hear from us now and then] -> "subscribers" -need "propose": / [Suggest a change to this website] -> "development_proposals" -need "custody": / [You are on the redoal network: a node, an app, or a recording that concerns you] -> "custody_requests" -need "prospect": /owners/prospect [Keep an organization on your radar] -> "organizations" -OK: 7 need(s) structurally met, 0 planned, 15 persona(s) diff --git a/vendor/trainer/runs/uhhm-2026-09-28/build.log b/vendor/trainer/runs/uhhm-2026-09-28/build.log deleted file mode 100644 index f17e926..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/build.log +++ /dev/null @@ -1,12 +0,0 @@ -words: questions/status/development_proposals/index.yaml -content repo written to runs/uhhm-2026-09-28/site -OK: 15 question(s), 9 aggregate(s) valid -OK: access policy, 58 rule(s), validates -need "commission": / [Have us build it: send the brief] -> "projects" -need "trial": / [See your own business as a site, before you buy anything] -> "trials" -need "collaborate": / [Work with us] -> "applicants" -need "subscribe": / [Hear from us now and then] -> "subscribers" -need "propose": / [Suggest a change to this website] -> "development_proposals" -need "custody": / [You are on the redoal network: a node, an app, or a recording that concerns you] -> "custody_requests" -need "prospect": /owners/prospect [Keep an organization on your radar] -> "organizations" -OK: 7 need(s) structurally met, 0 planned, 15 persona(s) diff --git a/vendor/trainer/runs/uhhm-2026-09-28/model.json b/vendor/trainer/runs/uhhm-2026-09-28/model.json deleted file mode 100644 index ad3d907..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/model.json +++ /dev/null @@ -1,952 +0,0 @@ -{ - "needs": [ - { - "id": "commission", - "who": "an organization with a problem it wants software to solve", - "wants": "a considered reply to a brief, from people who read the whole thing", - "enters_as": null, - "lands_in": "projects", - "handled_by": "owners", - "done_when": [ - "accepted", - "declined" - ], - "success": [ - "accepted" - ], - "steps": [ - { - "page": "/", - "question": "What is UHHM, and what can you get here?", - "context": "What UHHM does: Two things, both built here and both running. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network. Changes to this site we have approved: Suggestions from visitors that a person here has read and approved, open for anyone to read. [Changes to this site we have approved](/status/development_proposals)", - "options": [ - { - "name": "Have us build it: send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing." - }, - { - "name": "See your own business as a site, before you buy anything", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through." - }, - { - "name": "Work with us", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit." - }, - { - "name": "Hear from us now and then", - "description": "You'd rather hear from us now and then than check back on your own." - }, - { - "name": "Suggest a change to this website", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how." - }, - { - "name": "You are on the redoal network: a node, an app, or a recording that concerns you", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at." - } - ], - "expect": [ - "Have us build it: send the brief" - ], - "alternative": "Have us build it: send the brief", - "fields": [ - { - "name": "name", - "label": "Your name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Your email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "project", - "label": "The problem you want solved", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "organization", - "label": "Your organization", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "org_contact", - "label": "Who we should talk to", - "type": "text", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "trial", - "who": "someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything", - "wants": "a first draft of a site for their own roles, built from their own words and approved by a person first", - "enters_as": null, - "lands_in": "trials", - "handled_by": "owners", - "done_when": [ - "previewed", - "declined" - ], - "success": [ - "previewed" - ], - "steps": [ - { - "page": "/", - "question": "What is UHHM, and what can you get here?", - "context": "What UHHM does: Two things, both built here and both running. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network. Changes to this site we have approved: Suggestions from visitors that a person here has read and approved, open for anyone to read. [Changes to this site we have approved](/status/development_proposals)", - "options": [ - { - "name": "Have us build it: send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing." - }, - { - "name": "See your own business as a site, before you buy anything", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through." - }, - { - "name": "Work with us", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit." - }, - { - "name": "Hear from us now and then", - "description": "You'd rather hear from us now and then than check back on your own." - }, - { - "name": "Suggest a change to this website", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how." - }, - { - "name": "You are on the redoal network: a node, an app, or a recording that concerns you", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at." - } - ], - "expect": [ - "See your own business as a site, before you buy anything" - ], - "alternative": "See your own business as a site, before you buy anything", - "fields": [ - { - "name": "business", - "label": "Your business", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Your email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "what_we_do", - "label": "What you do", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "who_comes_to_us", - "label": "Who comes to you", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "what_we_keep_track_of", - "label": "What you keep track of", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "who_is_involved", - "label": "Who's involved", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "what_slows_us_down", - "label": "What slows you down", - "type": "textarea", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "collaborate", - "who": "someone who wants to work with us on what we build", - "wants": "to be read as a person, and invited in if there is a fit", - "enters_as": null, - "lands_in": "applicants", - "handled_by": "owners", - "done_when": [ - "departed", - "declined" - ], - "success": [ - "departed" - ], - "steps": [ - { - "page": "/", - "question": "What is UHHM, and what can you get here?", - "context": "What UHHM does: Two things, both built here and both running. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network. Changes to this site we have approved: Suggestions from visitors that a person here has read and approved, open for anyone to read. [Changes to this site we have approved](/status/development_proposals)", - "options": [ - { - "name": "Have us build it: send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing." - }, - { - "name": "See your own business as a site, before you buy anything", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through." - }, - { - "name": "Work with us", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit." - }, - { - "name": "Hear from us now and then", - "description": "You'd rather hear from us now and then than check back on your own." - }, - { - "name": "Suggest a change to this website", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how." - }, - { - "name": "You are on the redoal network: a node, an app, or a recording that concerns you", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at." - } - ], - "expect": [ - "Work with us" - ], - "alternative": "Work with us", - "fields": [ - { - "name": "name", - "label": "Name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "interest", - "label": "What kind of work", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "note", - "label": "Tell us more", - "type": "textarea", - "optional": true, - "options": [] - } - ] - } - ] - }, - { - "id": "subscribe", - "who": "someone who wants to hear from us when there is something to say", - "wants": "a note now and then, and an easy way out", - "enters_as": null, - "lands_in": "subscribers", - "handled_by": "owners", - "done_when": [ - "unsubscribed" - ], - "success": [], - "steps": [ - { - "page": "/", - "question": "What is UHHM, and what can you get here?", - "context": "What UHHM does: Two things, both built here and both running. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network. Changes to this site we have approved: Suggestions from visitors that a person here has read and approved, open for anyone to read. [Changes to this site we have approved](/status/development_proposals)", - "options": [ - { - "name": "Have us build it: send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing." - }, - { - "name": "See your own business as a site, before you buy anything", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through." - }, - { - "name": "Work with us", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit." - }, - { - "name": "Hear from us now and then", - "description": "You'd rather hear from us now and then than check back on your own." - }, - { - "name": "Suggest a change to this website", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how." - }, - { - "name": "You are on the redoal network: a node, an app, or a recording that concerns you", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at." - } - ], - "expect": [ - "Hear from us now and then" - ], - "alternative": "Hear from us now and then", - "fields": [ - { - "name": "name", - "label": "Name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "propose", - "who": "a visitor who sees how a page on this site should change", - "wants": "the change read by a person and, if approved, made", - "enters_as": null, - "lands_in": "development_proposals", - "handled_by": "owners", - "done_when": [ - "approved", - "rejected" - ], - "success": [ - "approved" - ], - "steps": [ - { - "page": "/", - "question": "What is UHHM, and what can you get here?", - "context": "What UHHM does: Two things, both built here and both running. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network. Changes to this site we have approved: Suggestions from visitors that a person here has read and approved, open for anyone to read. [Changes to this site we have approved](/status/development_proposals)", - "options": [ - { - "name": "Have us build it: send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing." - }, - { - "name": "See your own business as a site, before you buy anything", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through." - }, - { - "name": "Work with us", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit." - }, - { - "name": "Hear from us now and then", - "description": "You'd rather hear from us now and then than check back on your own." - }, - { - "name": "Suggest a change to this website", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how." - }, - { - "name": "You are on the redoal network: a node, an app, or a recording that concerns you", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at." - } - ], - "expect": [ - "Suggest a change to this website" - ], - "alternative": "Suggest a change to this website", - "fields": [ - { - "name": "submitted_by", - "label": "Your name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": true, - "options": [] - }, - { - "name": "page", - "label": "Which page", - "type": "text", - "optional": true, - "options": [] - }, - { - "name": "rationale", - "label": "Why this is better", - "type": "textarea", - "optional": false, - "options": [] - }, - { - "name": "proposed_yaml", - "label": "Your proposed text", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "custody", - "who": "someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node", - "wants": "an answer from a custodian, and action where the network keeps something it should not", - "enters_as": null, - "lands_in": "custody_requests", - "handled_by": "custodians", - "done_when": [ - "resolved", - "declined" - ], - "success": [ - "resolved" - ], - "steps": [ - { - "page": "/", - "question": "What is UHHM, and what can you get here?", - "context": "What UHHM does: Two things, both built here and both running. A considered reply to your brief, and software that fits the argument: Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself. A network that answers to you: UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved.\nHave a look around first: Nothing to fill in here. What is already out in the world, and the network as it runs right now. What we have built: A few things already out in the world. The redoal network, live: Straight from the relay, the first node of the network. Changes to this site we have approved: Suggestions from visitors that a person here has read and approved, open for anyone to read. [Changes to this site we have approved](/status/development_proposals)", - "options": [ - { - "name": "Have us build it: send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing." - }, - { - "name": "See your own business as a site, before you buy anything", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through." - }, - { - "name": "Work with us", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit." - }, - { - "name": "Hear from us now and then", - "description": "You'd rather hear from us now and then than check back on your own." - }, - { - "name": "Suggest a change to this website", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how." - }, - { - "name": "You are on the redoal network: a node, an app, or a recording that concerns you", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at." - } - ], - "expect": [ - "You are on the redoal network: a node, an app, or a recording that concerns you" - ], - "alternative": "You are on the redoal network: a node, an app, or a recording that concerns you", - "fields": [ - { - "name": "name", - "label": "Name", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "email", - "label": "Email", - "type": "email", - "optional": false, - "options": [] - }, - { - "name": "about", - "label": "What's going on", - "type": "select", - "optional": false, - "options": [ - "Running a node of my own", - "Building on the network", - "Something the network keeps about me", - "Something else" - ] - }, - { - "name": "what", - "label": "In short", - "type": "textarea", - "optional": false, - "options": [] - } - ] - } - ] - }, - { - "id": "prospect", - "who": "an owner who has met an organization worth following up", - "wants": "it written down and walked through its states from the desk", - "enters_as": "owners", - "lands_in": "organizations", - "handled_by": "owners", - "done_when": [ - "past_client" - ], - "success": [], - "steps": [ - { - "page": "/owners/prospect", - "question": "Is there an organization I should be keeping track of?", - "context": "", - "options": [ - { - "name": "Keep an organization on your radar", - "description": "One line per organization worth watching, moved through the stages as things develop." - } - ], - "expect": [ - "Keep an organization on your radar" - ], - "alternative": "Keep an organization on your radar", - "fields": [ - { - "name": "name", - "label": "Organization", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "contact", - "label": "Contact", - "type": "text", - "optional": false, - "options": [] - }, - { - "name": "note", - "label": "Note", - "type": "textarea", - "optional": true, - "options": [] - } - ] - } - ] - } - ], - "buckets": { - "projects": { - "initial": "open", - "transitions": { - "open": [ - "accepted", - "declined" - ] - }, - "words": { - "accepted": "taken on", - "declined": "not a fit for us", - "open": "received" - }, - "desks": [ - { - "page": "/owners", - "group": "owners", - "moves": [ - { - "from": "open", - "to": "accepted", - "label": "Accept brief" - }, - { - "from": "open", - "to": "declined", - "label": "Decline brief" - } - ] - } - ], - "self_moves": [ - "declined" - ] - }, - "trials": { - "initial": "open", - "transitions": { - "approved": [ - "previewed", - "declined" - ], - "open": [ - "approved", - "declined" - ] - }, - "words": { - "approved": "approved for a draft", - "declined": "not a fit for us", - "open": "received", - "previewed": "a preview is ready" - }, - "desks": [ - { - "page": "/owners", - "group": "owners", - "moves": [ - { - "from": "approved", - "to": "previewed", - "label": "Mark previewed" - }, - { - "from": "approved", - "to": "declined", - "label": "Decline trial" - }, - { - "from": "open", - "to": "approved", - "label": "Approve trial" - }, - { - "from": "open", - "to": "declined", - "label": "Decline trial" - } - ] - } - ], - "self_moves": [] - }, - "applicants": { - "initial": "open", - "transitions": { - "active": [ - "departed" - ], - "open": [ - "invited", - "declined" - ], - "invited": [ - "active", - "declined" - ] - }, - "words": { - "active": "working with us", - "declined": "not a fit for us", - "departed": "moved on", - "invited": "invited in", - "open": "received" - }, - "desks": [ - { - "page": "/owners", - "group": "owners", - "moves": [ - { - "from": "active", - "to": "departed", - "label": "Mark departed" - }, - { - "from": "invited", - "to": "active", - "label": "Confirm active" - }, - { - "from": "invited", - "to": "declined", - "label": "Withdraw the invite" - }, - { - "from": "open", - "to": "invited", - "label": "Send invite" - }, - { - "from": "open", - "to": "declined", - "label": "Decline applicant" - } - ] - } - ], - "self_moves": [] - }, - "subscribers": { - "initial": "open", - "transitions": { - "open": [ - "unsubscribed" - ] - }, - "words": { - "open": "on the list", - "unsubscribed": "off the list" - }, - "desks": [ - { - "page": "/owners", - "group": "owners", - "moves": [ - { - "from": "open", - "to": "unsubscribed", - "label": "Unsubscribe them" - } - ] - } - ], - "self_moves": [ - "unsubscribed" - ] - }, - "development_proposals": { - "initial": "open", - "transitions": { - "open": [ - "approved", - "rejected" - ] - }, - "words": { - "approved": "approved", - "open": "received", - "rejected": "turned down" - }, - "desks": [ - { - "page": "/owners", - "group": "owners", - "moves": [ - { - "from": "open", - "to": "approved", - "label": "Approve change" - }, - { - "from": "open", - "to": "rejected", - "label": "Reject change" - } - ] - }, - { - "page": "/status/development_proposals", - "group": null, - "moves": [] - } - ], - "self_moves": [] - }, - "custody_requests": { - "initial": "open", - "transitions": { - "in_dialogue": [ - "resolved", - "declined" - ], - "open": [ - "in_dialogue", - "declined" - ] - }, - "words": { - "declined": "closed without action", - "in_dialogue": "in dialogue with a custodian", - "open": "received", - "resolved": "resolved" - }, - "desks": [ - { - "page": "/custodians", - "group": "custodians", - "moves": [ - { - "from": "in_dialogue", - "to": "resolved", - "label": "Mark resolved" - }, - { - "from": "in_dialogue", - "to": "declined", - "label": "Close, no action" - }, - { - "from": "open", - "to": "in_dialogue", - "label": "Open dialogue" - }, - { - "from": "open", - "to": "declined", - "label": "Decline case" - } - ] - }, - { - "page": "/owners", - "group": "owners", - "moves": [] - } - ], - "self_moves": [ - "resolved" - ] - }, - "organizations": { - "initial": "prospect", - "transitions": { - "client": [ - "past_client" - ], - "prospect": [ - "client", - "past_client" - ] - }, - "words": { - "client": "a client", - "past_client": "a past client", - "prospect": "a prospect" - }, - "desks": [ - { - "page": "/owners", - "group": "owners", - "moves": [ - { - "from": "client", - "to": "past_client", - "label": "Mark past client" - }, - { - "from": "prospect", - "to": "client", - "label": "Mark as client" - }, - { - "from": "prospect", - "to": "past_client", - "label": "Archive as past client" - } - ] - } - ], - "self_moves": [] - } - }, - "personas": [ - { - "id": "architecture-firm", - "need": "commission", - "text": "We run a small architecture firm and our project files are scattered across three cloud drives. We want to pay someone to set up proper storage and backups we control ourselves." - }, - { - "id": "climbing-gym-founder", - "need": "commission", - "text": "I have an idea for a booking app for climbing gyms and I'm looking for a team that can build the first version with me." - }, - { - "id": "municipality-buyer", - "need": "commission", - "text": "Our municipality needs an internal tool for tracking building permits. We are looking for a vendor who can scope it and deliver it." - }, - { - "id": "exhibition-visitor", - "need": "subscribe", - "text": "I saw your drawing network at an exhibition and liked it. I don't want to get involved, I'd just like to know when there is news." - }, - { - "id": "tech-journalist", - "need": "subscribe", - "text": "I write about Nordic technology. Keep me posted on what you release so I can cover it." - }, - { - "id": "rust-developer", - "need": "collaborate", - "text": "I'm a Rust developer between jobs and I like that you build in the open. I would love to contribute, and maybe join you." - }, - { - "id": "interaction-designer", - "need": "collaborate", - "text": "I'm an interaction designer. I want to work with you on the drawing interface." - }, - { - "id": "student-intern", - "need": "collaborate", - "text": "I'm a computer science student looking for a summer internship doing infrastructure work." - }, - { - "id": "plumber-owner", - "need": "trial", - "text": "I run a plumbing company with four vans. Jobs come in by phone and text and some get lost. I'd like to see how this would look for us before I spend any money." - }, - { - "id": "dance-school", - "need": "trial", - "text": "We are a dance school. Enrolments, cancellations and invoices all go through one email inbox that only I understand. Can you show me a version made for us?" - }, - { - "id": "node-runner", - "need": "custody", - "text": "I run a small server in Berlin and want to host a redoal node that peers with yours. Who do I talk to?" - }, - { - "id": "recorded-name", - "need": "custody", - "text": "Someone left a recording on redoal that says my full name and where I live. I want it gone, and I want to know who is responsible for that network." - }, - { - "id": "app-builder", - "need": "custody", - "text": "I'm building a music app and would like to use redoal's gesture addresses in it. Is that possible, and who decides?" - }, - { - "id": "wording-fix", - "need": "propose", - "text": "The subscribe page should say how often you actually write. I'd like to suggest that exact change to the page." - }, - { - "id": "rewrite", - "need": "propose", - "text": "One page on this site reads wrong to me and I know exactly how I'd rewrite it. Where do I send the new text?" - } - ] -} \ No newline at end of file diff --git a/vendor/trainer/runs/uhhm-2026-09-28/overrides.json b/vendor/trainer/runs/uhhm-2026-09-28/overrides.json deleted file mode 100644 index caf2b67..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/overrides.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "questions/index.yaml": { - "shopping": { - "items": { - "status-development_proposals": { - "heading": "Changes to this site we have approved", - "description": "Suggestions from visitors that a person here has read and approved, open for anyone to read." - } - } - } - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/uhhm-2026-09-28/rate-round1.txt b/vendor/trainer/runs/uhhm-2026-09-28/rate-round1.txt deleted file mode 100644 index 193f941..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/rate-round1.txt +++ /dev/null @@ -1,28 +0,0 @@ -desk bucket buttons mistaken for -/custodians custody_requests 4 of 4 -/owners applicants 4 of 4 -/owners development_proposals 2 of 2 -/owners organizations 2 of 2 -/owners projects 2 of 2 -/owners trials 4 of 4 - -mail LIX words happened now who gutted twin says -custody_requests:open 32 easy 27 no no no ok -custody_requests:resolved 20 very easy 28 yes yes yes ok -custody_requests:declined 33 easy 32 no no no ok -projects:open 9 very easy 39 yes yes yes ok -projects:accepted 16 very easy 27 no no yes ok -projects:declined 17 very easy 30 yes yes yes ok -trials:open 13 very easy 31 no no yes ok -trials:approved 17 very easy 32 yes yes yes ok -trials:previewed 13 very easy 28 yes yes yes ok -trials:declined 25 very easy 23 yes yes yes ok -invite 24 very easy 83 yes yes yes ok - -need LIX which where asked next gutted twin says page load -commission 27 very easy 3/3 3/3 3/3 3/3 0/0/0/0 ok 6 options, 4 required - SPLIT -trial 28 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 6 options, 6 required - SPLIT -collaborate 26 very easy 3/3 3/3 3/3 3/3 0/0/0/0 ok 6 options, 3 required - SPLIT -subscribe 27 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 6 options, 2 required - SPLIT -propose 28 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 6 options, 3 required - SPLIT -custody 29 very easy 3/3 3/3 3/3 3/3 0/0/0/0 ok 6 options, 4 required - SPLIT diff --git a/vendor/trainer/runs/uhhm-2026-09-28/rate.txt b/vendor/trainer/runs/uhhm-2026-09-28/rate.txt deleted file mode 100644 index 88bc8fa..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/rate.txt +++ /dev/null @@ -1,28 +0,0 @@ -desk bucket buttons mistaken for -/custodians custody_requests 4 of 4 -/owners applicants 4 of 4 -/owners development_proposals 2 of 2 -/owners organizations 2 of 2 -/owners projects 2 of 2 -/owners trials 4 of 4 - -mail LIX words happened now who gutted twin says -custody_requests:open 32 easy 25 yes yes yes ok -custody_requests:resolved 32 easy 30 yes yes yes ok -custody_requests:declined 29 very easy 33 yes yes yes ok -projects:open 14 very easy 34 yes yes yes ok -projects:accepted 14 very easy 37 yes yes yes ok -projects:declined 20 very easy 39 yes yes yes ok -trials:open 23 very easy 34 yes yes yes ok -trials:approved 17 very easy 41 yes yes yes ok -trials:previewed 8 very easy 34 yes yes yes ok -trials:declined 18 very easy 32 yes yes yes ok -invite 24 very easy 83 yes yes yes ok - -need LIX which where asked next gutted twin says page load -commission 27 very easy 3/3 3/3 3/3 3/3 0/0/0/0 ok 6 options, 4 required - SPLIT -trial 28 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 6 options, 6 required - SPLIT -collaborate 26 very easy 3/3 3/3 3/3 3/3 0/0/0/0 ok 6 options, 3 required - SPLIT -subscribe 27 very easy 2/2 2/2 2/2 2/2 0/0/0/0 ok 6 options, 2 required - SPLIT -propose 28 very easy 0/2 2/2 2/2 2/2 0/0/0/0 ok 6 options, 3 required - SPLIT -custody 29 very easy 3/3 3/3 3/3 3/3 0/0/0/0 ok 6 options, 4 required - SPLIT diff --git a/vendor/trainer/runs/uhhm-2026-09-28/rated/rate.json b/vendor/trainer/runs/uhhm-2026-09-28/rated/rate.json deleted file mode 100644 index cb35839..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/rated/rate.json +++ /dev/null @@ -1,304 +0,0 @@ -{ - "collaborate": { - "steps": 1, - "pages": [ - { - "page": "/", - "lix": 26.34959349593496, - "personas": 3, - "options": 6, - "required_fields": 3, - "overloaded": true, - "followup_shown": true, - "understanding": { - "which": 3, - "where": 3, - "asked": 3, - "next": 3 - }, - "control": { - "which": 0, - "where": 0, - "asked": 0, - "next": 0 - }, - "control_ok": true - } - ] - }, - "commission": { - "steps": 1, - "pages": [ - { - "page": "/", - "lix": 27.352380952380955, - "personas": 3, - "options": 6, - "required_fields": 4, - "overloaded": true, - "followup_shown": true, - "understanding": { - "which": 3, - "where": 3, - "asked": 3, - "next": 3 - }, - "control": { - "which": 0, - "where": 0, - "asked": 0, - "next": 0 - }, - "control_ok": true - } - ] - }, - "custody": { - "steps": 1, - "pages": [ - { - "page": "/", - "lix": 28.8003663003663, - "personas": 3, - "options": 6, - "required_fields": 4, - "overloaded": true, - "followup_shown": true, - "understanding": { - "which": 3, - "where": 3, - "asked": 3, - "next": 3 - }, - "control": { - "which": 0, - "where": 0, - "asked": 0, - "next": 0 - }, - "control_ok": true - } - ] - }, - "desk /custodians custody_requests": { - "right": 4, - "of": 4, - "mistaken": [] - }, - "desk /owners applicants": { - "right": 4, - "of": 4, - "mistaken": [] - }, - "desk /owners development_proposals": { - "right": 2, - "of": 2, - "mistaken": [] - }, - "desk /owners organizations": { - "right": 2, - "of": 2, - "mistaken": [] - }, - "desk /owners projects": { - "right": 2, - "of": 2, - "mistaken": [] - }, - "desk /owners trials": { - "right": 4, - "of": 4, - "mistaken": [] - }, - "mail custody_requests:declined": { - "lix": 29.333333333333332, - "words": 33, - "understanding": { - "happened": true, - "now": true, - "who": true - }, - "control_ok": true - }, - "mail custody_requests:open": { - "lix": 31.83695652173913, - "words": 25, - "understanding": { - "happened": true, - "now": true, - "who": true - }, - "control_ok": true - }, - "mail custody_requests:resolved": { - "lix": 32.0, - "words": 30, - "understanding": { - "happened": true, - "now": true, - "who": true - }, - "control_ok": true - }, - "mail invite": { - "lix": 24.05128205128205, - "words": 83, - "understanding": { - "happened": true, - "now": true, - "who": true - }, - "control_ok": true - }, - "mail projects:accepted": { - "lix": 14.464285714285715, - "words": 37, - "understanding": { - "happened": true, - "now": true, - "who": true - }, - "control_ok": true - }, - "mail projects:declined": { - "lix": 20.06081081081081, - "words": 39, - "understanding": { - "happened": true, - "now": true, - "who": true - }, - "control_ok": true - }, - "mail projects:open": { - "lix": 14.404761904761905, - "words": 34, - "understanding": { - "happened": true, - "now": true, - "who": true - }, - "control_ok": true - }, - "mail trials:approved": { - "lix": 17.442307692307693, - "words": 41, - "understanding": { - "happened": true, - "now": true, - "who": true - }, - "control_ok": true - }, - "mail trials:declined": { - "lix": 17.5, - "words": 32, - "understanding": { - "happened": true, - "now": true, - "who": true - }, - "control_ok": true - }, - "mail trials:open": { - "lix": 23.205882352941174, - "words": 34, - "understanding": { - "happened": true, - "now": true, - "who": true - }, - "control_ok": true - }, - "mail trials:previewed": { - "lix": 8.25, - "words": 34, - "understanding": { - "happened": true, - "now": true, - "who": true - }, - "control_ok": true - }, - "propose": { - "steps": 1, - "pages": [ - { - "page": "/", - "lix": 28.30081300813008, - "personas": 2, - "options": 6, - "required_fields": 3, - "overloaded": true, - "followup_shown": true, - "understanding": { - "which": 0, - "where": 2, - "asked": 2, - "next": 2 - }, - "control": { - "which": 0, - "where": 0, - "asked": 0, - "next": 0 - }, - "control_ok": true - } - ] - }, - "subscribe": { - "steps": 1, - "pages": [ - { - "page": "/", - "lix": 27.352380952380955, - "personas": 2, - "options": 6, - "required_fields": 2, - "overloaded": true, - "followup_shown": true, - "understanding": { - "which": 2, - "where": 2, - "asked": 2, - "next": 2 - }, - "control": { - "which": 0, - "where": 0, - "asked": 0, - "next": 0 - }, - "control_ok": true - } - ] - }, - "trial": { - "steps": 1, - "pages": [ - { - "page": "/", - "lix": 28.29310344827586, - "personas": 2, - "options": 6, - "required_fields": 6, - "overloaded": true, - "followup_shown": true, - "understanding": { - "which": 2, - "where": 2, - "asked": 2, - "next": 2 - }, - "control": { - "which": 0, - "where": 0, - "asked": 0, - "next": 0 - }, - "control_ok": true - } - ] - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/aggregates.yaml b/vendor/trainer/runs/uhhm-2026-09-28/site/aggregates.yaml deleted file mode 100644 index ff3e604..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/aggregates.yaml +++ /dev/null @@ -1,184 +0,0 @@ -aggregates: -- bucket: applicants - initial: open - states: - open: - event: applied - invited: - event: invited - active: - event: onboarded - departed: - event: departed - declined: - event: declined - transitions: - active: - - departed - invited: - - active - - declined - open: - - invited - - declined -- bucket: custody_requests - initial: open - states: - open: - event: received - mail: - to: submitter - subject: We have your request about {about} - body: |- - {name}, your request about {about} has reached the custodians of the redoal network. A custodian will answer you at {email}. - {site} - UHHM - in_dialogue: - event: in_dialogue - resolved: - event: resolved - mail: - to: submitter - subject: Your request about {about} is resolved - body: |- - {name}, the custodians have resolved your request about {about}. If something is still wrong, reply to this mail and a custodian will read it. - {site} - UHHM - declined: - event: declined - mail: - to: submitter - subject: 'Your request about {about}: declined' - body: |- - {name}, the custodians have declined your request about {about}. You can reply to this mail to ask about it, and a reply reaches the people who decided. - {site} - UHHM - transitions: - in_dialogue: - - resolved - - declined - open: - - in_dialogue - - declined -- bucket: development_proposals - initial: open - states: - open: - event: proposed - approved: - event: approved - rejected: - event: rejected - transitions: - open: - - approved - - rejected -- bucket: organizations - initial: prospect - states: - prospect: - event: identified - client: - event: became_client - past_client: - event: churned - transitions: - client: - - past_client - prospect: - - client - - past_client -- bucket: projects - initial: open - states: - open: - event: submitted - mail: - to: submitter - subject: We have the brief from {organization} - body: |- - {name}, the brief from {organization} has reached us, and we will read all of it. You will get a considered reply at {email}. - {site} - UHHM - - What you can do next: {site}/decide/commission?chain={chain}&email={email} - accepted: - event: accepted - mail: - to: submitter - subject: '{organization}: we would like to take your project on' - body: |- - {name}, we have read the brief from {organization} and would like to take the project on. Reply to this mail and we will agree on the next step. - {site} - UHHM - declined: - event: declined - mail: - to: submitter - subject: '{organization}: we cannot take your project on' - body: |- - {name}, we have read the brief from {organization} and cannot take the project on. You can reply to this mail to ask about it, and a reply reaches the people who decided. - {site} - UHHM - transitions: - open: - - accepted - - declined -- bucket: subscribers - initial: open - states: - open: - event: subscribed - unsubscribed: - event: unsubscribed - transitions: - open: - - unsubscribed -- bucket: trials - initial: open - states: - open: - event: received - mail: - to: submitter - subject: We have your trial request for {business} - body: |- - Your request for {business} has reached us, and a person will read it before anything is built. You will hear from us at {email} once it has been decided. - {site} - UHHM - approved: - event: approved - mail: - to: submitter - subject: '{business}: your trial is approved' - body: |- - We have approved the trial for {business}, and we are now building a first draft of a site from your own words. You will get a mail at {email} when it is ready to look at. - {site} - UHHM - previewed: - event: previewed - mail: - to: submitter - subject: '{business}: your first draft is ready' - body: |- - The first draft of a site for {business} is ready for you to look at. Reply to this mail and tell us what fits and what does not. - {site} - UHHM - declined: - event: declined - mail: - to: submitter - subject: '{business}: we cannot build your trial' - body: |- - We have declined the trial for {business}. You can reply to this mail to ask about it, and a reply reaches the people who decided. - {site} - UHHM - transitions: - approved: - - previewed - - declined - open: - - approved - - declined - attended_by: | - approved -> previewed: the n8n workflow that builds the draft site from an approved intake (docker, rauthy, portal content) and sends the preview link. Until it exists, owners run portal-trainer by hand and press the button. diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/llm/01-aggregates.yaml.md b/vendor/trainer/runs/uhhm-2026-09-28/site/llm/01-aggregates.yaml.md deleted file mode 100644 index d8b97be..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/llm/01-aggregates.yaml.md +++ /dev/null @@ -1,130 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. Lands in `projects`; its form collects: {name}, {email}, {project} (long), {organization}, {org_contact} (optional). -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. Lands in `trials`; its form collects: {business}, {email}, {what_we_do} (long), {who_comes_to_us} (long), {what_we_keep_track_of} (long), {who_is_involved} (long), {what_slows_us_down} (long) (optional). -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. Lands in `applicants`; its form collects: {name}, {email}, {interest} (long), {note} (long) (optional). -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. Lands in `subscribers`; its form collects: {name}, {email}. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. Lands in `development_proposals`; its form collects: {submitted_by}, {email} (optional), {page} (optional), {rationale} (long), {proposed_yaml} (long). -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. Lands in `custody_requests`; its form collects: {name}, {email}, {about}, {what} (long). -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. Lands in `organizations`; its form collects: {name}, {contact}, {note} (long) (optional). - -The page: aggregates.yaml -It is the mails the site sends. Under each bucket, each stage that sends one has a `subject` and a `body`: the mail a person gets the moment their case enters that stage, saying what happened and what, if anything, they can do now. Plain text, at most three short sentences plus the link line, no greeting longer than one word, in the business's voice. Keep every `{...}` placeholder exactly as it is - `{site}`, `{chain}`, `{email}` and any field name are filled in by the site - and keep any line with a link in it. The person reads the mail alone, days later, maybe among others: every mail says what it is about in their terms, using a field they filled in as a `{placeholder}` where one names it (the fields each bucket's forms collect are listed under the needs above), never `this` or `your message` alone and never the business's own words for things; and every mail ends with the business's name on its own line, so they know who wrote. A subject names the case by a short field (a name, a place, a choice), never a long one marked `(long)`, which would put a whole answer in the inbox list. Never use a field marked `(optional)`: whoever skipped it gets a blank where it was. Promise only what the site does: a desk's decision carries no written reason, so a mail about a decision never says one was written - it says they can reply to this mail to ask, and a reply reaches the people who decided. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "custody_requests": { - "declined": { - "subject": "", - "body": "" - }, - "open": { - "subject": "", - "body": "" - }, - "resolved": { - "subject": "", - "body": "" - } - }, - "projects": { - "accepted": { - "subject": "", - "body": "" - }, - "declined": { - "subject": "", - "body": "" - }, - "open": { - "subject": "", - "body": "" - } - }, - "trials": { - "approved": { - "subject": "", - "body": "" - }, - "declined": { - "subject": "", - "body": "" - }, - "open": { - "subject": "", - "body": "" - }, - "previewed": { - "subject": "", - "body": "" - } - } -} - -Reply with the JSON object only. - -=== REPLY === -{ - "custody_requests": { - "declined": { - "subject": "Your request about {about}: declined", - "body": "{name}, the custodians have declined your request about {about}. You can reply to this mail to ask about it, and a reply reaches the people who decided.\n{site}\nUHHM" - }, - "open": { - "subject": "We have your request about {about}", - "body": "{name}, your request about {about} has reached the custodians of the redoal network. A custodian will answer you at {email}.\n{site}\nUHHM" - }, - "resolved": { - "subject": "Your request about {about} is resolved", - "body": "{name}, the custodians have resolved your request about {about}. If something is still wrong, reply to this mail and a custodian will read it.\n{site}\nUHHM" - } - }, - "projects": { - "accepted": { - "subject": "{organization}: we would like to take your project on", - "body": "{name}, we have read the brief from {organization} and would like to take the project on. Reply to this mail and we will agree on the next step.\n{site}\nUHHM" - }, - "declined": { - "subject": "{organization}: we cannot take your project on", - "body": "{name}, we have read the brief from {organization} and cannot take the project on. You can reply to this mail to ask about it, and a reply reaches the people who decided.\n{site}\nUHHM" - }, - "open": { - "subject": "We have the brief from {organization}", - "body": "{name}, the brief from {organization} has reached us, and we will read all of it. You will get a considered reply at {email}.\n{site}\nUHHM" - } - }, - "trials": { - "approved": { - "subject": "{business}: your trial is approved", - "body": "We have approved the trial for {business}, and we are now building a first draft of a site from your own words. You will get a mail at {email} when it is ready to look at.\n{site}\nUHHM" - }, - "declined": { - "subject": "{business}: we cannot build your trial", - "body": "We have declined the trial for {business}. You can reply to this mail to ask about it, and a reply reaches the people who decided.\n{site}\nUHHM" - }, - "open": { - "subject": "We have your trial request for {business}", - "body": "Your request for {business} has reached us, and a person will read it before anything is built. You will hear from us at {email} once it has been decided.\n{site}\nUHHM" - }, - "previewed": { - "subject": "{business}: your first draft is ready", - "body": "The first draft of a site for {business} is ready for you to look at. Reply to this mail and tell us what fits and what does not.\n{site}\nUHHM" - } - } -} diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/llm/16-questions_status_development_proposals_index.yaml.md b/vendor/trainer/runs/uhhm-2026-09-28/site/llm/16-questions_status_development_proposals_index.yaml.md deleted file mode 100644 index 1b6ce2c..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/llm/16-questions_status_development_proposals_index.yaml.md +++ /dev/null @@ -1,45 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: questions/status/development_proposals/index.yaml -It is a public page anyone can open, read-only, listing ONLY the cases that have reached: approved. Nothing else is shown - do not promise the reader anything waiting or turned down. `question` is what this page asks; `heading` names the list. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "question": "", - "description": "", - "heading": "", - "list_description": "", - "list_title": "", - "list_note": "", - "empty": "", - "back": "" -} - -Reply with the JSON object only. - -=== REPLY === -{"question":"Which changes to this site have already been approved?","description":"These are the suggested page changes a person here has read and approved. Each one is being made or has been made.","heading":"See the changes we've approved","list_description":"Suggestions from visitors that we've read and agreed to make.","list_title":"Approved changes","list_note":"Each row is one suggested change to a page on this site that has been approved; the list shows nothing else.","empty":"No changes have been approved yet. If you see something on a page that should be different, send us your suggestion.","back":"Suggest a change"} diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/llm/17-site.yaml.md b/vendor/trainer/runs/uhhm-2026-09-28/site/llm/17-site.yaml.md deleted file mode 100644 index 6137b67..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/llm/17-site.yaml.md +++ /dev/null @@ -1,41 +0,0 @@ -You write the words for one page of a website for this business. - -Business: UHHM -About: UHHM builds software around a clear argument: infrastructure, tools and products for organizations that can say what problem they have. It also builds and carries the redoal network - the gesture math, the relay, the first node, and the portal this site runs on - and answers for what that network keeps. -Contact: Bendik Aagaard Lynghaug -Language to write in: en - -Everyone the site serves: -- commission: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing. Handled by owners. Stages: open -> accepted -> declined. -- trial: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first. Handled by owners. Stages: open -> approved -> previewed -> declined. -- collaborate: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit. Handled by owners. Stages: open -> invited -> active -> departed -> declined. -- subscribe: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out. Handled by owners. Stages: open -> unsubscribed. -- propose: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made. Handled by owners. Stages: open -> approved -> rejected. -- custody: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not. Handled by custodians. Stages: open -> in_dialogue -> resolved -> declined. -- prospect: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk. Handled by owners. Stages: prospect -> client -> past_client. - -The page: site.yaml -It is the invite mail: the first mail a person gets when a member of the business brings them in to help (onto a desk, into a committee), carrying the one-time link that lets them set a password. `subject` and `body` under `invite`. They did not ask for it, so say who brought them in and to what, then the link and when it runs out, then where they sign in afterwards. Plain text, short lines. Keep every `{...}` placeholder exactly as it is: `{name}`, `{username}`, `{group}`, `{link}`, `{expires}`, `{site}`, `{site_name}` are filled in by the site, and `{link}` must stay on a line of its own. - -Below is the page as JSON. Every value is a slot that says what to write there. Return the same JSON with every slot replaced by your words. Keep every key exactly as it is. A slot left as it is counts as no answer. - -Rules for the words: -- `question` is a question the reader could ask themselves. -- A heading says what the reader gets, in the reader's own words, and must work without its description. -- Lead with what a thing enables. No negations in headings. No trade jargon the reader would not use. -- Descriptions are one or two short sentences. Labels and buttons are a few words. -- The button says what pressing it does; the encouragement says what happens next or how little it takes; the form's guidance line says what to have ready. Placeholders are example answers in the reader's words. -- An icon is one name from this list, chosen for what the reader is doing, or empty: house, building-2, store, school, map-pin, route, footprints, trees, leaf, snowflake, sun, users, user, user-plus, user-check, baby, heart-handshake, hand-helping, handshake, smile, mail, phone, message-circle, megaphone, bell, send, inbox, alert-triangle, siren, shield, construction, hammer, wrench, ruler, package, truck, car, bus, train-front, bike, calendar, clock, file-text, clipboard-list, receipt, wallet, coins, banknote, credit-card, key, lock, search, star, gift, shopping-cart, lightbulb, flag, thumbs-up, check-circle, briefcase, stethoscope, activity, camera, pencil, refresh-cw, list, layers, vote, scale -- Write the way people in this trade and country actually speak. - -{ - "invite": { - "subject": "", - "body": "" - } -} - -Reply with the JSON object only. - -=== REPLY === -{"invite": {"subject": "{name}, you have been invited to {group} on {site_name}", "body": "Hello {name},\n\nA member of {site_name} has brought you in to help\non {group}.\n\nYour username is {username}.\n\nUse this one-time link to set a password:\n\n{link}\n\nThe link runs out {expires}.\nIf it has run out, ask the person who invited you\nfor a new one.\n\nAfterwards you sign in at {site}\nwith your username and the password you chose.\n\nIf you were not expecting this, you can ignore\nthis mail. Nothing happens until the link is used.\n\n{site_name}"}} diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/needs.yaml b/vendor/trainer/runs/uhhm-2026-09-28/site/needs.yaml deleted file mode 100644 index 9237b12..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/needs.yaml +++ /dev/null @@ -1,204 +0,0 @@ -needs: -- id: commission - who: an organization with a problem it wants software to solve - wants: a considered reply to a brief, from people who read the whole thing - enters: / - via: 'Have us build it: send the brief' - lands_in: projects - handled_by: owners - stages: - - open - - accepted - - declined - done_when: - - accepted - - declined - success: - - accepted - max_steps: 1 - max_fields: 4 - stage_words: - open: received - accepted: taken on - declined: not a fit for us -- id: trial - who: someone who runs a business where requests, approvals and handovers get lost, and wants to see it as a site before committing to anything - wants: a first draft of a site for their own roles, built from their own words and approved by a person first - enters: / - via: See your own business as a site, before you buy anything - lands_in: trials - handled_by: owners - stages: - - open - - approved - - previewed - - declined - done_when: - - previewed - - declined - success: - - previewed - max_steps: 1 - max_fields: 6 - stage_words: - open: received - approved: approved for a draft - previewed: a preview is ready - declined: not a fit for us -- id: collaborate - who: someone who wants to work with us on what we build - wants: to be read as a person, and invited in if there is a fit - enters: / - via: Work with us - lands_in: applicants - handled_by: owners - stages: - - open - - invited - - active - - departed - - declined - done_when: - - departed - - declined - success: - - departed - max_steps: 1 - max_fields: 3 - stage_words: - open: received - invited: invited in - active: working with us - departed: moved on - declined: not a fit for us -- id: subscribe - who: someone who wants to hear from us when there is something to say - wants: a note now and then, and an easy way out - enters: / - via: Hear from us now and then - lands_in: subscribers - handled_by: owners - stages: - - open - - unsubscribed - done_when: - - unsubscribed - success: [] - max_steps: 1 - max_fields: 2 - stage_words: - open: on the list - unsubscribed: off the list -- id: propose - who: a visitor who sees how a page on this site should change - wants: the change read by a person and, if approved, made - enters: / - via: Suggest a change to this website - lands_in: development_proposals - handled_by: owners - stages: - - open - - approved - - rejected - done_when: - - approved - - rejected - success: - - approved - max_steps: 1 - max_fields: 3 - stage_words: - open: received - approved: approved - rejected: turned down -- id: custody - who: someone who runs, builds on, or is affected by the redoal network and needs the people who keep its first node - wants: an answer from a custodian, and action where the network keeps something it should not - enters: / - via: 'You are on the redoal network: a node, an app, or a recording that concerns you' - lands_in: custody_requests - handled_by: custodians - stages: - - open - - in_dialogue - - resolved - - declined - done_when: - - resolved - - declined - success: - - resolved - max_steps: 1 - max_fields: 4 - stage_words: - open: received - in_dialogue: in dialogue with a custodian - resolved: resolved - declined: closed without action -- id: prospect - who: an owner who has met an organization worth following up - wants: it written down and walked through its states from the desk - enters: /owners/prospect - via: Keep an organization on your radar - lands_in: organizations - handled_by: owners - stages: - - prospect - - client - - past_client - done_when: - - past_client - success: [] - max_steps: 1 - max_fields: 2 - stage_words: - prospect: a prospect - client: a client - past_client: a past client - enters_as: owners -personas: -- id: architecture-firm - need: commission - text: We run a small architecture firm and our project files are scattered across three cloud drives. We want to pay someone to set up proper storage and backups we control ourselves. -- id: climbing-gym-founder - need: commission - text: I have an idea for a booking app for climbing gyms and I'm looking for a team that can build the first version with me. -- id: municipality-buyer - need: commission - text: Our municipality needs an internal tool for tracking building permits. We are looking for a vendor who can scope it and deliver it. -- id: exhibition-visitor - need: subscribe - text: I saw your drawing network at an exhibition and liked it. I don't want to get involved, I'd just like to know when there is news. -- id: tech-journalist - need: subscribe - text: I write about Nordic technology. Keep me posted on what you release so I can cover it. -- id: rust-developer - need: collaborate - text: I'm a Rust developer between jobs and I like that you build in the open. I would love to contribute, and maybe join you. -- id: interaction-designer - need: collaborate - text: I'm an interaction designer. I want to work with you on the drawing interface. -- id: student-intern - need: collaborate - text: I'm a computer science student looking for a summer internship doing infrastructure work. -- id: plumber-owner - need: trial - text: I run a plumbing company with four vans. Jobs come in by phone and text and some get lost. I'd like to see how this would look for us before I spend any money. -- id: dance-school - need: trial - text: We are a dance school. Enrolments, cancellations and invoices all go through one email inbox that only I understand. Can you show me a version made for us? -- id: node-runner - need: custody - text: I run a small server in Berlin and want to host a redoal node that peers with yours. Who do I talk to? -- id: recorded-name - need: custody - text: Someone left a recording on redoal that says my full name and where I live. I want it gone, and I want to know who is responsible for that network. -- id: app-builder - need: custody - text: I'm building a music app and would like to use redoal's gesture addresses in it. Is that possible, and who decides? -- id: wording-fix - need: propose - text: The subscribe page should say how often you actually write. I'd like to suggest that exact change to the page. -- id: rewrite - need: propose - text: One page on this site reads wrong to me and I know exactly how I'd rewrite it. Where do I send the new text? diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/custodians/_section.yaml b/vendor/trainer/runs/uhhm-2026-09-28/site/questions/custodians/_section.yaml deleted file mode 100644 index de40ef5..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/custodians/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: custodians diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/custodians/index.yaml b/vendor/trainer/runs/uhhm-2026-09-28/site/questions/custodians/index.yaml deleted file mode 100644 index b652985..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/custodians/index.yaml +++ /dev/null @@ -1,65 +0,0 @@ -name: What is waiting on the custodians? -description: 'The desk for custodians: open custody cases, and the people invited to answer them.' -responsible: - name: Bendik Aagaard Lynghaug - contact: bl@uhhm.no -alternatives: -- name: Custody cases waiting on you - description: Cases from people who use, build on, or answer for something the redoal network touches, and need a custodian's word on it. - action: /custodians - consequence: - - Confirm - features: - - name: Custody requests - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: custody_requests - requires_group: custodians - transitions: - - from: in_dialogue - to: resolved - label: Mark resolved - - from: in_dialogue - to: declined - label: Close, no action - - from: open - to: in_dialogue - label: Open dialogue - - from: open - to: declined - label: Decline case -- name: Bring in another custodian - description: Give someone an account and a one-time link to join as a custodian. - action: /custodians - consequence: - - Invite custodian - invite: - group: custodians - features: - - name: Invite a custodian - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Name - - name: email - label: Email - type: email -- name: Invited custodians - description: Custodians invited but not yet signed in. - action: /custodians - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: custodians - transitions: - - from: open - to: done - label: Signed in diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/decide/commission.yaml b/vendor/trainer/runs/uhhm-2026-09-28/site/questions/decide/commission.yaml deleted file mode 100644 index e154dee..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/decide/commission.yaml +++ /dev/null @@ -1,11 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Declined - description: '' - self_transition: - bucket: projects - to: declined - from: - - open - label: Declined diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/decide/custody.yaml b/vendor/trainer/runs/uhhm-2026-09-28/site/questions/decide/custody.yaml deleted file mode 100644 index 1a16c03..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/decide/custody.yaml +++ /dev/null @@ -1,11 +0,0 @@ -name: What would you like to do? -description: '' -alternatives: -- name: Resolved - description: '' - self_transition: - bucket: custody_requests - to: resolved - from: - - in_dialogue - label: Resolved diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/decide/subscribe.yaml b/vendor/trainer/runs/uhhm-2026-09-28/site/questions/decide/subscribe.yaml deleted file mode 100644 index 0519fec..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/decide/subscribe.yaml +++ /dev/null @@ -1,11 +0,0 @@ -name: Do you want to keep hearing from us? -description: You're on our list. Change your mind whenever you like. -alternatives: -- name: Stop getting notes from us - description: You'll stop hearing from us. Nothing else changes. - self_transition: - bucket: subscribers - to: unsubscribed - from: - - open - label: Unsubscribe diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/index.yaml b/vendor/trainer/runs/uhhm-2026-09-28/site/questions/index.yaml deleted file mode 100644 index 11d329b..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/index.yaml +++ /dev/null @@ -1,273 +0,0 @@ -name: What is UHHM, and what can you get here? -description: UHHM builds software for organisations that can say what problem they have, and keeps the redoal network underneath. -responsible: - name: Bendik Aagaard Lynghaug - contact: bl@uhhm.no -alternatives: -- name: What UHHM does - description: Two things, both built here and both running. - features: - - name: A considered reply to your brief, and software that fits the argument - description: 'Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.' - icon: lucide:layers - - name: A network that answers to you - description: 'UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved.' -- name: Have a look around first - description: Nothing to fill in here. What is already out in the world, and the network as it runs right now. - features: - - name: What we have built - description: A few things already out in the world. - icon: lucide:hammer - resource: - public: true - source: - kind: gitea_starred - username: bl - jq: | - .[] | {name: .name, description: .description, url: (if .website != null and .website != "" then .website elif .private then null else .html_url end)} - - name: The redoal network, live - description: Straight from the relay, the first node of the network. - icon: lucide:activity - resource: - public: true - source: - kind: url - url: https://relay.redoal.com/pulse - jq: | - { "name": (.voices_echoed | tostring), - "description": "voices echoed so far" } - empty: The first voice has not echoed yet. - - name: Changes to this site we have approved - description: Suggestions from visitors that a person here has read and approved, open for anyone to read. [Changes to this site we have approved](/status/development_proposals) - icon: lucide:list -- name: 'Have us build it: send the brief' - description: You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing. - action: /received/commission - consequence: - - Send the brief - record_as: projects - features: - - name: What happens next - description: We read your brief and either take it on or tell you honestly if it's not a fit. - icon: lucide:route - - name: Who reads this - description: One of the owners reads it; write to bl@uhhm.no if you'd rather reach us directly. - icon: lucide:user-check - - name: Tell us the problem - requirements: - - name: name - label: Your name - type: text - placeholder: Sara Nilsen - - name: email - label: Your email - type: email - placeholder: sara@company.com - - name: project - label: The problem you want solved - type: textarea - placeholder: Our drivers log hours on paper and it takes a day to get them into payroll. - - name: organization - label: Your organization - type: text - placeholder: Nilsen Transport AS - - name: org_contact - label: Who we should talk to - type: text - optional: true - placeholder: Sara Nilsen, ops manager - description: The more of the problem you put in, the better the reply. - icon: lucide:briefcase - encouragements: - - Someone here reads every brief in full before writing back. -- name: See your own business as a site, before you buy anything - description: Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through. - action: /received/trial - consequence: - - Start the draft - record_as: trials - features: - - name: What happens next - description: We look at what you sent and, if it's a fit, build a draft from your own roles and words for you to see before anything moves further. - icon: lucide:route - - name: Who reads this - description: An owner looks at what you send; write to bl@uhhm.no if you'd rather reach us directly. - icon: lucide:user-check - - name: Describe your business - requirements: - - name: business - label: Your business - type: text - placeholder: Nilsen Transport AS - - name: email - label: Your email - type: email - placeholder: sara@company.com - - name: what_we_do - label: What you do - type: textarea - placeholder: We move freight for local businesses and handle the paperwork for them. - - name: who_comes_to_us - label: Who comes to you - type: textarea - placeholder: Local businesses that need something moved on short notice. - - name: what_we_keep_track_of - label: What you keep track of - type: textarea - placeholder: Bookings, driver hours, and which loads are still waiting on a signature. - - name: who_is_involved - label: Who's involved - type: textarea - placeholder: Drivers, dispatchers, and the customers waiting on their delivery. - - name: what_slows_us_down - label: What slows you down - type: textarea - optional: true - placeholder: Approvals sit in someone's inbox for days before anyone acts on them. - description: Answer in your own words - there's no wrong way to describe your business. - icon: lucide:layers - encouragements: - - A person looks at what you send before anything gets built. -- name: Work with us - description: 'A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.' - action: /received/collaborate - consequence: - - Get in touch - record_as: applicants - features: - - name: What happens next - description: We read what you send and get back to you. If there's a fit, we invite you in and you start working with us — and if things ever change, that's fine too. - icon: lucide:route - - name: Who reads this - description: One of the owners reads this directly — for anything urgent, write to bl@uhhm.no. - icon: lucide:user-check - - name: Say hello - requirements: - - name: name - label: Name - type: text - placeholder: Your name - - name: email - label: Email - type: email - placeholder: you@example.com - - name: interest - label: What kind of work - type: textarea - placeholder: Backend work, or something design-heavy - - name: note - label: Tell us more - type: textarea - optional: true - placeholder: A bit about what you'd want to work on, or a link to your work - description: Tell us who you are and what kind of work you're after. - icon: lucide:handshake - encouragements: - - A person reads this, not a form filter — worth the ten minutes. -- name: Hear from us now and then - description: You'd rather hear from us now and then than check back on your own. - action: /received/subscribe - consequence: - - Sign up - record_as: subscribers - features: - - name: What happens next - description: You're on the list. We write when there's something worth saying, and you can leave the list whenever you like. - icon: lucide:bell - - name: Who reads this - description: An owner sends these notes directly — write to bl@uhhm.no if you'd rather ask something first. - icon: lucide:user-check - - name: Stay in the loop - requirements: - - name: name - label: Name - type: text - placeholder: Your name - - name: email - label: Email - type: email - placeholder: you@example.com - description: Just your email, or your name too if you'd like. - icon: lucide:mail - encouragements: - - One click unsubscribes you later, no questions asked. -- name: Suggest a change to this website - description: You have spotted a page on uhhm.no that should read differently, and you know roughly how. - action: /received/propose - consequence: - - Send change - record_as: development_proposals - features: - - name: What happens next - description: Someone here reads your proposal and either makes the change or explains why not. Either way, you'll hear back. - icon: lucide:route - - name: Who reads this - description: An owner reads every proposal before anything changes — reach us at bl@uhhm.no if it's time-sensitive. - icon: lucide:user-check - - name: Propose a change - requirements: - - name: submitted_by - label: Your name - type: text - placeholder: Your name - - name: email - label: Email - type: email - optional: true - placeholder: you@example.com - - name: page - label: Which page - type: text - optional: true - placeholder: questions/join/index.yaml - - name: rationale - label: Why this is better - type: textarea - placeholder: The current heading doesn't say what you actually get - - name: proposed_yaml - label: Your proposed text - type: textarea - placeholder: 'heading: "A clearer way to say this"' - description: Point us to the page and show us the change. - icon: lucide:pencil - encouragements: - - Even a rough version helps — we can tidy the wording ourselves. -- name: 'You are on the redoal network: a node, an app, or a recording that concerns you' - description: UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at. - action: /received/custody - consequence: - - Send to a custodian - record_as: custody_requests - features: - - name: What happens next - description: A custodian opens a dialogue with you. A node gets its peer, a builder gets an answer, and something the network should not keep gets removed. Either way you hear what was decided. - icon: lucide:route - - name: Who reads this - description: A custodian reads it directly; if it's urgent, write to bl@uhhm.no in the meantime. - icon: lucide:user-check - - name: Reach a custodian - requirements: - - name: name - label: Name - type: text - placeholder: Your name - - name: email - label: Email - type: email - placeholder: you@yourcompany.com - - name: about - label: What's going on - type: select - options: - - Running a node of my own - - Building on the network - - Something the network keeps about me - - Something else - - name: what - label: In short - type: textarea - placeholder: A relay node is misbehaving - description: Say which of the four it is, and what you need, in a few lines. - icon: lucide:shield - encouragements: - - A custodian reads every message that comes in here. diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/owners/_section.yaml b/vendor/trainer/runs/uhhm-2026-09-28/site/questions/owners/_section.yaml deleted file mode 100644 index 670fca7..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/owners/_section.yaml +++ /dev/null @@ -1 +0,0 @@ -qualifies: owners diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/owners/index.yaml b/vendor/trainer/runs/uhhm-2026-09-28/site/questions/owners/index.yaml deleted file mode 100644 index 1e54bc9..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/owners/index.yaml +++ /dev/null @@ -1,209 +0,0 @@ -name: What's waiting on me today? -description: 'Everything waiting on you: briefs, trials, applicants, subscribers, and proposals, all in one place.' -responsible: - name: Bendik Aagaard Lynghaug - contact: bl@uhhm.no -alternatives: -- name: People who want to build with us - description: People who've asked to build with us, waiting on a decision or already working alongside us. - action: /owners - consequence: - - Confirm - features: - - name: Applicants - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: applicants - requires_group: owners - transitions: - - from: active - to: departed - label: Mark departed - - from: invited - to: active - label: Confirm active - - from: invited - to: declined - label: Withdraw the invite - - from: open - to: invited - label: Send invite - - from: open - to: declined - label: Decline applicant -- name: What's been raised with custodians - description: Questions and issues raised with the people who keep the first node - custodians handle these, but you can see where each one stands. - action: /owners - consequence: - - Confirm - features: - - name: Custody requests - description: Each row is one case and the stage it has reached. Another desk moves these. - resource: - source: - kind: kv - bucket: custody_requests - requires_group: owners - transitions: [] -- name: Proposed changes to the site - description: Changes visitors have proposed for pages on this site, waiting on a yes or no. - action: /owners - consequence: - - Confirm - features: - - name: Development proposals - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: development_proposals - requires_group: owners - transitions: - - from: open - to: approved - label: Approve change - - from: open - to: rejected - label: Reject change -- name: Organizations you're tracking - description: Organizations you've met, tracked from first contact through to client and beyond. - action: /owners - consequence: - - Confirm - features: - - name: Organizations - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: organizations - requires_group: owners - transitions: - - from: client - to: past_client - label: Mark past client - - from: prospect - to: client - label: Mark as client - - from: prospect - to: past_client - label: Archive as past client -- name: Briefs waiting on a reply - description: Briefs sent in by organizations with a problem they want solved. - action: /owners - consequence: - - Confirm - features: - - name: Projects - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: projects - requires_group: owners - transitions: - - from: open - to: accepted - label: Accept brief - - from: open - to: declined - label: Decline brief -- name: Who's hearing from you - description: People who want to hear from you now and then. - action: /owners - consequence: - - Confirm - features: - - name: Subscribers - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: subscribers - requires_group: owners - transitions: - - from: open - to: unsubscribed - label: Unsubscribe them -- name: Trial sites in progress - description: Businesses who want to see their own workflow as a working site before committing to anything. - action: /owners - consequence: - - Confirm - features: - - name: Trials - description: Each row is one case. The buttons record what you have just done with it. - resource: - source: - kind: kv - bucket: trials - requires_group: owners - transitions: - - from: approved - to: previewed - label: Mark previewed - - from: approved - to: declined - label: Decline trial - - from: open - to: approved - label: Approve trial - - from: open - to: declined - label: Decline trial -- name: Track a new organization - description: Write down an organization worth following up, and track it from first contact onward. - action: /owners/prospect - consequence: - - Add prospect -- name: Bring in a custodian - description: Bring someone in to help keep the first node and answer for the network. - action: /owners - consequence: - - Send invite - invite: - group: custodians - features: - - name: Invite a custodian - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Their name - - name: email - label: Their email - type: email -- name: Bring in another owner - description: Bring someone in to work this desk alongside you. - action: /owners - consequence: - - Send invite - invite: - group: owners - features: - - name: Invite an owner - description: Their name, and the address the account and its one-time link go to. - requirements: - - name: name - label: Their name - - name: email - label: Their email - type: email -- name: Invites you've sent - description: People you've invited in, and whether they've taken it up yet. - action: /owners - consequence: - - Confirm - features: - - name: Who has been invited - description: Each row is one invitation, with the one-time link while it is unused. - resource: - source: - kind: kv - bucket: portal_invites - requires_group: owners - transitions: - - from: open - to: done - label: Taken up diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/owners/prospect-sent.yaml b/vendor/trainer/runs/uhhm-2026-09-28/site/questions/owners/prospect-sent.yaml deleted file mode 100644 index 7131587..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/owners/prospect-sent.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens to this now? -description: Thanks — we've got your prospect written down, and it now moves through the desk with everything else we're tracking. -alternatives: -- name: It's on the desk now - description: An owner walks it from prospect to client, and on to past client, as the relationship moves. -- name: Back to site - description: '' - action: /owners - consequence: - - Back to site diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/owners/prospect.yaml b/vendor/trainer/runs/uhhm-2026-09-28/site/questions/owners/prospect.yaml deleted file mode 100644 index 1cf4f91..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/owners/prospect.yaml +++ /dev/null @@ -1,39 +0,0 @@ -followup: false -name: Is there an organization I should be keeping track of? -description: Write down an organization worth following up, and move it through client and past client as things develop. -responsible: - name: Bendik Aagaard Lynghaug - contact: bl@uhhm.no -alternatives: -- name: Keep an organization on your radar - description: One line per organization worth watching, moved through the stages as things develop. - action: /owners/prospect-sent - consequence: - - Add to prospects - record_as: organizations - features: - - name: Moves as you update it - description: It sits as a prospect until something moves - then you mark it client, and later past client if the work ends. - icon: lucide:route - - name: Just for you - description: Only you see this, so keep it wherever you check next. - icon: lucide:user - - name: New prospect - requirements: - - name: name - label: Organization - type: text - placeholder: Nordvik Bakery - - name: contact - label: Contact - type: text - placeholder: met at the bakers' conference, [email protected] - - name: note - label: Note - type: textarea - optional: true - placeholder: wants a booking flow, follow up after harvest season - description: Name the organization and where things stand. - icon: lucide:briefcase - encouragements: - - Takes a minute, and it's yours to update later. diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/collaborate.yaml b/vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/collaborate.yaml deleted file mode 100644 index 2b242a4..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/collaborate.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens to what I just sent? -description: Your note is in. An owner reads every one and will get back to you if there's a fit worth exploring. -alternatives: -- name: We'll write if there's a fit - description: If it looks like a fit, we'll reach out to talk about where you could help. -- name: Back to site - description: '' - action: / - consequence: - - Back to site diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/commission.yaml b/vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/commission.yaml deleted file mode 100644 index 2e61686..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/commission.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now that we've sent our brief? -description: Your brief is in. An owner reads every commission end to end before replying. -alternatives: -- name: A real reply from someone who read it - description: Expect a reply within a few working days, either way, straight to your inbox. -- name: Back to home - description: '' - action: / - consequence: - - Back to home diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/custody.yaml b/vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/custody.yaml deleted file mode 100644 index ff53b61..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/custody.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: Who looks after what the network keeps? -description: A custodian reads every message about the redoal network and what it keeps. -alternatives: -- name: A custodian is on it - description: Expect a reply once your report has been looked at and the network checked. -- name: Back to the site - description: '' - action: / - consequence: - - Back to the site diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/propose.yaml b/vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/propose.yaml deleted file mode 100644 index 3d2330f..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/propose.yaml +++ /dev/null @@ -1,15 +0,0 @@ -name: What happens to my proposal now? -description: Your proposal is in. Someone here will read it and decide whether it fits before anything changes on the page. -alternatives: -- name: A read, then a decision - description: We'll write back once it's been read — approved and made live, or turned down with a reason. -- name: See all development proposals - description: '' - action: /status/development_proposals - consequence: - - Open -- name: Back home - description: '' - action: / - consequence: - - Back home diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/subscribe.yaml b/vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/subscribe.yaml deleted file mode 100644 index 8d0dfdd..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/subscribe.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now that I've subscribed? -description: You'll hear from us when there's something worth saying, not on a schedule. -alternatives: -- name: You're on the list - description: You're on the list. Every note has an unsubscribe link if it stops being useful. -- name: Back to site - description: '' - action: / - consequence: - - Back to site diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/trial.yaml b/vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/trial.yaml deleted file mode 100644 index 5727f80..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/received/trial.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: What happens now that you've sent this? -description: We read every trial request ourselves before anything gets built. -alternatives: -- name: A first draft, built from your own words - description: If it looks like a fit, we'll draft your site from your own words and send it back for your say before anything goes live. -- name: Back to site - description: '' - action: / - consequence: - - Back to site diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/status/development_proposals/index.yaml b/vendor/trainer/runs/uhhm-2026-09-28/site/questions/status/development_proposals/index.yaml deleted file mode 100644 index 1397829..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/questions/status/development_proposals/index.yaml +++ /dev/null @@ -1,25 +0,0 @@ -name: Which changes to this site have already been approved? -description: These are the suggested page changes a person here has read and approved. Each one is being made or has been made. -responsible: - name: Bendik Aagaard Lynghaug - contact: bl@uhhm.no -alternatives: -- name: See the changes we've approved - description: Suggestions from visitors that we've read and agreed to make. - features: - - name: Approved changes - description: Each row is one suggested change to a page on this site that has been approved; the list shows nothing else. - resource: - source: - kind: kv - bucket: development_proposals - public: true - states: - - approved - empty: No changes have been approved yet. If you see something on a page that should be different, send us your suggestion. - jq: '.[] | .responses |= {page: .page, proposed_yaml: .proposed_yaml, rationale: .rationale}' -- name: Suggest a change - description: '' - action: / - consequence: - - Suggest a change diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/site.yaml b/vendor/trainer/runs/uhhm-2026-09-28/site/site.yaml deleted file mode 100644 index 4cf6e7c..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/site.yaml +++ /dev/null @@ -1,30 +0,0 @@ -title: UHHM -lang: en -mail: - from: UHHM - reply_to: bl@uhhm.no - invite: - subject: '{name}, you have been invited to {group} on {site_name}' - body: |- - Hello {name}, - - A member of {site_name} has brought you in to help - on {group}. - - Your username is {username}. - - Use this one-time link to set a password: - - {link} - - The link runs out {expires}. - If it has run out, ask the person who invited you - for a new one. - - Afterwards you sign in at {site} - with your username and the password you chose. - - If you were not expecting this, you can ignore - this mail. Nothing happens until the link is used. - - {site_name} diff --git a/vendor/trainer/runs/uhhm-2026-09-28/site/words.json b/vendor/trainer/runs/uhhm-2026-09-28/site/words.json deleted file mode 100644 index 78937a5..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/site/words.json +++ /dev/null @@ -1,570 +0,0 @@ -{ - "aggregates.yaml": { - "custody_requests": { - "declined": { - "subject": "Your request about {about}: declined", - "body": "{name}, the custodians have declined your request about {about}. You can reply to this mail to ask about it, and a reply reaches the people who decided.\n{site}\nUHHM" - }, - "open": { - "subject": "We have your request about {about}", - "body": "{name}, your request about {about} has reached the custodians of the redoal network. A custodian will answer you at {email}.\n{site}\nUHHM" - }, - "resolved": { - "subject": "Your request about {about} is resolved", - "body": "{name}, the custodians have resolved your request about {about}. If something is still wrong, reply to this mail and a custodian will read it.\n{site}\nUHHM" - } - }, - "projects": { - "accepted": { - "subject": "{organization}: we would like to take your project on", - "body": "{name}, we have read the brief from {organization} and would like to take the project on. Reply to this mail and we will agree on the next step.\n{site}\nUHHM" - }, - "declined": { - "subject": "{organization}: we cannot take your project on", - "body": "{name}, we have read the brief from {organization} and cannot take the project on. You can reply to this mail to ask about it, and a reply reaches the people who decided.\n{site}\nUHHM" - }, - "open": { - "subject": "We have the brief from {organization}", - "body": "{name}, the brief from {organization} has reached us, and we will read all of it. You will get a considered reply at {email}.\n{site}\nUHHM\n\nWhat you can do next: {site}/decide/commission?chain={chain}&email={email}" - } - }, - "trials": { - "approved": { - "subject": "{business}: your trial is approved", - "body": "We have approved the trial for {business}, and we are now building a first draft of a site from your own words. You will get a mail at {email} when it is ready to look at.\n{site}\nUHHM" - }, - "declined": { - "subject": "{business}: we cannot build your trial", - "body": "We have declined the trial for {business}. You can reply to this mail to ask about it, and a reply reaches the people who decided.\n{site}\nUHHM" - }, - "open": { - "subject": "We have your trial request for {business}", - "body": "Your request for {business} has reached us, and a person will read it before anything is built. You will hear from us at {email} once it has been decided.\n{site}\nUHHM" - }, - "previewed": { - "subject": "{business}: your first draft is ready", - "body": "The first draft of a site for {business} is ready for you to look at. Reply to this mail and tell us what fits and what does not.\n{site}\nUHHM" - } - } - }, - "questions/custodians/index.yaml": { - "question": "What is waiting on the custodians?", - "description": "The desk for custodians: open custody cases, and the people invited to answer them.", - "confirm": "Confirm", - "buckets": { - "custody_requests": { - "heading": "Custody cases waiting on you", - "description": "Cases from people who use, build on, or answer for something the redoal network touches, and need a custodian's word on it.", - "moves": { - "in_dialogue->resolved": "Mark resolved", - "in_dialogue->declined": "Close, no action", - "open->in_dialogue": "Open dialogue", - "open->declined": "Decline case" - }, - "list_title": "Custody requests", - "list_note": "Each row is one case. The buttons record what you have just done with it." - } - }, - "links": {}, - "invites": { - "custodians": { - "heading": "Bring in another custodian", - "description": "Give someone an account and a one-time link to join as a custodian.", - "button": "Invite custodian", - "form_title": "Invite a custodian", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Name", - "email": "Email" - } - } - }, - "invited": { - "heading": "Invited custodians", - "description": "Custodians invited but not yet signed in.", - "done": "Signed in", - "list_title": "Who has been invited", - "list_note": "Each row is one invitation, with the one-time link while it is unused." - } - }, - "questions/decide/commission.yaml": { - "question": "What would you like to do?", - "description": "", - "moves": { - "declined": { - "heading": "Declined", - "description": "", - "button": "Declined" - } - } - }, - "questions/decide/custody.yaml": { - "question": "What would you like to do?", - "description": "", - "moves": { - "resolved": { - "heading": "Resolved", - "description": "", - "button": "Resolved" - } - } - }, - "questions/decide/subscribe.yaml": { - "question": "Do you want to keep hearing from us?", - "description": "You're on our list. Change your mind whenever you like.", - "moves": { - "unsubscribed": { - "heading": "Stop getting notes from us", - "description": "You'll stop hearing from us. Nothing else changes.", - "button": "Unsubscribe" - } - } - }, - "questions/index.yaml": { - "question": "What is UHHM, and what can you get here?", - "description": "UHHM builds software for organisations that can say what problem they have, and keeps the redoal network underneath.", - "opener": { - "heading": "What UHHM does", - "description": "Two things, both built here and both running.", - "features": { - "software": { - "heading": "A considered reply to your brief, and software that fits the argument", - "description": "Infrastructure, tools and products for organizations that can say what problem they have. Bring the brief, or first see your own way of working as a working site, before you pay for anything. The brief stays yours: you can withdraw it yourself.", - "icon": "layers" - }, - "redoal": { - "heading": "A network that answers to you", - "description": "UHHM builds and carries the redoal network: the gesture math, the relay, the first node, and the portal this page runs on. Run a node, build on it, or have a recording removed, and you say when it is resolved.", - "icon": "waypoints" - } - } - }, - "shopping": { - "heading": "Have a look around first", - "description": "Nothing to fill in here. What is already out in the world, and the network as it runs right now.", - "items": { - "built": { - "heading": "What we have built", - "description": "A few things already out in the world.", - "icon": "hammer" - }, - "voices": { - "heading": "The redoal network, live", - "description": "Straight from the relay, the first node of the network.", - "icon": "activity" - }, - "status-development_proposals": { - "heading": "Changes to this site we have approved", - "description": "Suggestions from visitors that a person here has read and approved, open for anyone to read.", - "icon": "list" - } - } - }, - "doors": {}, - "needs": { - "commission": { - "heading": "Have us build it: send the brief", - "description": "You know the problem and want it solved, whether it is infrastructure, a tool, or the first version of a product. Write it up for people who read the whole thing.", - "button": "Send the brief", - "encouragement": "Someone here reads every brief in full before writing back.", - "icon": "briefcase", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "We read your brief and either take it on or tell you honestly if it's not a fit.", - "road_icon": "route", - "who_title": "Who reads this", - "who_description": "One of the owners reads it; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "form_title": "Tell us the problem", - "form_description": "The more of the problem you put in, the better the reply.", - "labels": { - "name": "Your name", - "email": "Your email", - "project": "The problem you want solved", - "organization": "Your organization", - "org_contact": "Who we should talk to" - }, - "hints": { - "name": "Sara Nilsen", - "email": "sara@company.com", - "project": "Our drivers log hours on paper and it takes a day to get them into payroll.", - "organization": "Nilsen Transport AS", - "org_contact": "Sara Nilsen, ops manager" - } - }, - "trial": { - "heading": "See your own business as a site, before you buy anything", - "description": "Describe how requests, approvals and handovers move through your business today. We approve it by hand and build a working draft of a site for your own roles, for you to click through.", - "button": "Start the draft", - "encouragement": "A person looks at what you send before anything gets built.", - "icon": "layers", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "We look at what you sent and, if it's a fit, build a draft from your own roles and words for you to see before anything moves further.", - "road_icon": "route", - "who_title": "Who reads this", - "who_description": "An owner looks at what you send; write to bl@uhhm.no if you'd rather reach us directly.", - "who_icon": "user-check", - "form_title": "Describe your business", - "form_description": "Answer in your own words - there's no wrong way to describe your business.", - "labels": { - "business": "Your business", - "email": "Your email", - "what_we_do": "What you do", - "who_comes_to_us": "Who comes to you", - "what_we_keep_track_of": "What you keep track of", - "who_is_involved": "Who's involved", - "what_slows_us_down": "What slows you down" - }, - "hints": { - "business": "Nilsen Transport AS", - "email": "sara@company.com", - "what_we_do": "We move freight for local businesses and handle the paperwork for them.", - "who_comes_to_us": "Local businesses that need something moved on short notice.", - "what_we_keep_track_of": "Bookings, driver hours, and which loads are still waiting on a signature.", - "who_is_involved": "Drivers, dispatchers, and the customers waiting on their delivery.", - "what_slows_us_down": "Approvals sit in someone's inbox for days before anyone acts on them." - } - }, - "collaborate": { - "heading": "Work with us", - "description": "A developer, a designer, a student: say what you would want to build with us, and we read it as a person and invite you in if there is a fit.", - "button": "Get in touch", - "encouragement": "A person reads this, not a form filter — worth the ten minutes.", - "icon": "handshake", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "We read what you send and get back to you. If there's a fit, we invite you in and you start working with us — and if things ever change, that's fine too.", - "road_icon": "route", - "who_title": "Who reads this", - "who_description": "One of the owners reads this directly — for anything urgent, write to bl@uhhm.no.", - "who_icon": "user-check", - "form_title": "Say hello", - "form_description": "Tell us who you are and what kind of work you're after.", - "labels": { - "name": "Name", - "email": "Email", - "interest": "What kind of work", - "note": "Tell us more" - }, - "hints": { - "name": "Your name", - "email": "you@example.com", - "interest": "Backend work, or something design-heavy", - "note": "A bit about what you'd want to work on, or a link to your work" - } - }, - "subscribe": { - "heading": "Hear from us now and then", - "description": "You'd rather hear from us now and then than check back on your own.", - "button": "Sign up", - "encouragement": "One click unsubscribes you later, no questions asked.", - "icon": "mail", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "You're on the list. We write when there's something worth saying, and you can leave the list whenever you like.", - "road_icon": "bell", - "who_title": "Who reads this", - "who_description": "An owner sends these notes directly — write to bl@uhhm.no if you'd rather ask something first.", - "who_icon": "user-check", - "form_title": "Stay in the loop", - "form_description": "Just your email, or your name too if you'd like.", - "labels": { - "name": "Name", - "email": "Email" - }, - "hints": { - "name": "Your name", - "email": "you@example.com" - } - }, - "propose": { - "heading": "Suggest a change to this website", - "description": "You have spotted a page on uhhm.no that should read differently, and you know roughly how.", - "button": "Send change", - "encouragement": "Even a rough version helps — we can tidy the wording ourselves.", - "icon": "pencil", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "Someone here reads your proposal and either makes the change or explains why not. Either way, you'll hear back.", - "road_icon": "route", - "who_title": "Who reads this", - "who_description": "An owner reads every proposal before anything changes — reach us at bl@uhhm.no if it's time-sensitive.", - "who_icon": "user-check", - "form_title": "Propose a change", - "form_description": "Point us to the page and show us the change.", - "labels": { - "submitted_by": "Your name", - "email": "Email", - "page": "Which page", - "rationale": "Why this is better", - "proposed_yaml": "Your proposed text" - }, - "hints": { - "submitted_by": "Your name", - "email": "you@example.com", - "page": "questions/join/index.yaml", - "rationale": "The current heading doesn't say what you actually get", - "proposed_yaml": "heading: \"A clearer way to say this\"" - } - }, - "custody": { - "heading": "You are on the redoal network: a node, an app, or a recording that concerns you", - "description": "UHHM hosts the redoal network's first node and answers for what it keeps. Write here if you run a node, build on the network, or want something it holds about you looked at.", - "button": "Send to a custodian", - "encouragement": "A custodian reads every message that comes in here.", - "icon": "shield", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "What happens next", - "road_description": "A custodian opens a dialogue with you. A node gets its peer, a builder gets an answer, and something the network should not keep gets removed. Either way you hear what was decided.", - "road_icon": "route", - "who_title": "Who reads this", - "who_description": "A custodian reads it directly; if it's urgent, write to bl@uhhm.no in the meantime.", - "who_icon": "user-check", - "form_title": "Reach a custodian", - "form_description": "Say which of the four it is, and what you need, in a few lines.", - "labels": { - "name": "Name", - "email": "Email", - "about": "What's going on", - "what": "In short" - }, - "hints": { - "name": "Your name", - "email": "you@yourcompany.com", - "about": "We run our order system on a relay node and it's been dropping messages since Tuesday", - "what": "A relay node is misbehaving" - } - } - } - }, - "questions/owners/index.yaml": { - "question": "What's waiting on me today?", - "description": "Everything waiting on you: briefs, trials, applicants, subscribers, and proposals, all in one place.", - "confirm": "Confirm", - "buckets": { - "applicants": { - "heading": "People who want to build with us", - "description": "People who've asked to build with us, waiting on a decision or already working alongside us.", - "moves": { - "active->departed": "Mark departed", - "invited->active": "Confirm active", - "invited->declined": "Withdraw the invite", - "open->invited": "Send invite", - "open->declined": "Decline applicant" - }, - "list_title": "Applicants", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "custody_requests": { - "heading": "What's been raised with custodians", - "description": "Questions and issues raised with the people who keep the first node - custodians handle these, but you can see where each one stands.", - "moves": {}, - "list_title": "Custody requests", - "list_note": "Each row is one case and the stage it has reached. Another desk moves these." - }, - "development_proposals": { - "heading": "Proposed changes to the site", - "description": "Changes visitors have proposed for pages on this site, waiting on a yes or no.", - "moves": { - "open->approved": "Approve change", - "open->rejected": "Reject change" - }, - "list_title": "Development proposals", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "organizations": { - "heading": "Organizations you're tracking", - "description": "Organizations you've met, tracked from first contact through to client and beyond.", - "moves": { - "client->past_client": "Mark past client", - "prospect->client": "Mark as client", - "prospect->past_client": "Archive as past client" - }, - "list_title": "Organizations", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "projects": { - "heading": "Briefs waiting on a reply", - "description": "Briefs sent in by organizations with a problem they want solved.", - "moves": { - "open->accepted": "Accept brief", - "open->declined": "Decline brief" - }, - "list_title": "Projects", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "subscribers": { - "heading": "Who's hearing from you", - "description": "People who want to hear from you now and then.", - "moves": { - "open->unsubscribed": "Unsubscribe them" - }, - "list_title": "Subscribers", - "list_note": "Each row is one case. The buttons record what you have just done with it." - }, - "trials": { - "heading": "Trial sites in progress", - "description": "Businesses who want to see their own workflow as a working site before committing to anything.", - "moves": { - "approved->previewed": "Mark previewed", - "approved->declined": "Decline trial", - "open->approved": "Approve trial", - "open->declined": "Decline trial" - }, - "list_title": "Trials", - "list_note": "Each row is one case. The buttons record what you have just done with it." - } - }, - "links": { - "prospect": { - "heading": "Track a new organization", - "description": "Write down an organization worth following up, and track it from first contact onward.", - "button": "Add prospect" - } - }, - "invites": { - "custodians": { - "heading": "Bring in a custodian", - "description": "Bring someone in to help keep the first node and answer for the network.", - "button": "Send invite", - "form_title": "Invite a custodian", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Their name", - "email": "Their email" - } - }, - "owners": { - "heading": "Bring in another owner", - "description": "Bring someone in to work this desk alongside you.", - "button": "Send invite", - "form_title": "Invite an owner", - "form_description": "Their name, and the address the account and its one-time link go to.", - "labels": { - "name": "Their name", - "email": "Their email" - } - } - }, - "invited": { - "heading": "Invites you've sent", - "description": "People you've invited in, and whether they've taken it up yet.", - "done": "Taken up", - "list_title": "Who has been invited", - "list_note": "Each row is one invitation, with the one-time link while it is unused." - } - }, - "questions/owners/prospect-sent.yaml": { - "question": "What happens to this now?", - "description": "Thanks — we've got your prospect written down, and it now moves through the desk with everything else we're tracking.", - "next_heading": "It's on the desk now", - "next_description": "An owner walks it from prospect to client, and on to past client, as the relationship moves.", - "back": "Back to site" - }, - "questions/owners/prospect.yaml": { - "heading": "Keep an organization on your radar", - "description": "One line per organization worth watching, moved through the stages as things develop.", - "button": "Add to prospects", - "encouragement": "Takes a minute, and it's yours to update later.", - "icon": "briefcase", - "requires_title": "", - "requires_description": "", - "requires_icon": "", - "road_title": "Moves as you update it", - "road_description": "It sits as a prospect until something moves - then you mark it client, and later past client if the work ends.", - "road_icon": "route", - "who_title": "Just for you", - "who_description": "Only you see this, so keep it wherever you check next.", - "who_icon": "user", - "form_title": "New prospect", - "form_description": "Name the organization and where things stand.", - "labels": { - "name": "Organization", - "contact": "Contact", - "note": "Note" - }, - "hints": { - "name": "Nordvik Bakery", - "contact": "met at the bakers' conference, [email protected]", - "note": "wants a booking flow, follow up after harvest season" - }, - "question": "Is there an organization I should be keeping track of?", - "page_description": "Write down an organization worth following up, and move it through client and past client as things develop." - }, - "questions/received/collaborate.yaml": { - "question": "What happens to what I just sent?", - "description": "Your note is in. An owner reads every one and will get back to you if there's a fit worth exploring.", - "next_heading": "We'll write if there's a fit", - "next_description": "If it looks like a fit, we'll reach out to talk about where you could help.", - "back": "Back to site" - }, - "questions/received/commission.yaml": { - "question": "What happens now that we've sent our brief?", - "description": "Your brief is in. An owner reads every commission end to end before replying.", - "next_heading": "A real reply from someone who read it", - "next_description": "Expect a reply within a few working days, either way, straight to your inbox.", - "back": "Back to home" - }, - "questions/received/custody.yaml": { - "question": "Who looks after what the network keeps?", - "description": "A custodian reads every message about the redoal network and what it keeps.", - "next_heading": "A custodian is on it", - "next_description": "Expect a reply once your report has been looked at and the network checked.", - "back": "Back to the site" - }, - "questions/received/propose.yaml": { - "question": "What happens to my proposal now?", - "description": "Your proposal is in. Someone here will read it and decide whether it fits before anything changes on the page.", - "next_heading": "A read, then a decision", - "next_description": "We'll write back once it's been read — approved and made live, or turned down with a reason.", - "back": "Back home", - "see_all": { - "heading": "See all development proposals", - "description": "", - "button": "Open" - } - }, - "questions/received/subscribe.yaml": { - "question": "What happens now that I've subscribed?", - "description": "You'll hear from us when there's something worth saying, not on a schedule.", - "next_heading": "You're on the list", - "next_description": "You're on the list. Every note has an unsubscribe link if it stops being useful.", - "back": "Back to site" - }, - "questions/received/trial.yaml": { - "question": "What happens now that you've sent this?", - "description": "We read every trial request ourselves before anything gets built.", - "next_heading": "A first draft, built from your own words", - "next_description": "If it looks like a fit, we'll draft your site from your own words and send it back for your say before anything goes live.", - "back": "Back to site" - }, - "questions/status/development_proposals/index.yaml": { - "question": "Which changes to this site have already been approved?", - "description": "These are the suggested page changes a person here has read and approved. Each one is being made or has been made.", - "heading": "See the changes we've approved", - "list_description": "Suggestions from visitors that we've read and agreed to make.", - "list_title": "Approved changes", - "list_note": "Each row is one suggested change to a page on this site that has been approved; the list shows nothing else.", - "empty": "No changes have been approved yet. If you see something on a page that should be different, send us your suggestion.", - "back": "Suggest a change" - }, - "site.yaml": { - "invite": { - "subject": "{name}, you have been invited to {group} on {site_name}", - "body": "Hello {name},\n\nA member of {site_name} has brought you in to help\non {group}.\n\nYour username is {username}.\n\nUse this one-time link to set a password:\n\n{link}\n\nThe link runs out {expires}.\nIf it has run out, ask the person who invited you\nfor a new one.\n\nAfterwards you sign in at {site}\nwith your username and the password you chose.\n\nIf you were not expecting this, you can ignore\nthis mail. Nothing happens until the link is used.\n\n{site_name}" - } - } -} \ No newline at end of file diff --git a/vendor/trainer/runs/uhhm-2026-09-28/words-status.json b/vendor/trainer/runs/uhhm-2026-09-28/words-status.json deleted file mode 100644 index 687164a..0000000 --- a/vendor/trainer/runs/uhhm-2026-09-28/words-status.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "questions/status/development_proposals/index.yaml": { - "question": "Which changes to this site have already been approved?", - "description": "These are the suggested page changes a person here has read and approved. Each one is being made or has been made.", - "heading": "See the changes we've approved", - "list_description": "Suggestions from visitors that we've read and agreed to make.", - "list_title": "Approved changes", - "list_note": "Each row is one suggested change to a page on this site that has been approved; the list shows nothing else.", - "empty": "No changes have been approved yet. If you see something on a page that should be different, send us your suggestion.", - "back": "Suggest a change" - } -} \ No newline at end of file