plan: intake to plan by a model; doors, labelled groups, the whole card
Work from another session, committed as found (tests green): - `plan` reads an intake into a plan.yaml (a model decides needs, stages, forms and budgets; a person reads the result before build). - Plans gain `doors` (a first question before the forms, when a front door would carry more than five needs), `groups` with labels that a select may draw its options from (`options_from: groups`), `private` fields kept off public pages, `multiple` selects, and `max_fields` as what the intake said the person will tolerate. - `card.rs`: an alternative as the visitor meets it, in text, so the answering visitor and `rate` read the served card, not the heading. - `rate` reads followup pages from the repo and reports "what happens next" as not measured rather than zero when it cannot. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01L4jrCgLiKKHAEFuZUJjckH
This commit is contained in:
co-authored by
Claude Fable 5.1
parent
baf36319b7
commit
255aeb4f4b
@@ -15,13 +15,18 @@ portal-trainer build --plan plans/contractor.yaml --out out/nordvik \
|
||||
--lint question_lint --llm "MODEL=nemotron-3.5-lightning:30b-a3b engines/ollama.sh"
|
||||
```
|
||||
|
||||
A `plan.yaml` is a needs spec that also says what each form collects.
|
||||
Everything structural is derived from it with no model involved: the
|
||||
state machines (read off `stages`: walk the line, be turned down at
|
||||
any point, succeed only from the end, pass over `skippable` stages),
|
||||
the front door, a followup page per need, a gated directory per group
|
||||
with its desk and the pages only that group may open, and every button
|
||||
the machine allows. The verifier accepts the result by construction.
|
||||
A `plan.yaml` is a needs spec that also says what each form collects
|
||||
and, per need, `max_fields`: how many required fields that person
|
||||
will tolerate, taken from what the business said about them, never
|
||||
from the form. `build` refuses a form over its budget, and hands the
|
||||
budget to the verifier, so the check still means something after
|
||||
handover. Everything structural is derived from the plan with no
|
||||
model involved: the state machines (read off `stages`: walk the line,
|
||||
be turned down at any point, succeed only from the end, pass over
|
||||
`skippable` stages), the front door, a followup page per need, a gated
|
||||
directory per group with its desk and the pages only that group may
|
||||
open, and every button the machine allows. The verifier accepts the
|
||||
result by construction; what it still checks is the budget.
|
||||
|
||||
The model writes words only, one page at a time, into a JSON object
|
||||
whose shape is fixed. Its strings are merged over built-in fallbacks
|
||||
@@ -31,14 +36,89 @@ key by key, so a bad reply costs wording, never a working site.
|
||||
|---|---|---|
|
||||
| A site the verifier accepts | never, in 6 rounds and 16 min | first try, 130 s |
|
||||
| Held-out personas, with descriptions | - | 8 of 8 |
|
||||
| Held-out personas, headings only | - | 8 of 8 |
|
||||
| Held-out personas, headings only | - | 7 of 8 |
|
||||
|
||||
The wording numbers are from the re-score of 2026-09-22, one task per
|
||||
call (`runs/contractor-build-2026-09-21/rescore-2026-09-22/`). The
|
||||
first score, all tasks in one prompt, said 8 of 8 on headings only;
|
||||
the apprentice picking the building survey over "Join our carpentry
|
||||
team" only showed once no other visitor was in the prompt.
|
||||
|
||||
For comparison, a Sonnet-class model writing everything free-form
|
||||
scored 8 of 10 on headings only and silently dropped a stage the owner
|
||||
had described. `build` cannot drop a stage: it never decides one.
|
||||
had described. `build` cannot drop a stage: it never decides one. The
|
||||
denominators differ: the `build` site gives the two crew personas a
|
||||
one-option page, so they generate no task, and 8 of 8 is eight public
|
||||
personas where the `generate` number is ten. Held out means held out
|
||||
from the model: the plan's `who` and `wants` lines and the personas
|
||||
were written by the same person about the same needs, and the fallback
|
||||
heading is the need's `wants`, so the two are cousins.
|
||||
|
||||
`generate` (below) remains for turning a plain-words intake into a
|
||||
first plan; what it should hand over is the plan, not the pages.
|
||||
### Doors: a first question before the forms
|
||||
|
||||
Five or six needs on one page is more than a visitor sorts through
|
||||
(the full contractor plan had six). A plan can put public needs
|
||||
behind `doors`: each door is one alternative on the front door
|
||||
leading to a page of its own, where the needs that name it sit.
|
||||
|
||||
```yaml
|
||||
doors:
|
||||
- id: patients
|
||||
who: someone with pain or an injury, or a patient who already has a time here
|
||||
needs:
|
||||
- id: new-patient
|
||||
door: patients
|
||||
...
|
||||
```
|
||||
|
||||
The door's page is a nav page, public, holding the forms. The spec
|
||||
gives such a need `max_steps: 2` and pins `via` to the door's heading,
|
||||
so the verifier walks both pages. A door nobody is behind, a door on
|
||||
an internal need, or a door named like a group is refused, and a
|
||||
front door over five alternatives is warned about. The visitor is
|
||||
scored on both pages: a persona who picks the wrong door is a
|
||||
misroute on `/`, one who picks the wrong form is a misroute on the
|
||||
door's page.
|
||||
|
||||
Cases with doors: `plans/physio.yaml` (a physiotherapy clinic,
|
||||
patients and referrers), `plans/fotballklubb.yaml` (a football club,
|
||||
in Norwegian, parents and helpers), `plans/hire.yaml` (a machine hire
|
||||
yard, hiring and firms), and `plans/contractor-full.yaml` (three
|
||||
doors over six public needs). Each has an intake under `intakes/` in
|
||||
the business's own words and held-out personas.
|
||||
|
||||
### What a plan can say about a form and its readers
|
||||
|
||||
- `multiple: true` on a `select`: pick any number (portal renders
|
||||
toggles). What a volunteer can do, which events, which committees.
|
||||
- `groups:` at the top, a list of `{ id, label }`: the groups with a
|
||||
name the public knows, such as a vel's committees. A select with
|
||||
`options_from: groups` offers exactly those labels, so the
|
||||
application form and the desks cannot drift apart.
|
||||
- `watched_by: [public]`: an ungated read-only page of the bucket at
|
||||
`/status/<bucket>`, linked from the followup page. Everyone sees
|
||||
what was sent in and where it stands. `email` and `tel` fields, and
|
||||
any field marked `private: true`, are projected away before it is
|
||||
shown.
|
||||
|
||||
## Plan: the intake, read by a model, checked by a person
|
||||
|
||||
```
|
||||
portal-trainer plan --intake intakes/contractor.yaml --out out/nordvik \
|
||||
--personas sectors/construction/needs.yaml \
|
||||
--llm "MODEL=nemotron-3.5-lightning:30b-a3b engines/ollama.sh"
|
||||
```
|
||||
|
||||
This is the one step where a model decides structure: which needs the
|
||||
intake implies, the stages, who handles what, the form, the budget.
|
||||
Its YAML is parsed and validated exactly as `build` will, the errors go
|
||||
back to it, and what passes is written verbatim for a person to read
|
||||
before building from it. Personas are never asked of this model; they
|
||||
are attached from a file, and where their `need:` names an id the plan
|
||||
does not have, `plan` says so and leaves the mapping to the reader.
|
||||
|
||||
`generate` (below) is the older path, a model writing pages free-form
|
||||
against the lint. It is kept for the record of what it measured.
|
||||
|
||||
## How it works
|
||||
|
||||
@@ -79,6 +159,12 @@ portal-trainer generate --intake intakes/contractor.yaml --out out/nordvik \
|
||||
portal-trainer answer --tasks tasks.jsonl --llm engines/ollama.sh > answers.jsonl
|
||||
```
|
||||
|
||||
`answer` puts one task per call to the visitor model, with the options
|
||||
shuffled per task and the call seeded from the task id: no visitor
|
||||
sees another visitor's situation, a heading's place on the page cannot
|
||||
carry the answer, and a rerun on the same site is the same experiment.
|
||||
The earlier runs under `runs/` answered all tasks in one prompt.
|
||||
|
||||
The verifier is portal's `question_lint`, not code in this repo: it
|
||||
reads portal's own content types and ships in every portal release, so
|
||||
a generated repo's CI keeps enforcing its needs after handover.
|
||||
@@ -90,7 +176,8 @@ A backend is any command that takes a prompt on stdin and prints text.
|
||||
| Backend | Use |
|
||||
|---|---|
|
||||
| `engines/ollama.sh` | Local Ollama. `MODEL=qwen3:8b` answers a task in about two seconds on ergo's GPU and is the default visitor. Generation wants a larger model (`MODEL=qwen3.6:27b`), which runs mostly on CPU there. |
|
||||
| `engines/anthropic.sh` | The Anthropic API, given a working `ANTHROPIC_API_KEY`. |
|
||||
| `engines/claude.sh` | Claude through Claude Code's own login (a Max or Pro subscription), no API key. `MODEL=sonnet` or `opus`, `EFFORT=low` by default. It drops any `ANTHROPIC_API_KEY` from the environment, because a key outranks the login and a stale one fails every call. Log in once with `claude auth login`. |
|
||||
| `engines/anthropic.sh` | The Anthropic API, given a working `ANTHROPIC_API_KEY` from the Console. That is separate, prepaid billing; a subscription does not cover it. |
|
||||
| `engines/mailbox.sh` | Writes each prompt to a directory and waits for a reply file: drive the generator from an agent session, or by hand. |
|
||||
|
||||
The visitor and the generator should be different models. A model
|
||||
@@ -107,6 +194,51 @@ every field the generator reads, so the step that remains is a
|
||||
listener on `portal.answers.submitted` that runs it and pushes the
|
||||
draft to a new repo. It passes its own `needs.yaml`.
|
||||
|
||||
## The whole card, not the heading
|
||||
|
||||
A visitor never sees a bare heading and description. Portal renders a
|
||||
card: a button, an encouragement, one or more sections each with an
|
||||
icon, a title and a line of guidance, and the fields with their
|
||||
labels and placeholders. Since 2026-09-23 the builder fills all of it
|
||||
and the scorers read all of it.
|
||||
|
||||
- **Slots.** Beside the heading and description, each form alternative
|
||||
gets a button, an encouragement, an icon, a form title and guidance
|
||||
line, and a placeholder per field. A door gets an icon and a "for
|
||||
whom" line. Icons are picked from a fixed list of Iconify lucide
|
||||
names; anything else is dropped.
|
||||
- **Context from the plan.** Every form alternative also carries two
|
||||
sections built from what the plan already knows, before the form:
|
||||
what happens next (the stages, in order, as one sentence) and who
|
||||
reads it (the handling group and the contact). Their fallbacks are
|
||||
true before a model has written a word; the model rewords them.
|
||||
- **Scoring.** `answer --repo <content dir>` shows the visitor each
|
||||
option as its whole card (headings-only tasks stay headings only).
|
||||
`rate --repo` does the same and asks a fourth question, "where": do
|
||||
you know where you are, who this is for, and what the button does.
|
||||
All four are controlled against the gutted twin.
|
||||
|
||||
## Rating wording
|
||||
|
||||
```
|
||||
question_lint --path out/nordvik/questions --needs-sim model.json
|
||||
portal-trainer rate --model model.json --out out/rated --repo out/nordvik \
|
||||
--llm "MODEL=qwen3:8b engines/ollama.sh"
|
||||
```
|
||||
|
||||
Four yes-or-no questions per persona (which option is mine, where am
|
||||
I and what does the button do, what will I be asked, what happens
|
||||
after I send it), each also put to a gutted
|
||||
twin of the page with headings, descriptions, the form and the
|
||||
followup removed. A question the twin still gets a yes on is not
|
||||
measuring the page, and `rate` says which. The followup page is read
|
||||
from the repo (`--repo`); without it "what happens next" is reported
|
||||
as not measured rather than as zero. LIX is over the prose only
|
||||
(question, descriptions, followup): headings and labels are not
|
||||
sentences and would pull every page down to "very easy". The
|
||||
`rate.json` in `runs/contractor-build-2026-09-21/` predates this and
|
||||
its `asked` and `next` columns are the old, pinned ones.
|
||||
|
||||
## Measured so far
|
||||
|
||||
**Generated: a building contractor** (`runs/contractor-2026-09-21/`),
|
||||
@@ -133,6 +265,43 @@ from `intakes/contractor.yaml`, a Sonnet-class model generating.
|
||||
chose "Get someone to look at a building". The generator has since
|
||||
been changed to hide personas from the page-writing phase.
|
||||
|
||||
**Built: the same contractor from a plan** (`runs/contractor-build-2026-09-21/`),
|
||||
nemotron writing words only, and re-scored one task per call the day
|
||||
after (`rescore-2026-09-22/` in it): 8 of 8 with descriptions, 7 of 8
|
||||
on headings alone, the miss being an apprentice bricklayer reading
|
||||
"Join our carpentry team" as not for them. `rate` on the same site,
|
||||
with the followup shown and every question controlled, passes its
|
||||
controls and puts the pages at LIX 18 to 35.
|
||||
|
||||
**Built behind doors, 2026-09-22.** Five plans with a first question
|
||||
before the forms, each built and then scored by qwen3:8b one task per
|
||||
call, against held-out personas. Behind a door a persona is asked
|
||||
twice, on the front door and on the door's page.
|
||||
|
||||
| Case | Words by | With descriptions | Headings only | Notes |
|
||||
|---|---|---|---|---|
|
||||
| Machine hire (`hire`) | nemotron | 10 of 10 | 10 of 10 | doors that ask a question the visitor already knows the answer to |
|
||||
| Physio clinic (`physio`) | nemotron | 8 of 10 | 9 of 10 | "Book your first appointment" fails a daughter booking for her mother |
|
||||
| Football club, Norwegian (`fotballklubb`) | nemotron | 14 of 16 | 11 of 16 | three parents walk past "Er det på tide å melde inn?" |
|
||||
| Football club, Norwegian | Claude Sonnet | 13 of 16 | 12 of 16 | better sentences, same driver/sponsor blur |
|
||||
| Whole contractor (`contractor-full`) | nemotron | 18 of 22 | 15 of 22 | "Apply to work with us" and "Find a job with us" cross over for all four |
|
||||
| Tomter Vel, Norwegian (`tomtervel`), first plan | Claude Sonnet | 25 of 30 | 22 of 30 | "utstyr" for a swing, hearing input behind the wrong door |
|
||||
| Tomter Vel, plan revised 2026-09-23, whole card | Claude Sonnet | 31 of 38 | 30 of 38 | committees as groups, public lists, hearing input on the front door |
|
||||
|
||||
Each run's README names the misroutes and what in the plan or the
|
||||
heading caused them. A stronger word model did not route better on
|
||||
the one plan built with both: routing is decided by which distinctions
|
||||
sit on one page, and the visitor grades that the same whoever wrote
|
||||
the words.
|
||||
|
||||
**Planned: the contractor intake read by a local model**
|
||||
(`runs/contractor-plan-2026-09-22/`), nemotron, one round, 41 s. The
|
||||
plan passed every check `build` makes and a reader finds three
|
||||
structural misses in it the checks cannot: the crew's report made
|
||||
public, the "papers missing" stage dropped, and no need for the
|
||||
project manager logging a call. The person reading the plan is not
|
||||
optional.
|
||||
|
||||
**Existing site: uhhm.no** (`runs/uhhm-2026-09-21/`), eight tasks.
|
||||
|
||||
| Visitor model | With descriptions | Headings only |
|
||||
|
||||
Executable
+22
@@ -0,0 +1,22 @@
|
||||
#!/bin/sh
|
||||
# LLM backend for portal-trainer on Claude Code's own login (a Max or
|
||||
# Pro subscription): prompt on stdin, text on stdout. No API key
|
||||
# needed: an ANTHROPIC_API_KEY in the environment would outrank the
|
||||
# login, so it is dropped here. Log the CLI in once with
|
||||
# `claude auth login`; `claude auth status` shows what it uses.
|
||||
# MODEL is an alias or id (sonnet, opus, claude-sonnet-5); EFFORT is
|
||||
# low, medium or high. Not --bare: that mode skips the stored login.
|
||||
#
|
||||
# The generator's SEED and TEMPERATURE hints cannot be honoured;
|
||||
# FORMAT=json is turned into an instruction.
|
||||
set -eu
|
||||
unset ANTHROPIC_API_KEY ANTHROPIC_AUTH_TOKEN CLAUDECODE CLAUDE_CODE_ENTRYPOINT
|
||||
prompt=$(cat)
|
||||
if [ "${FORMAT:-}" = json ]; then
|
||||
prompt="$prompt
|
||||
|
||||
Reply with the JSON object only, no prose, no code fences."
|
||||
fi
|
||||
printf '%s' "$prompt" | claude -p --model "${MODEL:-sonnet}" --effort "${EFFORT:-low}" \
|
||||
--output-format text --permission-mode dontAsk --no-session-persistence \
|
||||
--tools ""
|
||||
@@ -0,0 +1,38 @@
|
||||
# Slik lederen i en fotballgruppe ville fylt det ut.
|
||||
business: Lia IL Fotball
|
||||
contact: { name: Kari Lien, email: kari@liail.example }
|
||||
language: no
|
||||
|
||||
what_we_do: >
|
||||
Fotballgruppa i et idrettslag på bygda. Rundt hundre og tjue unger
|
||||
fra seks til sekstenår, fordelt på lag etter årskull. Alt drives av
|
||||
foreldre på fritida: trenere, lagledere, en kasserer og et styre.
|
||||
|
||||
who_comes_to_us: >
|
||||
Foreldre som vil ha ungen med på et lag. Foreldre som sliter med
|
||||
treningsavgiften og vil dele den opp eller slippe. Folk som vil
|
||||
hjelpe til, som trener, lagleder, sjåfør eller på dugnad. Bedrifter
|
||||
i bygda som vil sponse.
|
||||
|
||||
what_we_keep_track_of: >
|
||||
Innmeldinger: en forelder melder inn, treneren på årskullet
|
||||
godkjenner at det er plass, kassereren ser at avgiften er betalt.
|
||||
Noen trekker seg underveis.
|
||||
Avgiftssaker: noen ber om å dele opp eller slippe avgiften; styret
|
||||
vurderer og sier ja eller nei.
|
||||
Frivillige: noen tilbyr seg, styret tar kontakt og plasserer dem der
|
||||
det trengs, eller takker nei.
|
||||
Sponsorer: en bedrift melder interesse, vi tar en prat, og det blir
|
||||
en avtale eller ikke.
|
||||
Ting på banen: lys som ikke virker, mål som er ødelagt, drakter som
|
||||
mangler. Trenerne melder fra, styret tar tak i det og ordner det.
|
||||
|
||||
who_is_involved: >
|
||||
Trenerne godkjenner innmeldinger på sitt årskull og melder fra om
|
||||
banen. Kassereren følger opp betaling. Styret tar frivillige,
|
||||
sponsorer, avgiftssaker og alt som gjelder anlegget.
|
||||
|
||||
what_slows_us_down: >
|
||||
Alt går i en gruppechat og et regneark. Trenerne vet ikke hvem som
|
||||
har betalt, kassereren vet ikke hvem som er godkjent, og en som
|
||||
tilbød seg å kjøre i høst fikk aldri svar.
|
||||
@@ -0,0 +1,38 @@
|
||||
# An intake as the owner of a machine hire yard would fill it in.
|
||||
business: Fjellstad Hire
|
||||
contact: { name: Ola Fjellstad, email: ola@fjellstadhire.example }
|
||||
language: en
|
||||
|
||||
what_we_do: >
|
||||
We hire out machines: mini diggers, lifts, compactors, generators,
|
||||
that kind of thing. A counter with two people, a yard with three who
|
||||
deliver, collect and fix, and me in the office doing accounts and
|
||||
the business customers.
|
||||
|
||||
who_comes_to_us: >
|
||||
Private people who need a machine for a weekend and have often never
|
||||
driven one. Building and landscaping firms who need something on a
|
||||
site from a date for a period. Anyone whose hired machine has
|
||||
stopped working while they have it. Firms who hire often and want
|
||||
an account so they can send anyone to collect and get one invoice a
|
||||
month.
|
||||
|
||||
what_we_keep_track_of: >
|
||||
Hires: someone asks, the counter reserves it, the yard hands it out
|
||||
or delivers it, and the yard takes it back. Some are cancelled
|
||||
before they go out.
|
||||
Breakdowns: a machine stops during a hire; the yard takes it on and
|
||||
either fixes it on site or swaps it.
|
||||
Account applications: a firm applies, I check the company and its
|
||||
credit, and it is approved or turned down.
|
||||
Damage on return: the yard finds damage when a machine comes back; I
|
||||
either invoice the customer or write it off.
|
||||
|
||||
who_is_involved: >
|
||||
The counter handles hires. The yard handles breakdowns and the
|
||||
handing out and taking back. The office does accounts and damage.
|
||||
|
||||
what_slows_us_down: >
|
||||
The yard finds out about breakdowns from whoever picks up the phone.
|
||||
Damage found on return is written on a whiteboard and half of it is
|
||||
never invoiced.
|
||||
@@ -0,0 +1,42 @@
|
||||
# An intake as the manager of a physiotherapy clinic would fill it in.
|
||||
business: Bakken Fysioterapi
|
||||
contact: { name: Marit Bakken, email: marit@bakkenfysio.example }
|
||||
language: en
|
||||
|
||||
what_we_do: >
|
||||
Six physiotherapists and a receptionist. People come to us with
|
||||
pain, injuries and after operations; we assess them and treat them
|
||||
over a course of sessions. Some come on their own, some are sent by
|
||||
a GP or a hospital, and some have insurance that pays if the insurer
|
||||
approves the course first.
|
||||
|
||||
who_comes_to_us: >
|
||||
People with something that hurts who want to see the right
|
||||
therapist. Patients who already have a time and need to move or
|
||||
drop it. GPs and hospital wards sending us someone, who want to
|
||||
hear how it went. Insurers, through us, when a course has to be
|
||||
approved before it starts.
|
||||
|
||||
what_we_keep_track_of: >
|
||||
Requests for a first appointment: they come in, we offer a time with
|
||||
a therapist who suits, and it is either booked or they go elsewhere.
|
||||
Cancellations: someone can't come; we either find them a new time or
|
||||
give the slot to someone waiting.
|
||||
Referrals: a doctor sends someone, we accept it, book them in, treat
|
||||
them, and send the doctor a report at the end. Sometimes we send it
|
||||
back because it isn't something we treat.
|
||||
Insurance approvals: for some patients we have to ask the insurer
|
||||
before we start; we send the request and it comes back approved or
|
||||
refused.
|
||||
No-shows: someone doesn't turn up and doesn't call. The receptionist
|
||||
rings them and either rebooks or, after a couple of times, closes it.
|
||||
|
||||
who_is_involved: >
|
||||
The receptionist handles every request, cancellation, referral and
|
||||
approval. The therapists treat and write the report back to the
|
||||
doctor, and they are the ones who notice a no-show.
|
||||
|
||||
what_slows_us_down: >
|
||||
Referrals, cancellations and insurance approvals all go through one
|
||||
inbox that only the receptionist understands. Therapists tell her
|
||||
about no-shows in the corridor and they get forgotten.
|
||||
@@ -0,0 +1,62 @@
|
||||
# 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.no }
|
||||
language: no
|
||||
|
||||
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. Eldre og nyopererte som
|
||||
trenger en hånd med snømåking, handling eller en skyss, og naboer
|
||||
som gjerne stiller opp hvis noen spør.
|
||||
|
||||
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.
|
||||
Nabohjelp: noen ber om en hånd, nabohjelpsgruppa finner en som kan,
|
||||
og den som fikk hjelp sier fra når det er ordnet. Naboer som vil
|
||||
hjelpe melder seg, og kan trekke seg igjen.
|
||||
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. Nabohjelpsgruppa kobler dem som
|
||||
trenger hjelp med dem som kan. 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.
|
||||
@@ -1,6 +1,6 @@
|
||||
# A contractor's whole operation, to stress the builder and the
|
||||
# harness: 13 needs, 6 roles, 9 buckets, needs sharing a bucket,
|
||||
# skippable stages, and a front door carrying more than a page should.
|
||||
# skippable stages, and a front door that had to be tiered.
|
||||
business: Nordvik Bygg
|
||||
language: en
|
||||
contact: { name: Ingrid Nordvik, email: ingrid@nordvikbygg.example }
|
||||
@@ -12,9 +12,19 @@ about: >
|
||||
each building site day to day, and one safety officer owns everything
|
||||
reported from site.
|
||||
|
||||
# Six public needs is one over what a front door carries, so the
|
||||
# public comes through three doors: a building of theirs, work with
|
||||
# us, and a site of ours next to them (that one is a need on its own).
|
||||
doors:
|
||||
- id: your-building
|
||||
who: an owner, a housing board or a past customer with a building
|
||||
- id: work-with-us
|
||||
who: a trade firm, a carpenter or an apprentice who wants work from us
|
||||
|
||||
needs:
|
||||
# --- the public ---------------------------------------------------
|
||||
- id: survey-enquiry
|
||||
door: your-building
|
||||
who: 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
|
||||
lands_in: enquiries
|
||||
@@ -26,6 +36,7 @@ needs:
|
||||
# see what is coming their way.
|
||||
moves_by: { surveyed: [project_managers, site_managers] }
|
||||
watched_by: [site_managers]
|
||||
max_fields: 4
|
||||
collects:
|
||||
- { name: name }
|
||||
- { name: phone, type: tel }
|
||||
@@ -34,6 +45,7 @@ needs:
|
||||
- { name: access, optional: true }
|
||||
|
||||
- id: build-enquiry
|
||||
door: your-building
|
||||
who: an owner who already knows what they want built or changed
|
||||
wants: drawings, a permit application and a price
|
||||
lands_in: enquiries
|
||||
@@ -45,6 +57,7 @@ needs:
|
||||
# see what is coming their way.
|
||||
moves_by: { surveyed: [project_managers, site_managers] }
|
||||
watched_by: [site_managers]
|
||||
max_fields: 5
|
||||
collects:
|
||||
- { name: name }
|
||||
- { name: phone, type: tel }
|
||||
@@ -53,6 +66,7 @@ needs:
|
||||
- { name: timeframe, type: select, options: [This year, Next year, No fixed date] }
|
||||
|
||||
- id: warranty-claim
|
||||
door: your-building
|
||||
who: 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
|
||||
lands_in: claims
|
||||
@@ -63,6 +77,7 @@ needs:
|
||||
# The site manager inspects and puts it right; whether it is ours
|
||||
# to fix is the project manager's call.
|
||||
moves_by: { inspected: [site_managers], fixed: [site_managers] }
|
||||
max_fields: 4
|
||||
collects:
|
||||
- { name: name }
|
||||
- { name: phone, type: tel }
|
||||
@@ -79,12 +94,14 @@ needs:
|
||||
done_when: [answered]
|
||||
success: [answered]
|
||||
watched_by: [project_managers]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: site_address }
|
||||
- { name: what_is_wrong, type: textarea }
|
||||
- { name: reach_me_on }
|
||||
|
||||
- id: subcontractor-application
|
||||
door: work-with-us
|
||||
who: a trade firm doing electrical, plumbing or scaffolding work
|
||||
wants: to be approved once, and then be called when a job needs them
|
||||
lands_in: subcontractors
|
||||
@@ -94,6 +111,7 @@ needs:
|
||||
success: [approved]
|
||||
watched_by: [site_managers]
|
||||
skippable: [awaiting_papers]
|
||||
max_fields: 5
|
||||
collects:
|
||||
- { name: company }
|
||||
- { name: registration_number }
|
||||
@@ -103,6 +121,7 @@ needs:
|
||||
- { name: trade_approval, optional: true }
|
||||
|
||||
- id: job-application
|
||||
door: work-with-us
|
||||
who: a carpenter, bricklayer or apprentice looking for work
|
||||
wants: to be considered, without writing a letter
|
||||
lands_in: applicants
|
||||
@@ -110,6 +129,7 @@ needs:
|
||||
stages: [open, interviewing, offered, hired, declined]
|
||||
done_when: [hired, declined]
|
||||
success: [hired]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: name }
|
||||
- { name: phone, type: tel }
|
||||
@@ -130,6 +150,7 @@ needs:
|
||||
# their own link, the site manager does the work.
|
||||
moves_by: { approved: [submitter], declined: [submitter, project_managers], completed: [site_managers] }
|
||||
watched_by: [site_managers]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: email, type: email }
|
||||
- { name: job_address }
|
||||
@@ -150,6 +171,7 @@ needs:
|
||||
# see what is coming their way.
|
||||
moves_by: { surveyed: [project_managers, site_managers] }
|
||||
watched_by: [site_managers]
|
||||
max_fields: 4
|
||||
collects:
|
||||
- { name: caller }
|
||||
- { name: phone, type: tel }
|
||||
@@ -167,6 +189,7 @@ needs:
|
||||
success: [awarded]
|
||||
# This is how subcontractors see what there is to bid on.
|
||||
watched_by: [subcontractors, site_managers]
|
||||
max_fields: 4
|
||||
collects:
|
||||
- { name: site_address }
|
||||
- { name: trade, type: select, options: [Electrical, Plumbing, Scaffolding, Sheet metal, Other] }
|
||||
@@ -185,6 +208,7 @@ needs:
|
||||
success: [accepted]
|
||||
watched_by: [site_managers]
|
||||
skippable: [shortlisted]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: job }
|
||||
- { name: price }
|
||||
@@ -204,6 +228,7 @@ needs:
|
||||
# safety officer closes it.
|
||||
moves_by: { in_hand: [safety_officer, site_managers] }
|
||||
watched_by: [project_managers]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: kind, type: select, options: [Hazard, Near miss, Wrong materials, Other] }
|
||||
- { name: where }
|
||||
@@ -220,6 +245,7 @@ needs:
|
||||
success: [delivered]
|
||||
# The crew confirms it arrived.
|
||||
moves_by: { delivered: [crew, site_managers] }
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: site_address }
|
||||
- { name: what, type: textarea }
|
||||
@@ -238,6 +264,7 @@ needs:
|
||||
# safety officer closes it.
|
||||
moves_by: { in_hand: [safety_officer, site_managers] }
|
||||
watched_by: [project_managers]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: kind, type: select, options: [Hazard, Near miss, Wrong materials, Other] }
|
||||
- { name: where }
|
||||
|
||||
@@ -19,6 +19,7 @@ needs:
|
||||
stages: [open, surveyed, quoted, won, lost]
|
||||
done_when: [won, lost]
|
||||
success: [won]
|
||||
max_fields: 4
|
||||
collects:
|
||||
- { name: name }
|
||||
- { name: phone, type: tel }
|
||||
@@ -34,6 +35,7 @@ needs:
|
||||
stages: [open, surveyed, quoted, won, lost]
|
||||
done_when: [won, lost]
|
||||
success: [won]
|
||||
max_fields: 5
|
||||
collects:
|
||||
- { name: name }
|
||||
- { name: phone, type: tel }
|
||||
@@ -50,6 +52,7 @@ needs:
|
||||
stages: [open, surveyed, quoted, won, lost]
|
||||
done_when: [won, lost]
|
||||
success: [won]
|
||||
max_fields: 4
|
||||
collects:
|
||||
- { name: caller }
|
||||
- { name: phone, type: tel }
|
||||
@@ -65,6 +68,7 @@ needs:
|
||||
done_when: [approved, declined]
|
||||
success: [approved]
|
||||
skippable: [awaiting_papers]
|
||||
max_fields: 5
|
||||
collects:
|
||||
- { name: company }
|
||||
- { name: registration_number }
|
||||
@@ -81,6 +85,7 @@ needs:
|
||||
stages: [open, interviewing, hired, declined]
|
||||
done_when: [hired, declined]
|
||||
success: [hired]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: name }
|
||||
- { name: phone, type: tel }
|
||||
@@ -96,6 +101,7 @@ needs:
|
||||
stages: [open, in_hand, closed]
|
||||
done_when: [closed]
|
||||
success: [closed]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: kind, type: select, options: [Hazard, Near miss, Wrong materials, Other] }
|
||||
- { name: where }
|
||||
|
||||
@@ -0,0 +1,112 @@
|
||||
# Fotballgruppa i et idrettslag, på norsk: to dører på forsiden
|
||||
# (foresatte, og de som vil bidra), roller som overlapper på én
|
||||
# innmelding (treneren godkjenner, kassereren ser betalingen), og en
|
||||
# intern melding fra trenerne til styret.
|
||||
business: Lia IL Fotball
|
||||
language: no
|
||||
contact: { name: Kari Lien, email: kari@liail.example }
|
||||
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.
|
||||
|
||||
doors:
|
||||
- id: foresatte
|
||||
who: en forelder eller foresatt til et barn som vil spille, eller allerede spiller
|
||||
- id: bidra
|
||||
who: noen som vil hjelpe til i klubben, eller en bedrift som vil støtte den
|
||||
|
||||
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
|
||||
door: foresatte
|
||||
lands_in: innmeldinger
|
||||
handled_by: trenere
|
||||
stages: [open, godkjent, betalt, trukket]
|
||||
done_when: [betalt, trukket]
|
||||
success: [betalt]
|
||||
# Treneren godkjenner plassen, kassereren ser at det er betalt.
|
||||
moves_by: { betalt: [kasserer] }
|
||||
watched_by: [kasserer]
|
||||
max_fields: 5
|
||||
collects:
|
||||
- { name: barnets_navn }
|
||||
- { name: fodselsar, type: select, options: ["2010", "2011", "2012", "2013", "2014", "2015", "2016", "2017", "2018", "2019", "2020"] }
|
||||
- { name: foresatt }
|
||||
- { name: telefon, type: tel }
|
||||
- { name: epost, type: email }
|
||||
- { name: spilt_for, optional: true }
|
||||
|
||||
- id: avgiftssak
|
||||
who: en forelder som sliter med treningsavgiften
|
||||
wants: å dele den opp, eller slippe den
|
||||
door: foresatte
|
||||
lands_in: avgiftssaker
|
||||
handled_by: styret
|
||||
stages: [open, vurdert, innvilget, avslatt]
|
||||
done_when: [innvilget, avslatt]
|
||||
success: [innvilget]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: barnets_navn }
|
||||
- { name: foresatt }
|
||||
- { name: hva_gjelder_det, type: textarea }
|
||||
- { name: telefon, type: tel, optional: true }
|
||||
|
||||
- id: frivillig
|
||||
who: en som vil hjelpe til, som trener, lagleder, sjåfør eller på dugnad
|
||||
wants: å bli brukt der det trengs
|
||||
door: bidra
|
||||
lands_in: frivillige
|
||||
handled_by: styret
|
||||
stages: [open, kontaktet, plassert, avslatt]
|
||||
done_when: [plassert, avslatt]
|
||||
success: [plassert]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: navn }
|
||||
- { name: telefon, type: tel }
|
||||
- { name: hva_kan_du, type: select, 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
|
||||
door: bidra
|
||||
lands_in: sponsorer
|
||||
handled_by: styret
|
||||
stages: [open, i_dialog, avtalt, avslatt]
|
||||
done_when: [avtalt, avslatt]
|
||||
success: [avtalt]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: bedrift }
|
||||
- { name: kontaktperson }
|
||||
- { name: telefon, type: tel }
|
||||
- { name: hva_tenker_dere, type: textarea, optional: true }
|
||||
|
||||
- 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
|
||||
stages: [open, tatt_tak_i, ordnet]
|
||||
done_when: [ordnet]
|
||||
success: [ordnet]
|
||||
max_fields: 2
|
||||
collects:
|
||||
- { name: hvor }
|
||||
- { name: hva, type: textarea }
|
||||
|
||||
# Holdt unna alle modeller som skriver ord.
|
||||
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." }
|
||||
@@ -0,0 +1,94 @@
|
||||
# A machine hire yard: two doors (hiring, and an account for firms),
|
||||
# one aggregate walked by two roles (the counter reserves, the yard
|
||||
# hands out and takes back), and the yard's own damage report.
|
||||
business: Fjellstad Hire
|
||||
language: en
|
||||
contact: { name: Ola Fjellstad, email: ola@fjellstadhire.example }
|
||||
about: >
|
||||
Machine hire: mini diggers, lifts, compactors, generators. A counter,
|
||||
a yard that delivers, collects and fixes, and an office.
|
||||
|
||||
doors:
|
||||
- id: hiring
|
||||
who: someone who needs a machine, or has one of ours that has stopped
|
||||
- id: firms
|
||||
who: a firm that hires often and wants an account with us
|
||||
|
||||
needs:
|
||||
- id: hire-request
|
||||
who: 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
|
||||
door: hiring
|
||||
lands_in: hires
|
||||
handled_by: counter
|
||||
stages: [open, reserved, out, returned, cancelled]
|
||||
done_when: [returned, cancelled]
|
||||
success: [returned]
|
||||
# The counter reserves; the yard hands it out and takes it back.
|
||||
moves_by: { out: [yard], returned: [yard] }
|
||||
max_fields: 5
|
||||
collects:
|
||||
- { name: name }
|
||||
- { name: phone, type: tel }
|
||||
- { name: what, type: textarea }
|
||||
- { name: from, type: date }
|
||||
- { name: until, type: date }
|
||||
- { name: deliver_to, optional: true }
|
||||
|
||||
- id: breakdown
|
||||
who: someone whose hired machine has stopped working
|
||||
wants: it running again, or swapped, today
|
||||
door: hiring
|
||||
lands_in: breakdowns
|
||||
handled_by: yard
|
||||
stages: [open, in_hand, resolved]
|
||||
done_when: [resolved]
|
||||
success: [resolved]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: phone, type: tel }
|
||||
- { name: machine }
|
||||
- { name: what_happened, type: textarea }
|
||||
- { name: where, optional: true }
|
||||
|
||||
- id: account-request
|
||||
who: a firm that hires often
|
||||
wants: to send anyone to collect, and get one invoice a month
|
||||
door: firms
|
||||
lands_in: accounts
|
||||
handled_by: office
|
||||
stages: [open, checked, approved, declined]
|
||||
done_when: [approved, declined]
|
||||
success: [approved]
|
||||
max_fields: 4
|
||||
collects:
|
||||
- { name: company }
|
||||
- { name: registration_number }
|
||||
- { name: contact }
|
||||
- { name: phone, type: tel }
|
||||
- { name: invoice_email, type: email, optional: true }
|
||||
|
||||
- id: damage-on-return
|
||||
who: someone in the yard who finds damage when a machine comes back
|
||||
wants: it written down before the customer has left
|
||||
enters_as: yard
|
||||
lands_in: damage_reports
|
||||
handled_by: office
|
||||
stages: [open, invoiced, written_off]
|
||||
done_when: [invoiced, written_off]
|
||||
success: [invoiced]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: machine }
|
||||
- { name: hire_or_customer }
|
||||
- { name: damage, type: textarea }
|
||||
|
||||
# Held out from every model that writes words.
|
||||
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." }
|
||||
@@ -0,0 +1,113 @@
|
||||
# A physiotherapy clinic: two doors on the front, patients and the
|
||||
# people who send them; the reception handles everything, therapists
|
||||
# write the report back and notice who did not turn up.
|
||||
business: Bakken Fysioterapi
|
||||
language: en
|
||||
contact: { name: Marit Bakken, email: marit@bakkenfysio.example }
|
||||
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.
|
||||
|
||||
doors:
|
||||
- id: patients
|
||||
who: someone with pain or an injury, or a patient who already has a time here
|
||||
- id: referrers
|
||||
who: a doctor, a hospital ward or an insurer sending someone to us
|
||||
|
||||
needs:
|
||||
- id: new-patient
|
||||
who: someone with something that hurts
|
||||
wants: a first appointment with a therapist who suits them
|
||||
door: patients
|
||||
lands_in: requests
|
||||
handled_by: reception
|
||||
stages: [open, offered, booked, declined]
|
||||
done_when: [booked, declined]
|
||||
success: [booked]
|
||||
max_fields: 4
|
||||
collects:
|
||||
- { name: name }
|
||||
- { name: phone, type: tel }
|
||||
- { name: what_hurts, type: textarea }
|
||||
- { name: when, type: select, options: [Mornings, Afternoons, Any time] }
|
||||
- { name: sent_by_doctor, type: select, options: ["Yes", "No"], optional: true }
|
||||
|
||||
- id: move-or-cancel
|
||||
who: a patient who already has a time and cannot come
|
||||
wants: the time moved, or the slot freed
|
||||
door: patients
|
||||
lands_in: cancellations
|
||||
handled_by: reception
|
||||
stages: [open, rebooked, released]
|
||||
done_when: [rebooked, released]
|
||||
success: [rebooked]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: name }
|
||||
- { name: phone, type: tel }
|
||||
- { name: appointment_day, type: date }
|
||||
- { name: new_time_wish, optional: true }
|
||||
|
||||
- id: referral
|
||||
who: a GP or a hospital ward sending a patient
|
||||
wants: the patient seen, and a report back when the course ends
|
||||
door: referrers
|
||||
lands_in: referrals
|
||||
handled_by: reception
|
||||
stages: [open, accepted, booked, reported, returned]
|
||||
done_when: [reported, returned]
|
||||
success: [reported]
|
||||
# The therapist who treated them writes the report; they see the
|
||||
# referral from the start.
|
||||
moves_by: { reported: [therapists] }
|
||||
watched_by: [therapists]
|
||||
max_fields: 5
|
||||
collects:
|
||||
- { name: patient_name }
|
||||
- { name: patient_phone, type: tel }
|
||||
- { name: referrer }
|
||||
- { name: what_for, type: textarea }
|
||||
- { name: urgency, type: select, options: [This week, Within a month, Routine] }
|
||||
|
||||
- id: insurance-approval
|
||||
who: 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
|
||||
enters_as: reception
|
||||
lands_in: approvals
|
||||
handled_by: reception
|
||||
stages: [open, sent, approved, refused]
|
||||
done_when: [approved, refused]
|
||||
success: [approved]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: patient_name }
|
||||
- { name: insurer }
|
||||
- { name: sessions }
|
||||
- { name: case_number, optional: true }
|
||||
|
||||
- id: no-show
|
||||
who: a therapist whose patient did not turn up and did not call
|
||||
wants: the reception to ring them and get them back in
|
||||
enters_as: therapists
|
||||
lands_in: no_shows
|
||||
handled_by: reception
|
||||
stages: [open, contacted, rebooked, closed]
|
||||
done_when: [rebooked, closed]
|
||||
success: [rebooked]
|
||||
max_fields: 2
|
||||
collects:
|
||||
- { name: patient_name }
|
||||
- { name: appointment_day, type: date }
|
||||
- { name: note, optional: true }
|
||||
|
||||
# Held out from every model that writes words.
|
||||
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." }
|
||||
@@ -0,0 +1,243 @@
|
||||
# Tomter Vel, en velforening: fire dører på forsiden (medlemskap,
|
||||
# melde fra, bidra, naboer imellom) og høringsinnspill rett på
|
||||
# forsiden, siden den som har en mening om en sak ikke ser seg selv
|
||||
# som frivillig. Komiteene er gruppene: en søknad om plass i en
|
||||
# komité velger blant de samme sju som har hver sin pult. Trafikk,
|
||||
# anlegg og oppslagstavla kan alle lese; kontaktopplysninger vises
|
||||
# ikke der. Nabohjelp begge veier, og oppslagstavla for deling av
|
||||
# utstyr holdes lite: én melding, styret legger den ut og tar den ned.
|
||||
business: Tomter Vel
|
||||
language: no
|
||||
contact: { name: Styret i Tomter Vel, email: post@tomtervel.no }
|
||||
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.
|
||||
|
||||
# Komiteene, som gruppene heter, med navnet folk kjenner dem under.
|
||||
groups:
|
||||
- { id: arrangementer, label: Arrangementer }
|
||||
- { id: elvesti, label: Elvesti }
|
||||
- { id: horingsinstans, label: Høringsinstans }
|
||||
- { id: lekeplasser, label: Leke- og møteplasser }
|
||||
- { id: miljogate, label: Miljøgate }
|
||||
- { id: pendlerforhold, label: Pendlerforhold }
|
||||
- { id: trafikk, label: Trafikkforhold }
|
||||
|
||||
doors:
|
||||
- id: medlem
|
||||
who: en husstand i Tomter som vil bli medlem, betale kontingent, eller melde flytting, ny e-post eller utmelding
|
||||
- id: melde-fra
|
||||
who: noen som har sett noe farlig i trafikken, eller noe ødelagt på lekeplassen eller stien
|
||||
- id: bidra
|
||||
who: noen som vil stille opp på 17. mai, dugnad eller et arrangement, eller sitte i en komité
|
||||
- id: naboer
|
||||
who: en nabo som trenger en hånd med snømåking, handling eller skyss, kan gi en, eller har noe å låne ut
|
||||
|
||||
needs:
|
||||
- id: bli-medlem
|
||||
who: en husstand i Tomter
|
||||
wants: å bli medlem og få betalt kontingenten
|
||||
door: medlem
|
||||
lands_in: husstander
|
||||
handled_by: kasserer
|
||||
stages: [open, betalt, utmeldt]
|
||||
done_when: [betalt, utmeldt]
|
||||
success: [betalt]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: navn }
|
||||
- { name: adresse }
|
||||
- { name: epost, type: email }
|
||||
- { name: telefon, type: tel, optional: true }
|
||||
|
||||
- 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
|
||||
door: medlem
|
||||
lands_in: medlemsendringer
|
||||
handled_by: kasserer
|
||||
stages: [open, oppdatert]
|
||||
done_when: [oppdatert]
|
||||
success: [oppdatert]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: navn }
|
||||
- { name: adresse }
|
||||
- { name: hva_er_nytt, type: textarea }
|
||||
|
||||
- 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
|
||||
door: melde-fra
|
||||
lands_in: trafikkmeldinger
|
||||
handled_by: trafikk
|
||||
stages: [open, tatt_opp, ordnet, avvist]
|
||||
done_when: [ordnet, avvist]
|
||||
success: [ordnet]
|
||||
# Alle kan se hva som er meldt og hvor det står; e-posten vises ikke.
|
||||
watched_by: [styret, public]
|
||||
max_fields: 2
|
||||
collects:
|
||||
- { name: hvor }
|
||||
- { name: hva, type: textarea }
|
||||
- { name: epost, type: email, optional: true }
|
||||
|
||||
- id: anleggsfeil
|
||||
who: en som ser at noe på lekeplassen eller stien er ødelagt
|
||||
wants: at det blir fikset før noen skader seg
|
||||
door: melde-fra
|
||||
lands_in: anleggsfeil
|
||||
handled_by: lekeplasser
|
||||
stages: [open, tatt_tak_i, utbedret]
|
||||
done_when: [utbedret]
|
||||
success: [utbedret]
|
||||
watched_by: [public]
|
||||
max_fields: 2
|
||||
collects:
|
||||
- { name: hvor, type: select, options: [Lekeplassen, Elvestien, Skøytebanen, Et annet sted] }
|
||||
- { name: hva, type: textarea }
|
||||
|
||||
# Rett på forsiden: den som har en mening om en sak er ikke frivillig.
|
||||
- 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
|
||||
lands_in: innspill
|
||||
handled_by: horingsinstans
|
||||
watched_by: [styret]
|
||||
stages: [open, tatt_med, ikke_tatt_med]
|
||||
done_when: [tatt_med, ikke_tatt_med]
|
||||
success: [tatt_med]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: navn }
|
||||
- { name: sak }
|
||||
- { name: innspill, type: textarea }
|
||||
|
||||
- id: hjelpe-til
|
||||
who: en som vil hjelpe til på et arrangement eller en dugnad
|
||||
wants: å bli satt opp på noe som passer dem
|
||||
door: bidra
|
||||
lands_in: frivillige
|
||||
handled_by: arrangementer
|
||||
stages: [open, kontaktet, satt_opp, takket_nei]
|
||||
done_when: [satt_opp, takket_nei]
|
||||
success: [satt_opp]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: navn }
|
||||
- { name: telefon, type: tel }
|
||||
- { name: hva, type: select, multiple: true, 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
|
||||
door: bidra
|
||||
lands_in: komitesoknader
|
||||
handled_by: styret
|
||||
stages: [open, plassert, avslatt]
|
||||
done_when: [plassert, avslatt]
|
||||
success: [plassert]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: navn }
|
||||
- { name: epost, type: email }
|
||||
- { name: komite, type: select, multiple: true, options_from: groups }
|
||||
|
||||
# Nabohjelp: den som trenger en hånd, og den som kan gi en. En
|
||||
# nabohjelpsgruppe kobler dem; den som fikk hjelp sier fra selv at
|
||||
# det er ordnet.
|
||||
- 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
|
||||
door: naboer
|
||||
lands_in: hjelpebehov
|
||||
handled_by: nabohjelp
|
||||
stages: [open, formidlet, ordnet, ikke_lost]
|
||||
done_when: [ordnet, ikke_lost]
|
||||
success: [ordnet]
|
||||
moves_by: { ordnet: [submitter, nabohjelp] }
|
||||
max_fields: 4
|
||||
collects:
|
||||
- { name: navn }
|
||||
- { name: email, type: email }
|
||||
- { name: adresse }
|
||||
- { name: hva, type: textarea }
|
||||
- { name: telefon, type: tel, optional: true }
|
||||
|
||||
- id: kan-hjelpe
|
||||
who: en nabo som kan stille opp når noen trenger det
|
||||
wants: å bli spurt når det passer
|
||||
door: naboer
|
||||
lands_in: hjelpere
|
||||
handled_by: nabohjelp
|
||||
stages: [open, registrert, trukket]
|
||||
done_when: [registrert, trukket]
|
||||
success: [registrert]
|
||||
moves_by: { trukket: [submitter, nabohjelp] }
|
||||
max_fields: 4
|
||||
collects:
|
||||
- { name: navn }
|
||||
- { name: email, type: email }
|
||||
- { name: telefon, type: tel }
|
||||
- { name: kan, type: select, multiple: true, options: [Snømåking, Handling, Kjøring, Småfiks i huset, En prat og litt selskap, Det som trengs] }
|
||||
|
||||
# Oppslagstavla, holdt lite: én melding.
|
||||
- id: dele-utstyr
|
||||
who: en nabo som har noe å låne ut, eller trenger å låne noe
|
||||
wants: et oppslag som naboene ser
|
||||
door: naboer
|
||||
lands_in: oppslag
|
||||
handled_by: styret
|
||||
stages: [open, lagt_ut, tatt_ned]
|
||||
done_when: [lagt_ut, tatt_ned]
|
||||
success: [lagt_ut]
|
||||
# Den som la det ut kan ta det ned selv. Tavla er offentlig: det er
|
||||
# den naboene leser; navn og e-post vises ikke der.
|
||||
moves_by: { tatt_ned: [submitter, styret] }
|
||||
watched_by: [public]
|
||||
max_fields: 4
|
||||
collects:
|
||||
- { name: navn, private: true }
|
||||
- { name: email, type: email }
|
||||
- { name: har_eller_trenger, type: select, options: [Jeg har noe å låne ut, Jeg trenger å låne noe] }
|
||||
- { name: hva, type: textarea }
|
||||
|
||||
- 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
|
||||
stages: [open, godkjent, utbetalt, avvist]
|
||||
done_when: [utbetalt, avvist]
|
||||
success: [utbetalt]
|
||||
max_fields: 3
|
||||
collects:
|
||||
- { name: navn }
|
||||
- { name: belop }
|
||||
- { name: hva, type: textarea }
|
||||
|
||||
# Holdt unna alle modeller som skriver ord.
|
||||
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." }
|
||||
@@ -0,0 +1,45 @@
|
||||
# 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.
|
||||
@@ -0,0 +1,8 @@
|
||||
{"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@/"}
|
||||
@@ -0,0 +1,8 @@
|
||||
{"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@/"}
|
||||
@@ -0,0 +1,102 @@
|
||||
{
|
||||
"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
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
# 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`.
|
||||
@@ -0,0 +1,186 @@
|
||||
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
|
||||
@@ -0,0 +1,22 @@
|
||||
{"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"}
|
||||
@@ -0,0 +1,22 @@
|
||||
{"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"}
|
||||
@@ -0,0 +1,46 @@
|
||||
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)
|
||||
@@ -0,0 +1,54 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"next_description": "<WRITE: one or two short sentences>",
|
||||
"next_heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
@@ -0,0 +1,68 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"form_title": "<WRITE: a title for the form, two to four words>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"labels": {
|
||||
"change": "<WRITE: a form label for the field `change`>",
|
||||
"email": "<WRITE: a form label for the field `email`>",
|
||||
"job_address": "<WRITE: a form label for the field `job_address`>",
|
||||
"needed_by": "<WRITE: a form label for the field `needed_by`>"
|
||||
},
|
||||
"page_description": "<WRITE: one or two short sentences>",
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
@@ -0,0 +1,205 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"links": {
|
||||
"change-request": {
|
||||
"button": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>"
|
||||
}
|
||||
},
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
@@ -0,0 +1,92 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"moves": {
|
||||
"ordered->delivered": "<WRITE: a button, two to four words, for a case going ordered->delivered>"
|
||||
}
|
||||
}
|
||||
},
|
||||
"confirm": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"links": {
|
||||
"order-materials": {
|
||||
"button": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>"
|
||||
},
|
||||
"report-site-issue": {
|
||||
"button": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>"
|
||||
}
|
||||
},
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"next_description": "<WRITE: one or two short sentences>",
|
||||
"next_heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"form_title": "<WRITE: a title for the form, two to four words>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"labels": {
|
||||
"needed_by": "<WRITE: a form label for the field `needed_by`>",
|
||||
"site_address": "<WRITE: a form label for the field `site_address`>",
|
||||
"what": "<WRITE: a form label for the field `what`>"
|
||||
},
|
||||
"page_description": "<WRITE: one or two short sentences>",
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"next_description": "<WRITE: one or two short sentences>",
|
||||
"next_heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"form_title": "<WRITE: a title for the form, two to four words>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"labels": {
|
||||
"kind": "<WRITE: a form label for the field `kind`>",
|
||||
"what_happened": "<WRITE: a form label for the field `what_happened`>",
|
||||
"where": "<WRITE: a form label for the field `where`>"
|
||||
},
|
||||
"page_description": "<WRITE: one or two short sentences>",
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
@@ -0,0 +1,72 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: one or two short sentences>",
|
||||
"moves": {
|
||||
"approved": {
|
||||
"button": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>"
|
||||
},
|
||||
"declined": {
|
||||
"button": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>"
|
||||
}
|
||||
},
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
@@ -0,0 +1,98 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: one or two short sentences>",
|
||||
"doors": {
|
||||
"work-with-us": {
|
||||
"button": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>"
|
||||
},
|
||||
"your-building": {
|
||||
"button": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>"
|
||||
}
|
||||
},
|
||||
"needs": {
|
||||
"neighbour-complaint": {
|
||||
"button": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"form_title": "<WRITE: a title for the form, two to four words>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"labels": {
|
||||
"reach_me_on": "<WRITE: a form label for the field `reach_me_on`>",
|
||||
"site_address": "<WRITE: a form label for the field `site_address`>",
|
||||
"what_is_wrong": "<WRITE: a form label for the field `what_is_wrong`>"
|
||||
}
|
||||
}
|
||||
},
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
@@ -0,0 +1,246 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"moves": {
|
||||
"interviewing->declined": "<WRITE: a button, two to four words, for a case going interviewing->declined>",
|
||||
"interviewing->offered": "<WRITE: a button, two to four words, for a case going interviewing->offered>",
|
||||
"offered->declined": "<WRITE: a button, two to four words, for a case going offered->declined>",
|
||||
"offered->hired": "<WRITE: a button, two to four words, for a case going offered->hired>",
|
||||
"open->declined": "<WRITE: a button, two to four words, for a case going open->declined>",
|
||||
"open->interviewing": "<WRITE: a button, two to four words, for a case going open->interviewing>"
|
||||
}
|
||||
},
|
||||
"bids": {
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"moves": {
|
||||
"open->accepted": "<WRITE: a button, two to four words, for a case going open->accepted>",
|
||||
"open->declined": "<WRITE: a button, two to four words, for a case going open->declined>",
|
||||
"open->shortlisted": "<WRITE: a button, two to four words, for a case going open->shortlisted>",
|
||||
"shortlisted->accepted": "<WRITE: a button, two to four words, for a case going shortlisted->accepted>",
|
||||
"shortlisted->declined": "<WRITE: a button, two to four words, for a case going shortlisted->declined>"
|
||||
}
|
||||
},
|
||||
"change_orders": {
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"moves": {
|
||||
"approved->declined": "<WRITE: a button, two to four words, for a case going approved->declined>",
|
||||
"open->declined": "<WRITE: a button, two to four words, for a case going open->declined>",
|
||||
"open->priced": "<WRITE: a button, two to four words, for a case going open->priced>",
|
||||
"priced->declined": "<WRITE: a button, two to four words, for a case going priced->declined>"
|
||||
}
|
||||
},
|
||||
"claims": {
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"moves": {
|
||||
"accepted->rejected": "<WRITE: a button, two to four words, for a case going accepted->rejected>",
|
||||
"inspected->accepted": "<WRITE: a button, two to four words, for a case going inspected->accepted>",
|
||||
"inspected->rejected": "<WRITE: a button, two to four words, for a case going inspected->rejected>",
|
||||
"open->rejected": "<WRITE: a button, two to four words, for a case going open->rejected>"
|
||||
}
|
||||
},
|
||||
"complaints": {
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"moves": {}
|
||||
},
|
||||
"enquiries": {
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"moves": {
|
||||
"open->lost": "<WRITE: a button, two to four words, for a case going open->lost>",
|
||||
"open->surveyed": "<WRITE: a button, two to four words, for a case going open->surveyed>",
|
||||
"quoted->lost": "<WRITE: a button, two to four words, for a case going quoted->lost>",
|
||||
"quoted->won": "<WRITE: a button, two to four words, for a case going quoted->won>",
|
||||
"surveyed->lost": "<WRITE: a button, two to four words, for a case going surveyed->lost>",
|
||||
"surveyed->quoted": "<WRITE: a button, two to four words, for a case going surveyed->quoted>"
|
||||
}
|
||||
},
|
||||
"job_requests": {
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"moves": {
|
||||
"open->awarded": "<WRITE: a button, two to four words, for a case going open->awarded>",
|
||||
"open->withdrawn": "<WRITE: a button, two to four words, for a case going open->withdrawn>"
|
||||
}
|
||||
},
|
||||
"site_issues": {
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"moves": {}
|
||||
},
|
||||
"subcontractors": {
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"moves": {
|
||||
"awaiting_papers->approved": "<WRITE: a button, two to four words, for a case going awaiting_papers->approved>",
|
||||
"awaiting_papers->declined": "<WRITE: a button, two to four words, for a case going awaiting_papers->declined>",
|
||||
"open->approved": "<WRITE: a button, two to four words, for a case going open->approved>",
|
||||
"open->awaiting_papers": "<WRITE: a button, two to four words, for a case going open->awaiting_papers>",
|
||||
"open->declined": "<WRITE: a button, two to four words, for a case going open->declined>"
|
||||
}
|
||||
}
|
||||
},
|
||||
"confirm": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"links": {
|
||||
"log-phone-enquiry": {
|
||||
"button": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>"
|
||||
},
|
||||
"post-job-request": {
|
||||
"button": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>"
|
||||
}
|
||||
},
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
+54
@@ -0,0 +1,54 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"next_description": "<WRITE: one or two short sentences>",
|
||||
"next_heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
+68
@@ -0,0 +1,68 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"form_title": "<WRITE: a title for the form, two to four words>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"labels": {
|
||||
"address": "<WRITE: a form label for the field `address`>",
|
||||
"caller": "<WRITE: a form label for the field `caller`>",
|
||||
"phone": "<WRITE: a form label for the field `phone`>",
|
||||
"problem": "<WRITE: a form label for the field `problem`>"
|
||||
},
|
||||
"page_description": "<WRITE: one or two short sentences>",
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
+54
@@ -0,0 +1,54 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"next_description": "<WRITE: one or two short sentences>",
|
||||
"next_heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
+68
@@ -0,0 +1,68 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"form_title": "<WRITE: a title for the form, two to four words>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"labels": {
|
||||
"site_address": "<WRITE: a form label for the field `site_address`>",
|
||||
"start": "<WRITE: a form label for the field `start`>",
|
||||
"trade": "<WRITE: a form label for the field `trade`>",
|
||||
"work": "<WRITE: a form label for the field `work`>"
|
||||
},
|
||||
"page_description": "<WRITE: one or two short sentences>",
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"next_description": "<WRITE: one or two short sentences>",
|
||||
"next_heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"next_description": "<WRITE: one or two short sentences>",
|
||||
"next_heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"next_description": "<WRITE: one or two short sentences>",
|
||||
"next_heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
+54
@@ -0,0 +1,54 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"next_description": "<WRITE: one or two short sentences>",
|
||||
"next_heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"next_description": "<WRITE: one or two short sentences>",
|
||||
"next_heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"next_description": "<WRITE: one or two short sentences>",
|
||||
"next_heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
@@ -0,0 +1,84 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"moves": {
|
||||
"in_hand->closed": "<WRITE: a button, two to four words, for a case going in_hand->closed>",
|
||||
"open->in_hand": "<WRITE: a button, two to four words, for a case going open->in_hand>"
|
||||
}
|
||||
}
|
||||
},
|
||||
"confirm": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"links": {
|
||||
"safety-round-finding": {
|
||||
"button": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>"
|
||||
}
|
||||
},
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
+54
@@ -0,0 +1,54 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"next_description": "<WRITE: one or two short sentences>",
|
||||
"next_heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
+66
@@ -0,0 +1,66 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"form_title": "<WRITE: a title for the form, two to four words>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"labels": {
|
||||
"kind": "<WRITE: a form label for the field `kind`>",
|
||||
"what_happened": "<WRITE: a form label for the field `what_happened`>",
|
||||
"where": "<WRITE: a form label for the field `where`>"
|
||||
},
|
||||
"page_description": "<WRITE: one or two short sentences>",
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
@@ -0,0 +1,181 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"moves": {}
|
||||
},
|
||||
"change_orders": {
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"moves": {
|
||||
"approved->completed": "<WRITE: a button, two to four words, for a case going approved->completed>"
|
||||
}
|
||||
},
|
||||
"claims": {
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"moves": {
|
||||
"accepted->fixed": "<WRITE: a button, two to four words, for a case going accepted->fixed>",
|
||||
"open->inspected": "<WRITE: a button, two to four words, for a case going open->inspected>"
|
||||
}
|
||||
},
|
||||
"complaints": {
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"moves": {
|
||||
"open->answered": "<WRITE: a button, two to four words, for a case going open->answered>"
|
||||
}
|
||||
},
|
||||
"enquiries": {
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"moves": {
|
||||
"open->surveyed": "<WRITE: a button, two to four words, for a case going open->surveyed>"
|
||||
}
|
||||
},
|
||||
"job_requests": {
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"moves": {}
|
||||
},
|
||||
"material_orders": {
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"moves": {
|
||||
"open->ordered": "<WRITE: a button, two to four words, for a case going open->ordered>",
|
||||
"open->refused": "<WRITE: a button, two to four words, for a case going open->refused>",
|
||||
"ordered->delivered": "<WRITE: a button, two to four words, for a case going ordered->delivered>",
|
||||
"ordered->refused": "<WRITE: a button, two to four words, for a case going ordered->refused>"
|
||||
}
|
||||
},
|
||||
"site_issues": {
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"moves": {
|
||||
"open->in_hand": "<WRITE: a button, two to four words, for a case going open->in_hand>"
|
||||
}
|
||||
},
|
||||
"subcontractors": {
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"moves": {}
|
||||
}
|
||||
},
|
||||
"confirm": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"links": {},
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
@@ -0,0 +1,86 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"moves": {}
|
||||
}
|
||||
},
|
||||
"confirm": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"links": {
|
||||
"submit-bid": {
|
||||
"button": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>"
|
||||
}
|
||||
},
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
+54
@@ -0,0 +1,54 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"next_description": "<WRITE: one or two short sentences>",
|
||||
"next_heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"form_title": "<WRITE: a title for the form, two to four words>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"labels": {
|
||||
"can_start": "<WRITE: a form label for the field `can_start`>",
|
||||
"job": "<WRITE: a form label for the field `job`>",
|
||||
"price": "<WRITE: a form label for the field `price`>"
|
||||
},
|
||||
"page_description": "<WRITE: one or two short sentences>",
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
@@ -0,0 +1,104 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: one or two short sentences>",
|
||||
"needs": {
|
||||
"job-application": {
|
||||
"button": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"form_title": "<WRITE: a title for the form, two to four words>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"labels": {
|
||||
"experience": "<WRITE: a form label for the field `experience`>",
|
||||
"name": "<WRITE: a form label for the field `name`>",
|
||||
"phone": "<WRITE: a form label for the field `phone`>",
|
||||
"trade": "<WRITE: a form label for the field `trade`>"
|
||||
}
|
||||
},
|
||||
"subcontractor-application": {
|
||||
"button": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"form_title": "<WRITE: a title for the form, two to four words>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"labels": {
|
||||
"company": "<WRITE: a form label for the field `company`>",
|
||||
"contact_email": "<WRITE: a form label for the field `contact_email`>",
|
||||
"insurance_confirmed": "<WRITE: a form label for the field `insurance_confirmed`>",
|
||||
"registration_number": "<WRITE: a form label for the field `registration_number`>",
|
||||
"trade": "<WRITE: a form label for the field `trade`>",
|
||||
"trade_approval": "<WRITE: a form label for the field `trade_approval`>"
|
||||
}
|
||||
}
|
||||
},
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
@@ -0,0 +1,130 @@
|
||||
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 <ingrid@nordvikbygg.example>
|
||||
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": "<WRITE: one or two short sentences>",
|
||||
"needs": {
|
||||
"build-enquiry": {
|
||||
"button": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"form_title": "<WRITE: a title for the form, two to four words>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"labels": {
|
||||
"address": "<WRITE: a form label for the field `address`>",
|
||||
"name": "<WRITE: a form label for the field `name`>",
|
||||
"phone": "<WRITE: a form label for the field `phone`>",
|
||||
"project": "<WRITE: a form label for the field `project`>",
|
||||
"timeframe": "<WRITE: a form label for the field `timeframe`>"
|
||||
}
|
||||
},
|
||||
"survey-enquiry": {
|
||||
"button": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"form_title": "<WRITE: a title for the form, two to four words>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"labels": {
|
||||
"access": "<WRITE: a form label for the field `access`>",
|
||||
"address": "<WRITE: a form label for the field `address`>",
|
||||
"name": "<WRITE: a form label for the field `name`>",
|
||||
"phone": "<WRITE: a form label for the field `phone`>",
|
||||
"problem": "<WRITE: a form label for the field `problem`>"
|
||||
}
|
||||
},
|
||||
"warranty-claim": {
|
||||
"button": "<WRITE: a button, one to three words>",
|
||||
"description": "<WRITE: one or two short sentences>",
|
||||
"form_title": "<WRITE: a title for the form, two to four words>",
|
||||
"heading": "<WRITE: a heading, at most eight words, saying what the reader gets>",
|
||||
"labels": {
|
||||
"address": "<WRITE: a form label for the field `address`>",
|
||||
"fault": "<WRITE: a form label for the field `fault`>",
|
||||
"handed_over": "<WRITE: a form label for the field `handed_over`>",
|
||||
"name": "<WRITE: a form label for the field `name`>",
|
||||
"phone": "<WRITE: a form label for the field `phone`>"
|
||||
}
|
||||
}
|
||||
},
|
||||
"question": "<WRITE: the one question this page asks its reader>"
|
||||
}
|
||||
|
||||
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?"
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,330 @@
|
||||
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.
|
||||
@@ -0,0 +1 @@
|
||||
qualifies: clients
|
||||
@@ -0,0 +1,10 @@
|
||||
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?
|
||||
@@ -0,0 +1,29 @@
|
||||
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
|
||||
@@ -0,0 +1,11 @@
|
||||
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
|
||||
@@ -0,0 +1 @@
|
||||
qualifies: crew
|
||||
@@ -0,0 +1,33 @@
|
||||
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
|
||||
@@ -0,0 +1,10 @@
|
||||
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?
|
||||
@@ -0,0 +1,25 @@
|
||||
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
|
||||
@@ -0,0 +1,10 @@
|
||||
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?
|
||||
@@ -0,0 +1,30 @@
|
||||
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
|
||||
@@ -0,0 +1,15 @@
|
||||
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?
|
||||
@@ -0,0 +1,34 @@
|
||||
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
|
||||
@@ -0,0 +1 @@
|
||||
qualifies: project_managers
|
||||
@@ -0,0 +1,238 @@
|
||||
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
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
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?
|
||||
@@ -0,0 +1,28 @@
|
||||
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
|
||||
@@ -0,0 +1,10 @@
|
||||
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?
|
||||
@@ -0,0 +1,34 @@
|
||||
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
|
||||
@@ -0,0 +1,10 @@
|
||||
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?
|
||||
@@ -0,0 +1,10 @@
|
||||
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?
|
||||
@@ -0,0 +1,10 @@
|
||||
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?
|
||||
@@ -0,0 +1,10 @@
|
||||
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?
|
||||
@@ -0,0 +1,10 @@
|
||||
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?
|
||||
@@ -0,0 +1,10 @@
|
||||
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?
|
||||
@@ -0,0 +1 @@
|
||||
qualifies: safety_officer
|
||||
@@ -0,0 +1,31 @@
|
||||
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
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
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?
|
||||
@@ -0,0 +1,30 @@
|
||||
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
|
||||
@@ -0,0 +1 @@
|
||||
qualifies: site_managers
|
||||
@@ -0,0 +1,162 @@
|
||||
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
|
||||
@@ -0,0 +1 @@
|
||||
qualifies: subcontractors
|
||||
@@ -0,0 +1,25 @@
|
||||
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
|
||||
@@ -0,0 +1,10 @@
|
||||
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?
|
||||
@@ -0,0 +1,25 @@
|
||||
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
|
||||
@@ -0,0 +1,70 @@
|
||||
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
|
||||
@@ -0,0 +1,84 @@
|
||||
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
|
||||
@@ -0,0 +1,427 @@
|
||||
{
|
||||
"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
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
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
|
||||
@@ -0,0 +1,5 @@
|
||||
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%)
|
||||
@@ -0,0 +1,8 @@
|
||||
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%)
|
||||
@@ -0,0 +1,2 @@
|
||||
lang: en
|
||||
title: Nordvik Bygg
|
||||
@@ -0,0 +1,22 @@
|
||||
{"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"]}
|
||||
@@ -0,0 +1,22 @@
|
||||
{"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"]}
|
||||
@@ -0,0 +1,41 @@
|
||||
# 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.
|
||||
@@ -0,0 +1,144 @@
|
||||
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.
|
||||
@@ -0,0 +1,101 @@
|
||||
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 }
|
||||
@@ -0,0 +1,31 @@
|
||||
# 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`.
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user