One binary: the lint and the trainer are commands of portal
Test / test (pull_request) Successful in 1m7s
Test / test (pull_request) Successful in 1m7s
portal serve runs a site; portal lint is what iris was; portal plan, build, report and the rest are what portal-trainer was. One source at one version, so the three never disagree about what content means. Both histories are merged in (subtree). The release attaches the bare binary for a content repo's CI. The trainer's plans, intakes, engines and reference prompt come along; its runs stay in the old repo. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GT37Z1Xtfd9pUuQtMTg6Yt
This commit is contained in:
co-authored by
Claude Fable 5.1
parent
d0d1cbf23d
commit
96b3746643
@@ -0,0 +1 @@
|
||||
qualifies: owners
|
||||
@@ -0,0 +1,25 @@
|
||||
name: Which businesses are waiting on us?
|
||||
responsible:
|
||||
name: Bendik Aagaard Lynghaug
|
||||
contact: bl@uhhm.no
|
||||
alternatives:
|
||||
- name: Onboardings
|
||||
description: >
|
||||
Run `portal-trainer generate` on an open intake, push the draft,
|
||||
send the link, then mark it drafted. Revisions come back here.
|
||||
action: /desk
|
||||
consequence: [Confirm]
|
||||
features:
|
||||
- name: ""
|
||||
description: ""
|
||||
resource:
|
||||
source: { kind: kv, bucket: onboardings }
|
||||
requires_group: owners
|
||||
transitions:
|
||||
- { to: drafted, label: Draft sent }
|
||||
- { to: declined, label: Decline }
|
||||
- { from: drafted, to: live, label: Went live }
|
||||
- { from: drafted, to: revising, label: Revision asked }
|
||||
- { from: drafted, to: declined, label: Decline }
|
||||
- { from: revising, to: drafted, label: Revised draft sent }
|
||||
- { from: revising, to: declined, label: Decline }
|
||||
@@ -0,0 +1,21 @@
|
||||
name: How does an answer become a finished job?
|
||||
description: >
|
||||
Every page asks one question. Every answer lands with the person
|
||||
whose job it is, and carries its own next steps.
|
||||
alternatives:
|
||||
- name: A visitor answers
|
||||
description: >
|
||||
They pick what they came for and fill in the few fields that
|
||||
person needs. They are told who reads it and when.
|
||||
- name: The right role sees it
|
||||
description: >
|
||||
Each role has a desk listing what is theirs, with one button per
|
||||
step your process allows - quoted, approved, closed.
|
||||
- name: Nothing waits unseen
|
||||
description: >
|
||||
Every case has a state and an owner, so what is open, and with
|
||||
whom, is always one page away.
|
||||
- name: Describe your business and get a first draft
|
||||
description: Five answers in your own words.
|
||||
action: /
|
||||
consequence: [Start]
|
||||
@@ -0,0 +1,49 @@
|
||||
name: What does your business keep doing by hand?
|
||||
description: >
|
||||
Tell us who comes to you, what you keep track of, and who handles
|
||||
what. You get a site that asks each of those people the right
|
||||
question and moves every answer to the person who acts on it.
|
||||
responsible:
|
||||
name: Bendik Aagaard Lynghaug
|
||||
contact: bl@uhhm.no
|
||||
alternatives:
|
||||
- name: Describe your business and get a first draft
|
||||
description: >
|
||||
Five answers in your own words. We turn them into pages, forms
|
||||
and a desk for each role, and send you a link to try it.
|
||||
action: /received
|
||||
consequence: [Send it]
|
||||
record_as: onboardings
|
||||
encouragements:
|
||||
- Write it the way you would explain it to a new colleague.
|
||||
features:
|
||||
- name: You
|
||||
requirements:
|
||||
- { name: business, label: Business name }
|
||||
- { name: email, label: Your email, type: email }
|
||||
- name: The work
|
||||
description: Plain words are best. Stages, handovers and waiting are what we listen for.
|
||||
requirements:
|
||||
- name: what_we_do
|
||||
label: What you do
|
||||
type: textarea
|
||||
- name: who_comes_to_us
|
||||
label: Who comes to you, and what each of them wants
|
||||
type: textarea
|
||||
- name: what_we_keep_track_of
|
||||
label: What you keep track of, and the stages it goes through
|
||||
type: textarea
|
||||
- name: who_is_involved
|
||||
label: Who on your side handles what
|
||||
type: textarea
|
||||
- name: what_slows_us_down
|
||||
label: Where things get lost or wait today
|
||||
type: textarea
|
||||
optional: true
|
||||
|
||||
- name: See how a question becomes a finished job
|
||||
description: >
|
||||
One enquiry followed from the visitor's answer to the desk that
|
||||
closes it.
|
||||
action: /how
|
||||
consequence: [Show me]
|
||||
@@ -0,0 +1,15 @@
|
||||
followup: true
|
||||
name: What happens with what you sent?
|
||||
description: >
|
||||
Bendik reads every intake. Within two working days you get a link to
|
||||
a working draft built from your answers.
|
||||
alternatives:
|
||||
- name: You try the draft as each of your roles
|
||||
description: >
|
||||
Click through it as a customer, then as the colleague who handles
|
||||
that customer. Tell us what reads wrong and the draft comes back
|
||||
revised.
|
||||
- name: Back to the start
|
||||
description: ""
|
||||
action: /
|
||||
consequence: [Back]
|
||||
Reference in New Issue
Block a user