NL · EN

maze:Doctor

An AI that looks like a doctor and explains what the reference work Where Illness Comes From, Completed says about a complaint. Not a doctor and no diagnosis.

Open maze:Doctor →

1. For the user (lasting)

/doctor — the conversation

You describe in your own words what you notice. The doctor looks up which conditions in the book may fit, and explains in plain language what the book says: what it is, whether it is curable, controllable or relief only, what prevents it, the treatment and what simple means can do. Each condition carries the book's cure status and page number, with a link to that page and a button to read the whole entry.

Food (21 Oct). The doctor also knows the reference work What Food Does Our Body Need (73 pp., in the Library). If your question is about eating, nutrients, cooking, keeping, growing or herbs, or if food belongs with the condition found (Part 9 of the book), the box "From the food book" appears: explained from the sections found with page numbers, with the grade as the book gives it; every number must appear in the cited sections. No personal dosing. Tested blind: the right section in the top 3 for 20 of 24 new questions.

Analysis with your blueprint (21 Oct). Below the explanation from the book the doctor sets your blueprint beside the book: the code picks the propositions from the texts of J. Konstapel that apply to your chart (type, spleen, open centres, channels, colour) and looks in the best-fitting entry for the literal sentence on the same topic (immunity, autoimmunity, inflammation, infection, stress, heart and vessels). There is no freely written text: every line is a literal book sentence with page and a proposition with number and source. Where the book tempers it, that is stated. HYPOTHESIS; changes nothing about diagnosis or treatment.

What the blueprint does (Layer C, 20 Oct). Your dominant axis decides which question the doctor asks first: one follow-up question from the failure mode of your colour (Blueprint and Illness §6.3), labelled HYPOTHESIS. If you answer it, the doctor searches again with your answer added. The blueprint itself never changes diagnosis, treatment, referral or vaccination advice; only what you answer can change the entries. No follow-up question in an emergency, with a stop question, when the condition is not in the book, or when your axis is on a boundary. With the research box ticked, one line is stored per follow-up question: your axis, the predicted regulatory fault and the book titles before and after your answer — never your text.

Emergencies first (round 5, 20 Oct). Two guards: a list of fixed patterns and a short triage by the language model that only decides whether it may be an emergency or suicide; either one is enough. Tested blind on 60 sentences written by someone else: emergency 30/30, suicide 6/6, no false alarm (patterns alone: 19/30). If you mention an earlier heart attack, heart surgery, brain bleed or stroke, the answer always starts with: with a new or changed complaint call your GP today, if it gets worse call 112.

Emergencies first. Chest pain, acute breathlessness, signs of a stroke, heavy bleeding, unconsciousness, fever in an infant, a severe allergic reaction or a sudden severe headache bring up a red notice at the top: call 112. If you write about suicide, you get no explanation from the book but support and the help numbers: 113 Suicide Prevention, 0800-0113.

Log in first. The doctor is part of Swarp Support: you log in with your Support account (a login link by email) and come back; the page notices by itself that you are logged in. Without logging in you cannot ask a question; the red emergency notice always works.

The blueprint, right at the top. If your birth data is already in your Support account, the doctor fetches your blueprint from there and shows it at the top — you enter nothing again. If not, it asks for it at the top straight away and stores it in your Support account. It uses only the dominant axis (blue facts first, red what you can do first, green who can help, yellow the larger picture first); if that axis is on a boundary, the explanation stays neutral. The medical content does not change.

Language. The NL/EN button at the top chooses the language of the page and of the answer. The literal text of the book is English and is labelled as such.

Privacy. Your complaint is never stored or logged. Your birth data lives in your own Swarp Support account. Taking part in research is voluntary: only if you tick the box are the fixed part of your blueprint, your birth month and year, hemisphere, a 10-degree latitude band and optionally a diagnosis from the book's list stored. Never your name, e-mail, IP address or exact birth data. The deletion key you receive erases it again.

2. For the thinker (lasting)

The book describes 361 conditions in eight fixed sections, with four narrow cure statuses: self-limiting, curable, controllable, relief only. People describe complaints; the book describes conditions. So the language model proposes titles from the book's closed list, and the book decides which entry is shown. A second rule guards the free text: every number must appear verbatim in the cited entry, otherwise you get the literal text only.

3. For the builder (moves with the code)

Code in maze/doctor/: kennis.mjs (search, alarm, verifier, answer), route.mjs, pagina.html, boek.json (373 entries, parsed with PyMuPDF on the bold 12-point titles, ontleed.py), vectoren.bin (text-embedding-3-small). Tests: node maze/doctor/toets.mjs — retrieval 20/20 known and 20/20 blind, verifier with a planted error, alarm 10/10 with no false alarm, suicide without book analysis, no storage.

4. For the connector (moves with the code)

GET /api/doctor/ik (who is logged in: the Support session cookie on .swarp.nl is passed on to Support /api/me; then the stored birth data via Support /api/blueprint/namens and the blueprint via swarp.nl), POST /api/doctor/blauwdruk/bewaar {geboortedatum, geboorteplaats, geboortetijd?} (stores in your own Support account via /api/blueprint/save), GET /api/doctor, POST /api/doctor/vraag {vraag, kleur?, taal?: nl|en} (logged in only, otherwise 401), POST /api/doctor/alarm {vraag}, GET /api/doctor/vermelding?nr=, POST /api/doctor/blauwdruk {geboortedatum, geboorteplaats, geboortetijd?} (via swarp.nl /api/blauwdruk-namens with the shared secret; the style follows the dominant axis of the canonical q, blueprint-v2), GET /api/doctor/titels, GET /api/doctor/toestemming, POST /api/doctor/onderzoek {toestemming: true, …, diagnose?} → deletion key, POST /api/doctor/laagc {toestemming: true, kleur, voor, na} (Layer C log line, book titles only), POST /api/doctor/onderzoek/verwijder {verwijdersleutel}. Limit per IP: 10 per minute, 120 per day.