Check whether this card's code meets the acceptance criteria
日本語の概要は準備中です。原文の説明を表示しています。
Create new demo data in a Tamanu deployment through its HTTP API: patients, clinicians, appointments, theatre and bed bookings, allergies and conditions, reference data and settings. Use when asked to seed, add, set up or refresh demo data on a demo, presentation, PR or test deployment (e.g. 'book back-to-back theatre cases for next week' or 'add six surgical patients with appointments today'). To copy existing data from another deployment, use transfer-deployment-data. Not for production deployments.
日本語の概要は準備中です。原文の説明を表示しています。
実行スコア 未検証
インストール方法を見るインストールする前に、エージェントに与えられる指示の中身を確認できます。
Create the demo data the user describes in a Tamanu deployment, through its HTTP API.
Read .agents/docs/tamanu-api-access.md first. It covers why this is done through the API from a shell and never through a browser, how to log in to central and facility servers, the request helper, how to look up IDs, and the behaviours that catch people out. Stop straight away if you can't send HTTP requests from where you are.
Ask with your question tool where you have one, a few questions at a time; otherwise ask in prose. Ask only what the user hasn't already told you.
admin@tamanu.io / admin. Others need the password from the user.Restate it as a short plan before writing anything. When it's many records across days and places, give the counts per day and place so the user can catch a misunderstanding early.
Log in to central and to the facility server, and scope the facility token to the facility. Then read what the plan needs: the facility's areas and locations, clinicians, appointment types, booking types, procedure types, and relevant settings such as appointments.bookingSlots, which sets the bookable hours and slot length. Use only IDs that exist. Where something the plan needs doesn't exist, create it (see below) or ask.
Check for what's already there, so a re-run doesn't duplicate it: existing patients by name and date of birth, existing appointments for that patient and day, existing bookings in that location and time.
All on the facility server unless marked central.
POST /api/patient with { patientRegistryType: "new_patient", facilityId, displayId, firstName, lastName, dateOfBirth, sex }. Generate the displayId yourself. Give each patient a name, and later an address, that fits the country agreed in step 1, with no two patients alike. Set addresses and phone numbers afterwards with PUT /api/patient/<id>.POST /api/admin/role with { id, name }), then users with POST /api/admin/users and { displayName, email, role, password }, using a name that fits the country agreed in step 1 and a long random password nobody needs to know. Clinicians who only appear on appointments don't need anything more. Wait for them to sync to the facility before using them there.POST /api/appointments with { locationGroupId, appointmentTypeId, patientId, clinicianId, startTime, endTime, facilityId }. They're created Confirmed. To change the status, PUT /api/appointments/<id> with { status }, e.g. "Arrived".POST /api/appointments/locationBooking with { startTime, endTime, locationId, patientId, clinicianId, bookingTypeId, procedureTypeIds? }. Start and end on the booking slot boundaries. One that overlaps an existing booking in the same location is refused; skip that block and carry on.POST /api/allergy with { patientId, allergyId, reactionId, recordedDate, practitionerId }.POST /api/ongoingCondition with { patientId, conditionId, recordedDate, examinerId }.POST /api/admin/referenceData/manage with { referenceDataType, code, name }.PUT the whole scope back.features.patientPortal, make sure patientPortal.baseUrl is set, then POST /api/patient/<id>/portal/register with { email, facilityId }. The registration link and every login code go to that email, so use an inbox the user can read. To give them forms, POST /api/patient/<id>/portal/forms with { formId, assignedAt, facilityId }.Leave email off appointments and bookings: it sends patients real reminders.
Read back what you created and compare it with the plan: counts per day, place and patient, and nothing overlapping where it shouldn't. Where the demo shows something to patients or staff, check it through the endpoint that feature uses; for the self check-in kiosk, GET /api/kiosk/appointments?lastName=&dateOfBirth= on the facility should find each patient.
Summarise what you created, grouped the way the user will check it (per facility, theatre, ward, day or patient), and anything skipped and why. Include the addresses to open. Point out anything that needs redoing before the demo, such as appointments that only count for today.
まだレビューはありません。使ってみた感想をお寄せください。
ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。
まだコメントはありません。最初のコメントを書いてみませんか。
Check whether this card's code meets the acceptance criteria
日本語の概要は準備中です。原文の説明を表示しています。
Summarise the unit and e2e tests a branch/PR adds, run only those, and produce a paste-ready report (e.g. for a Linear card). Use when asked to 'summarise added tests', 'run the new tests', 'what tests did this PR add', or to prove a card's test coverage.
日本語の概要は準備中です。原文の説明を表示しています。
Run a quick UX/UI workshop using ASCII-art sketches
日本語の概要は準備中です。原文の説明を表示しています。
Write automated tests for unticked scenarios in this card's test cases
日本語の概要は準備中です。原文の説明を表示しています。
Review code changes on this card for likely bugs, regressions, and missed edges
日本語の概要は準備中です。原文の説明を表示しています。
Maintain a support docs pack — dedup, length budgets, and no splintering — and land changes as a reviewed pull request. Use when a support thread, or a hand-off from Support assist, surfaces a new resolution, a correction to an existing one, or a deployment quirk worth recording. Not for ordinary code changes.
日本語の概要は準備中です。原文の説明を表示しています。