Files
portal/runs/physio-2026-09-22/needs.yaml
T
Bendik Aagaard LynghaugandClaude Fable 5.1 255aeb4f4b 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
2026-09-23 12:31:51 +02:00

126 lines
3.4 KiB
YAML

needs:
- done_when:
- booked
- declined
enters: /
handled_by: reception
id: new-patient
lands_in: requests
max_fields: 4
max_steps: 2
stages:
- open
- offered
- booked
- declined
success:
- booked
via: I have pain or an injury
wants: a first appointment with a therapist who suits them
who: someone with something that hurts
- done_when:
- rebooked
- released
enters: /
handled_by: reception
id: move-or-cancel
lands_in: cancellations
max_fields: 3
max_steps: 2
stages:
- open
- rebooked
- released
success:
- rebooked
via: I have pain or an injury
wants: the time moved, or the slot freed
who: a patient who already has a time and cannot come
- also_moved_by:
- therapists
done_when:
- reported
- returned
enters: /
handled_by: reception
id: referral
lands_in: referrals
max_fields: 5
max_steps: 2
stages:
- open
- accepted
- booked
- reported
- returned
success:
- reported
via: I am a GP or hospital
wants: the patient seen, and a report back when the course ends
who: a GP or a hospital ward sending a patient
- done_when:
- approved
- refused
enters: /reception/insurance-approval
enters_as: reception
handled_by: reception
id: insurance-approval
lands_in: approvals
max_fields: 3
max_steps: 1
stages:
- open
- sent
- approved
- refused
success:
- approved
via: Request insurance approval
wants: the request sent and its answer kept where the patient's case is
who: the receptionist, before a course that an insurer has to approve
- done_when:
- rebooked
- closed
enters: /therapists/no-show
enters_as: therapists
handled_by: reception
id: no-show
lands_in: no_shows
max_fields: 2
max_steps: 1
stages:
- open
- contacted
- rebooked
- closed
success:
- rebooked
via: Report a no-show patient
wants: the reception to ring them and get them back in
who: a therapist whose patient did not turn up and did not call
personas:
- id: runner-knee
need: new-patient
text: I've been running for years and the outside of my right knee has started hurting after about five kilometres. I'd like someone to have a look, preferably in the mornings.
- id: post-surgery-mother
need: new-patient
text: My mother had a hip replacement three weeks ago and the hospital said she needs training. She can't do much on her own and I'll drive her.
- id: sick-child
need: move-or-cancel
text: I have a session on Thursday at ten but my daughter has a fever and I can't come. Can I move it?
- id: sent-abroad
need: move-or-cancel
text: Work is sending me abroad next week so my appointment on the 3rd is off. Just free the slot, I'll be in touch when I'm back.
- id: gp-shoulder
need: referral
text: I'm a GP. A patient of mine has a frozen shoulder that isn't improving with what I can offer. I'd like her to start with you and hear how it goes.
- id: hospital-discharge
need: referral
text: Orthopaedic ward here. We're discharging a man after an ankle fracture on Friday and need follow-up rehab arranged near where he lives. He'll need a report for his sick leave.
- id: reception-approval
need: insurance-approval
text: The patient in room two has a policy that covers twelve sessions if the insurer signs off first. I need to send that off and keep track of the answer.
- id: therapist-no-show
need: no-show
text: My two o'clock didn't turn up and didn't call. Second time. Someone needs to ring him.