Pentla - Acceptance Criteria Dashboard

pentla-api
Commit: c8f323c | Updated: 3 Apr 2026, 17:25 | ACs: 127
Organisation
41%
88 of 216 ready for testing
Patients
26%
66 of 255 ready for testing
Orders & Configuration
34%
59 of 173 ready for testing
Component Trees
67%
74 of 111 ready for testing
Overall Progress 287 of 755 ready (38%)
287 ready for testing 301 blocked 167 not started
Status:
Area:

Organisation

88 ready 122 blocked 6 not started 216 total
#1 New Custom Manufacturer Onboarding End-to-End 27/48 56%
Step 1 — Platform Admin opens organisation management and starts creating a new organisation
READY AC-ORG-001 [CPO] Required fields enforced: organisation type, legal name, country, primary contact email
READY AC-ORG-002 [CPO] All 4 in-scope organisation types are selectable: Custom Manufacturer, Central Fab, Integrated Clinic-Fab, Clinic
READY AC-ORG-003 [CPO] Select "Custom-Made Device Manufacturer" as the type
Step 2 — Platform Admin creates the first unit (Production Facility)
READY AC-ORG-004 [CPO] Unit requires: name, type, country, address, data residency region, and applicable regulations
READY AC-ORG-005 [CPO] All 4 unit types are available: Clinic, Production Facility, Office, Warehouse
READY AC-ORG-006 [CO] Regulatory configuration and data residency region are auto-suggested based on unit country — e.g., Germany suggests MDR and GDPR with EU data residency
READY AC-ORG-007 [CPO] Data residency region is set at the unit level, not the organisation level. The org admin can adjust the auto-suggested region
READY AC-ORG-008 [CPO] Creating this first unit satisfies the requirement that an organisation must have at least one active unit
Step 3 — Platform Admin creates the first Org Admin user using the primary contact email
BLOCKED [First user does not auto-assign ORG_ADMIN - defaults to CLINICIAN] AC-ORG-009 [CPO] The first user is automatically assigned the Org Admin role
BLOCKED [No email infrastructure - no invitation email sending] AC-ORG-010 [CPO] Invitation email is sent to the primary contact email
BLOCKED [No email infrastructure - no privacy notice in invitation] AC-ORG-011 [CPO] Invitation email includes or links to a privacy notice informing the staff user about data processing, lawful basis, retention, and their GDPR rights (Articles 13 and 15-22)
Step 4 — Platform Admin sets verification status and activates the organisation
READY AC-ORG-012 [CPO] Verification is a platform admin attribute on the organisation record — not a gate to access
READY AC-ORG-013 [CPO] Organisation transitions from Setup to Active
READY AC-ORG-014 [CPO] Org Admin cannot self-verify
Step 5 — Org Admin accepts the invitation, sets password, and logs in
BLOCKED [No invitation acceptance flow - users created directly] AC-ORG-015 [CPO] Org Admin can set their password and access the platform once the organisation is Active
BLOCKED [No primary unit default loading on login] AC-ORG-016 [CPO] Platform loads with the Org Admin's primary unit as default context
BLOCKED [No welcome/onboarding state on first login] AC-ORG-017 [CPO] On first login, Org Admin sees a welcome state with prompts to complete optional profile fields (trading name, addresses, logo) and invite team members. Incomplete fields are surfaced prominently but do not block platform use
Step 6 — Org Admin completes the organisation profile
READY AC-ORG-018 [CPO] Optional fields are editable: trading name, tax identifier, registration number, addresses, phone, website, logo
READY AC-ORG-019 [CPO] Organisation type is displayed but not editable by the Org Admin. A "Contact Support" action is available, pre-filled with the current type and reason for change request
BLOCKED ['Contact Sales' gate for subscription changes not implemented] AC-ORG-020 [CPO] Enabled areas are visible but changes require contacting sales
READY AC-ORG-021 [CPO] Changing the legal name saves immediately (no pending state). Org Admin sees confirmation that the change was saved and a note that Pentla may follow up. The platform admin is notified for potential re-verification. No access interruption
Step 7 — Org Admin configures organisation-wide preferences
READY AC-ORG-022 [CPO] All preferences configurable: measurement system, date format, time format, timezone, currency, language, locale
READY AC-ORG-023 [CO] Measurement system selection (metric vs imperial) is present and clearly labelled — this setting will propagate to all clinical measurement capture
Step 8 — Org Admin opens settings and sees sections appropriate for Custom Manufacturer
READY AC-ORG-024 [CPO] Visible sections: Organisation Profile, Units, Users and Roles, Preferences, Patient Settings, Production Settings, Notifications, Subscription and Billing
READY AC-ORG-025 [CPO] No sections are shown that do not apply to this organisation type
Step 9 — Org Admin invites team members: a CPO, a Production Manager, and a Technician
READY AC-ORG-026 [CPO] Role picker shows only roles available for Custom Manufacturer
READY AC-ORG-027 [CO] Clinician (CPO) role is available at Custom Manufacturer — correct, as CPOs at custom manufacturers assess patients and configure devices
READY AC-ORG-028 [CO] Physician role is NOT available at Custom Manufacturer — correct, as custom manufacturers receive prescriptions from external prescribers, they do not employ them
BLOCKED [No explicit validation that user must have at least one role at creation] AC-ORG-029 [CPO] Each invited user must have at least one role assigned
BLOCKED [CreateUserDto accepts single unitId, no multi-unit assignment at invitation] AC-ORG-030 [CPO] Each invited user must be assigned to at least one unit
BLOCKED ['Exactly one primary unit' not enforced at invitation time] AC-ORG-031 [CPO] Each invited user must have exactly one primary unit
BLOCKED [CreateUserDto accepts single unitId - no multi unit-role pair assignment] AC-ORG-032 [CPO] Org Admin can assign all unit-role pairs in a single invitation flow
READY AC-ORG-033 [CPO] Platform Admin role is not available in the role picker
Step 10 — Org Admin enables notification preferences
BLOCKED [BLOCKED BY: notification-system - no notification module in API or frontend] AC-ORG-034 [CPO] Notification categories are visible: Orders, Production, Compliance, Billing, System
BLOCKED [BLOCKED BY: notification-system - no notification module in API or frontend] AC-ORG-035 [CPO] Notification preferences are per-user, not org-wide
BLOCKED [BLOCKED BY: notification-system - no notification module in API or frontend] AC-ORG-036 [CPO] Notification preferences are accessible from the user's own profile/account settings, not from the organisation settings area
BLOCKED [BLOCKED BY: notification-system - no notification module in API or frontend] AC-ORG-037 [CPO] Notification category defaults are role-aware — categories outside the user's area access default to OFF
Edge Cases
READY AC-ORG-038 [CPO] Attempting to create an organisation with a primary contact email already in use on the platform is rejected
BLOCKED [Depends on invitation flow (not implemented)] AC-ORG-039 [CPO] Inviting a user with an email already in use on the platform is rejected with a clear error
READY AC-ORG-040 [CO] Technician logs in and sees no patient PII anywhere — only pseudonymised references and fabrication data from the first moment they access the platform
READY AC-ORG-041 [CPO] Data retention minimum cannot be set below 10 years for organisations with MDR-applicable units
READY AC-ORG-042 [CPO] While the organisation is in Setup state (before activation), no patients or orders can be created — full platform access begins at Active
BLOCKED [No invitation link system] AC-ORG-043 [CPO] A user clicks an invitation link after 7 days. They see a clear error explaining the invitation has expired and should contact their Org Admin
BLOCKED [No invitation link system] AC-ORG-044 [CPO] Org Admin resends an invitation from user management — resending invalidates any previous invitation link
READY AC-ORG-045 [CPO] Attempting to submit the first order for a manufacturer org that has no registered or business address on file is blocked with a clear error citing Annex XIII requirements
BLOCKED [No Annex XIII address prompt on dashboard/order creation] AC-ORG-046 [CPO] When a manufacturer organisation has no registered or business address on file, the dashboard and order creation surface a prominent prompt explaining the Annex XIII address requirement and linking to the organisation profile
BLOCKED [Depends on AC-ORG-045] AC-ORG-047 [CO] If a CPO reaches order submission without an address on file, the order can be saved as a draft — configuration work is not lost
BLOCKED [Setup state user acceptance flow not implemented] AC-ORG-048 [CPO] If a user accepts an invitation while the organisation is still in Setup state, they can set their password but see a message explaining that the organisation is being set up and full platform access will begin once the Platform Admin activates it
#2 Multi-Unit Expansion and Role Assignment 7/24 29%
Step 1 — Org Admin views the current single-unit organisation's settings
BLOCKED [No dynamic UI to hide/show Units tab based on unit count] AC-ORG-050 [CPO] No separate "Units" section appears — unit information is shown within the Organisation Profile section
READY AC-ORG-051 [CPO] An "Add Location" action is available
Step 2 — Org Admin adds a second unit: a Clinic
READY AC-ORG-052 [CPO] Required fields enforced: name, type, country, address, data residency region, and applicable regulations
BLOCKED [Unit name uniqueness validation not verified in FE] AC-ORG-053 [CPO] Unit name must be unique within the organisation
READY AC-ORG-054 [CO] Regulatory configuration auto-suggested based on the new unit's country
BLOCKED [UI transition explanation for multi-unit not implemented] AC-ORG-055 [CPO] The platform explains that unit management has moved to its own section. Existing settings are preserved — nothing changes silently
READY AC-ORG-056 [CPO] After saving, a dedicated "Units" section now appears in settings showing both units
Step 3 — Org Admin assigns the existing CPO to the new Clinic unit
BLOCKED [Multi-unit role assignment not verified] AC-ORG-057 [CPO] CPO can be assigned to multiple units with different roles at each
BLOCKED [CPO clinical workflow access not verified] AC-ORG-058 [CO] CPO assigned to the Clinic unit now has access to the clinical workflow — patient intake, assessment creation, measurement capture, device configuration
BLOCKED [Primary unit change not verified] AC-ORG-059 [CPO] CPO's primary unit can be changed to the new Clinic unit
Step 4 — Org Admin assigns a Technician to the Production Facility only
BLOCKED [Technician unit assignment not verified] AC-ORG-060 [CPO] Technician is assigned to the Production Facility unit
BLOCKED [Technician PII restriction not verified] AC-ORG-061 [CO] Technician sees fabrication data and pseudonymised patient references only — no PII regardless of which unit they are assigned to
Step 5 — Org Admin views the user list and verifies unit assignments
READY AC-ORG-062 [CPO] Each user shows their assigned units and roles per unit
READY AC-ORG-063 [CPO] Org Admin (org-level role) automatically applies to all units — no per-unit assignment needed
Edge Cases
READY AC-ORG-064 [CPO] Attempting to add a unit with the same name as the existing unit is rejected
BLOCKED [Permission union across units not verified] AC-ORG-065 [CPO] A user with multiple roles across units sees a single unified interface — permissions are the union of all assigned roles, no role-switching
BLOCKED [Cross-unit role boundaries not verified] AC-ORG-066 [CO] A CPO assigned to both a Clinic unit and a Production Facility unit can perform clinical workflows at the Clinic and approve quality gates at the Production Facility — but cannot manage the production queue or assign work unless they also hold the Production Manager role
BLOCKED [Unit deactivation guards not implemented] AC-ORG-067 [CPO] Deactivating a unit that is a user's primary unit prompts reassignment of the user's primary unit to another active unit
BLOCKED [Unit deactivation with order blocking not implemented] AC-ORG-068 [CPO] Deactivating a unit is blocked if it has in-progress internal orders. The platform shows the specific reason and count of affected orders *(BR-ORG-014)*. **[post-WHX]** Cross-org order blocking extends this check when B2B ordering ships
BLOCKED [Unit deactivation user reassignment not implemented] AC-ORG-069 [CPO] Deactivating a unit is blocked if any users have it as their only unit assignment. The platform shows which users would be affected and guidance to reassign them first
BLOCKED [Last unit deactivation guard not implemented] AC-ORG-070 [CPO] Attempting to deactivate the last active unit is blocked with a clear error
BLOCKED [Unit reactivation not implemented] AC-ORG-071 [CPO] Deactivated units can be reactivated by the Org Admin — associated data becomes operational again
BLOCKED [Unit context switching UI not implemented] AC-ORG-072 [CO] A CPO assigned to two clinic units sees a persistent unit context indicator showing their current unit and can switch to their other unit without navigating to settings
BLOCKED [Unit context filtering not implemented] AC-ORG-073 [CPO] After switching unit context, orders, patients, and production data filter to the selected unit. Organisation-level data (settings, subscription) remains unaffected
#3 Role-Based Access Verification Across Org Types 8/33 24%
Step 1 — Log in as a CPO at a Custom Manufacturer
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-080 [CO] CPO has full access to Patients, Orders, and Configuration areas
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-081 [CO] CPO has quality gate approval access in Production — can view production status and approve/reject at quality checkpoints
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-082 [CO] CPO cannot manage the production queue or assign work to technicians — that remains the Production Manager's responsibility
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-083 [CO] CPO has no access to Compliance, Billing, or Settings (beyond own preferences)
READY AC-ORG-084 [CO] Navigation shows only accessible areas — inaccessible areas are hidden, not greyed out
Step 2 — Log in as a CPO at an Integrated Clinic-Fab
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-085 [CO] CPO has the same capabilities as at a Custom Manufacturer — Patients, Orders, Configuration, and quality gate approval in Production
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-086 [CO] The difference from Custom Manufacturer is visible in the workflow: prescriptions are created by in-house Physicians, not received from external prescribers
Step 3 — Log in as a Physician at a Clinic (Prescribing Only)
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-087 [CO] Physician has full Patients access and Create + Read Orders access — they can create orders and see order status and outcomes for prescriptions they initiated
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-088 [CO] Physician can create prescriptions. At organisation types where Physician role is unavailable (Custom Manufacturer, Central Fab), the Clinician role has prescribing authority where the unit's jurisdiction permits
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-089 [CO] Physician cannot see orders they did not prescribe
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-090 [CO] Physician has no access to Configuration at the component level — physicians prescribe device type and clinical indication; the CPO determines component-level specification
Step 4 — Log in as an Admin at a Custom Manufacturer
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-091 [CO] Admin can enter data from a paper prescription (prescription intake — a clerical task)
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-092 [CO] Admin cannot create a prescription as a clinical act — only Physician or Clinician (where jurisdiction permits) can
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-093 [CO] Admin cannot access clinical assessment fields or the device configurator
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-094 [CPO] Admin has patient demographics and order status access
Step 5 — Log in as a Production Manager at a Custom Manufacturer
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-095 [CO] For internal orders: Production Manager sees patient name and date of birth
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-096 [CO] For cross-org orders (received from external clients): Production Manager sees pseudonym only — no patient identity
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-097 [CPO] Production Manager can manage the production queue, assign work, and approve production quality gates
NOT STARTED AC-ORG-097-a [CPO] Production Manager can create repair and maintenance orders
Step 6 — Log in as a Technician at a Custom Manufacturer
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-098 [CO] Technician sees patient pseudonyms only — no name, date of birth, address, contact information, insurance details, or clinical assessment notes on any screen
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-099 [CPO] Technician can view fabrication data and update production status
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-100 [CPO] Technician cannot access Patients area, Billing, Compliance, or Settings
Step 7 — Log in as a Billing Specialist at a Custom Manufacturer
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-101 [CPO] Billing Specialist sees patient name, DOB, insurance coverage, diagnosis codes, and device codes — for claim matching
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-102 [CO] Billing Specialist cannot see clinical assessment details, patient images, range of motion measurements, or clinical justification notes
Step 8 — Log in as an Org Admin and navigate to Settings at a Clinic (Prescribing Only)
READY AC-ORG-103 [CPO] Settings shows: Organisation Profile, Units, Users and Roles, Preferences, Patient Settings, Notifications, Subscription and Billing
READY AC-ORG-104 [CPO] Production Settings section is hidden — Clinics do not fabricate
Step 9 — Log in as an Org Admin and navigate to Settings at a Central Fab
READY AC-ORG-105 [CPO] Settings shows: Organisation Profile, Units, Users and Roles, Preferences, Production Settings, Notifications, Subscription and Billing
READY AC-ORG-106 [CPO] Patient Settings section is hidden — Central Fabs do not hold patient records
Edge Cases
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-107 [CPO] A user with both Org Admin and Clinician roles can access all areas (union of permissions). Prescribing authority follows BR-ORG-029: Physician always, Clinician where jurisdiction permits
READY AC-ORG-108 [CPO] Physician role is not available at Custom Manufacturer or Central Fab org types
READY AC-ORG-109 [CPO] Technician and Production Manager roles are not available at Clinic (Prescribing Only) org type
BLOCKED [Role-based page/feature visibility gates not verified in FE] AC-ORG-110 [CO] At a Central Fab, incoming cross-org orders show pseudonymised patient data only — no patient identity, no prescriber details, no insurance information
READY AC-ORG-111 [CO] When inviting or editing a user with the Physician role, credential fields are available: professional licence number, qualification/specialty, licensing authority. These pre-populate prescription records per Annex XIII
#4 User Suspension, Reactivation, and Org Admin Protection 12/25 48%
Step 1 — Org Admin navigates to User Management and selects a user to suspend
READY AC-ORG-120 [CPO] Suspension action is available for active users
READY AC-ORG-121 [CPO] Users cannot be deleted — only suspended. Verify that no "Delete" action exists
Step 2 — Org Admin suspends a CPO who has active clinical history (assessments, orders, fittings)
READY AC-ORG-122 [CPO] Suspended user's state changes to Suspended
READY AC-ORG-123 [CPO] Suspended user cannot log in
BLOCKED [Suspended user name preserved in assessments/orders not verified] AC-ORG-124 [CO] Every assessment the suspended CPO conducted still shows their name — verifiable by opening a patient record they worked on
BLOCKED [Suspended user name preserved in assessments/orders not verified] AC-ORG-125 [CO] Every order the suspended CPO configured still shows their name in the order history
BLOCKED [Suspended user name preserved in assessments/orders not verified] AC-ORG-126 [CO] Every quality gate the suspended CPO approved still shows their name in the audit trail — this is essential for MDR compliance
Step 3 — Org Admin reactivates the suspended CPO
READY AC-ORG-127 [CPO] Reactivation action is available for suspended users
READY AC-ORG-128 [CPO] User state changes from Suspended to Active
READY AC-ORG-129 [CPO] Reactivated user can log in again
READY AC-ORG-130 [CPO] All previous role and unit assignments are restored
BLOCKED [Suspension period recording not found in audit log] AC-ORG-131 [CPO] The suspension period is recorded in the audit log
Step 4 — Org Admin attempts to suspend the other Org Admin (leaving only themselves)
BLOCKED [Suspend last Org Admin behavior not fully verified] AC-ORG-132 [CPO] The action succeeds — the suspending Org Admin is now the last one, but the check is at the point of action, not a static invariant
Step 5 — The remaining Org Admin attempts to remove their own Org Admin role
BLOCKED [Role removal endpoint for last Org Admin not fully traced] AC-ORG-133 [CPO] The action is blocked — at least one active user with Org Admin role must exist per organisation
BLOCKED [Error message for last Org Admin role removal not verified in FE] AC-ORG-134 [CPO] A clear error message explains why the action was blocked
Step 6 — The remaining Org Admin attempts to suspend their own account
READY AC-ORG-135 [CPO] The action is blocked — an Org Admin cannot suspend their own account if they are the last active Org Admin
READY AC-ORG-136 [CPO] A clear error message explains why the action was blocked
Step 7 — Org Admin views suspended users in the user list
READY AC-ORG-137 [CPO] Suspended users are visible in the user list with a clear "Suspended" status
READY AC-ORG-138 [CPO] Suspended users' role assignments and unit assignments are preserved and visible
Edge Cases
BLOCKED [Suspended physician prescriptions validity not verified] AC-ORG-139 [CO] A suspended Physician's existing prescriptions remain valid and linked to orders — suspending the prescriber on the platform does not invalidate the prescription
BLOCKED [Invitation to suspended user email not implemented] AC-ORG-140 [CPO] Inviting a user with the same email as a suspended user within the same org is blocked — the system directs the Org Admin to reactivate the user from User Management instead
BLOCKED [Concurrent suspension safety not verified] AC-ORG-141 [CPO] If a user is suspended while in the Invited state (before accepting), the invitation link is invalidated
BLOCKED [Suspension edge cases not verified] AC-ORG-142 [CPO] Concurrent suspension: if two Org Admins each attempt to suspend the other simultaneously, at least one must remain active — one operation succeeds, the other is rejected
NOT STARTED AC-ORG-143 [CPO] When suspending a CPO, if that CPO has orders in CPO-dependent statuses (FITTING, TEST\_DEVICE\_FITTING, IN\_TREATMENT), the suspension confirmation shows the count and list of affected orders. Suspension proceeds — the system does not block — but the Org Admin is informed that another CPO at the same unit must continue these orders
NOT STARTED AC-ORG-144 [CPO] Removing the Clinician (CPO) role from a user is blocked if they are the only active CPO at a unit that has orders in CPO-dependent statuses (FITTING, TEST\_DEVICE\_FITTING, IN\_TREATMENT). The error message lists the affected orders and directs the Org Admin to assign another CPO to the unit first
#5 Organisation Termination and Data Retention 9/22 41%
Step 1 — Platform Admin opens an active organisation's detail page
READY AC-ORG-150 [CPO] Organisation shows current state: Active
READY AC-ORG-151 [CPO] Verification status is visible as a platform admin attribute
Step 2 — Platform Admin attempts to terminate the organisation while orders are in non-terminal states
READY AC-ORG-152 [CPO] Termination is blocked — the platform shows a summary of outstanding orders in non-terminal states
READY AC-ORG-153 [CPO] The platform provides guidance on what must happen before termination can proceed (orders must be completed or cancelled)
Step 3 — After resolving outstanding orders, Platform Admin initiates termination
READY AC-ORG-154 [CPO] Termination requires explicit confirmation — not a single-click action
READY AC-ORG-155 [BOTH] Termination is irreversible — the confirmation makes this clear
Step 4 — After termination, verify the organisation is in Terminated state
READY AC-ORG-156 [CPO] Organisation state is Terminated — no transition back to Active is possible
READY AC-ORG-157 [CPO] No user of the terminated organisation can log in
READY AC-ORG-158 [CPO] All data is retained per MDR requirements
BLOCKED [No invitation system to invalidate] AC-ORG-159 [CPO] All pending invitations are invalidated
Step 5 — Verify data retention and accessibility
BLOCKED [Data retention enforcement not implemented] AC-ORG-160 [CPO] Platform Admin can still view the terminated organisation's records for regulatory compliance purposes
BLOCKED [Data retention enforcement not implemented] AC-ORG-161 [CO] Clinical records (assessments, prescriptions, device configurations, fitting notes) created by the terminated organisation are retained and identifiable — for MDR audit response
BLOCKED [Cross-org order retention not implemented] AC-ORG-162 [CPO] Data retention period of at least 10 years from last device placed on market is enforced
Step 6 — Verify no operational actions are possible
BLOCKED [Cross-org order retention not implemented] AC-ORG-163 [CPO] No new patients, orders, or production work can be created under the terminated organisation
BLOCKED [Post-termination data access not verified] AC-ORG-164 [CPO] No settings can be changed
Edge Cases
BLOCKED [Terminated org invitation handling not implemented] AC-ORG-165 [CPO] A user who had a pending invitation attempts to accept it after termination — they see a clear error explaining the organisation has been terminated
BLOCKED [Post-termination data retention not verified] AC-ORG-166 [CPO] Cross-org traceability: if the terminated organisation was a Central Fab, client organisations' order history referencing devices fabricated by the terminated org remains intact
BLOCKED [Post-termination data retention not verified] AC-ORG-167 [CPO] Deactivated units within the terminated organisation retain their data alongside the organisation's data
BLOCKED [Post-termination data retention not verified] AC-ORG-168 [CO] Retention clock is per MDR Article 10(8) requirements — records must be accessible for the full retention period regardless of when termination occurred
NOT STARTED AC-ORG-169 [CPO] When the termination blocking summary includes orders in IN\_TREATMENT (treatment phase orders that may run months or years), the guidance explicitly lists treatment completion or cancellation as the resolution path — Platform Admin is not given a mechanism to force-terminate while treatment orders remain active
NOT STARTED AC-ORG-169-a [CPO] **\[post-WHX\]** Termination of an organisation that is the receiving manufacturer or central fab on active cross-org orders is blocked. The blocking summary includes the cross-org orders and identifies the ordering clinics affected
NOT STARTED AC-ORG-169-b [CPO] **\[post-WHX\]** Termination of an ordering clinic is blocked if it has cross-org orders at receiving organisations in non-terminal states (per AC-ORD-130). The blocking summary includes both internal orders and cross-org orders placed at external manufacturers, with receiving org names and order counts
#6 Hybrid Organisation Configuration 0/10 0%
Step 1 — Platform Admin enables Central Fab capabilities on the Custom Manufacturer
BLOCKED [Post-WHX feature - hybrid org configuration] AC-ORG-170 [CPO] The primary organisation type remains Custom-Made Device Manufacturer — it does not change
BLOCKED [Post-WHX feature - hybrid org configuration] AC-ORG-171 [CPO] The capability addition is logged in the audit trail
BLOCKED [Post-WHX feature - hybrid org configuration] AC-ORG-172 [CPO] B2B order reception is now enabled for this organisation
Step 2 — Org Admin verifies updated role availability
BLOCKED [Post-WHX feature - hybrid org configuration] AC-ORG-173 [CPO] The role picker now shows the union of roles from both Custom Manufacturer and Central Fab columns
BLOCKED [Post-WHX feature - hybrid org configuration] AC-ORG-174 [CPO] All roles that were previously available remain available
Step 3 — Org Admin verifies updated settings
BLOCKED [Post-WHX feature - hybrid org configuration] AC-ORG-175 [CPO] Settings sections reflect the combined capabilities
BLOCKED [Post-WHX feature - hybrid org configuration] AC-ORG-176 [CPO] Dashboard views can filter by order source: own patients vs. external clients
Edge Cases
BLOCKED [Post-WHX feature - hybrid org configuration] AC-ORG-177 [CPO] Client confidentiality: central fab clients cannot see each other's orders
BLOCKED [Post-WHX feature - hybrid org configuration] AC-ORG-178 [CO] External client orders show pseudonymised patient references — everything needed for fabrication, nothing more
BLOCKED [Post-WHX feature - hybrid org configuration] AC-ORG-179 [CPO] Internal (own-patient) orders show full patient data per the standard Production Manager and CPO visibility rules
#7 CPO Clinical Workflow — Cross-Area Role Verification 3/8 38%
Step 1 — CPO opens the Patients area
READY AC-ORG-180 [CO] CPO can view patient records and open a specific patient
Step 2 — CPO opens an assessment for that patient
BLOCKED [Cross-area role verification depends on patient/order modules] AC-ORG-181 [CO] CPO can view and create clinical assessments — measurements, contraindications, clinical reasoning
Step 3 — CPO navigates to Orders and opens the device configurator
BLOCKED [Cross-area role verification depends on patient/order modules] AC-ORG-182 [CO] CPO can configure a device by selecting components from the component catalog
READY AC-ORG-183 [CO] CPO can submit the order
Step 4 — CPO navigates to Production to check an order at a quality checkpoint
BLOCKED [Cross-area role verification depends on patient/order modules] AC-ORG-184 [CO] CPO can view production status for orders they submitted
BLOCKED [Cross-area role verification depends on patient/order modules] AC-ORG-185 [CO] CPO can approve or reject at a quality gate checkpoint (e.g., test socket approval)
READY AC-ORG-186 [CO] CPO cannot assign work, reorder the queue, or perform production management actions
Step 5 — CPO navigates back to Orders to perform a fitting
BLOCKED [Cross-area role verification depends on patient/order modules] AC-ORG-187 [CO] CPO can record fitting notes and delivery
Cross-Cutting Concerns 22/46 48%
Data Flow Verification
READY AC-ORG-200 [CPO] Organisation type correctly determines which platform areas are enabled — verify against the Area Access Matrix in ORGANISATION_TYPES.md for all 4 in-scope types
READY AC-ORG-201 [CPO] Organisation-wide preferences (measurement system, date format, timezone, currency) propagate as defaults to all users across the platform
BLOCKED [Measurement system propagation to clinical data entry depends on patient module] AC-ORG-202 [CO] Measurement system preference (metric vs imperial) propagates to all clinical data entry points — limb measurements, segment lengths, range of motion values display consistently
READY AC-ORG-203 [CPO] Individual users can override locale and timezone for personal preference without affecting the organisation default. Users cannot override: measurement system, date format, time format, currency, language
READY AC-ORG-204 [CPO] Preferences affect presentation only — stored data is not altered when preferences change
Role-Based Access Spot-Checks
READY AC-ORG-205 [CPO] Org Admin: full access to all settings, all areas, all units
BLOCKED [Role-specific data visibility depends on module implementations] AC-ORG-206 [CPO] Billing Admin: subscription, billing, and financial settings; view-only Compliance and Insights; no clinical or operational access
BLOCKED [Role-specific data visibility depends on module implementations] AC-ORG-207 [CO] Clinician (CPO): full Patients, Orders, Configuration; quality gate approval in Production; no Compliance, Billing, or Settings
BLOCKED [Role-specific data visibility depends on module implementations] AC-ORG-208 [CO] Physician: full Patients; Create + Read Orders; no Configuration, Production, Compliance, Billing, or Settings
BLOCKED [Role-specific data visibility depends on module implementations] AC-ORG-209 [CPO] Admin: demographics, order status + logistics, prescription intake; no clinical assessment, configuration, production, billing, or compliance
BLOCKED [Role-specific data visibility depends on module implementations] AC-ORG-210 [CPO] Production Manager: full Production; pseudonym-or-name patient access depending on order source; no Configuration, Compliance, or Billing
BLOCKED [Role-specific data visibility depends on module implementations] AC-ORG-211 [CPO] Technician: pseudonym only; fabrication data and status updates; no Patients, Billing, Compliance, or Settings
BLOCKED [Role-specific data visibility depends on module implementations] AC-ORG-212 [CPO] Billing Specialist: insurance and pricing only; no clinical data
BLOCKED [Role-specific data visibility depends on module implementations] AC-ORG-213 [CPO] Quality/Compliance Officer: read-only audit access across orders, configuration history, override records, and traceability
BLOCKED [Role-specific data visibility depends on module implementations] AC-ORG-214 [CPO] Logistics: sees order references and shipping addresses only
Organisation Lifecycle State Enforcement
READY AC-ORG-215 [CPO] Setup to Active: only Platform Admin can trigger
READY AC-ORG-216 [CPO] Active to Terminated: only Platform Admin can trigger; irreversible
READY AC-ORG-217 [CPO] No other state transitions are possible (e.g., Active to Setup, Terminated to Active)
READY AC-ORG-218 [CPO] While in Setup state, no patients or orders can be created
User Lifecycle State Enforcement
READY AC-ORG-219 [CPO] Invited to Active: triggered when user accepts invitation and sets password
READY AC-ORG-220 [CPO] Active to Suspended: triggered by Org Admin
READY AC-ORG-221 [CPO] Suspended to Active: triggered by Org Admin reactivation. Suspension period recorded in audit log
READY AC-ORG-222 [CPO] Suspended users retain all data, role assignments, and unit assignments in read-only form
BLOCKED [Invitation expiry configurability - pending product decision] AC-ORG-223 [CPO] Invitation expiry: links expire after a configurable window (default: 7 days). Resending invalidates previous links
Compliance and Audit Trail
BLOCKED [Full audit traceability not verified] AC-ORG-224 [BOTH] Every modification to organisation data is logged: who changed what, when — including profile changes, role changes, unit changes, settings modifications
BLOCKED [PII visibility controls depend on module implementations] AC-ORG-225 [CPO] User PII (name, email, phone) is visible only to authorised roles within the same organisation
BLOCKED [PII visibility controls depend on module implementations] AC-ORG-226 [CPO] User PII is not exposed in system logs
BLOCKED [PII visibility controls depend on module implementations] AC-ORG-227 [CPO] Platform Admins see organisation-level data for verification only — not individual user PII
BLOCKED [PRRC designation UX - pending product decision] AC-ORG-228 [CPO] At manufacturer organisations, one user with the Quality/Compliance Officer or Org Admin role can optionally be designated as PRRC (Person Responsible for Regulatory Compliance, MDR Article 15). The flag is optional data capture, not a platform gate
Tenant Isolation
READY AC-ORG-229 [CPO] Organisation A's users, data, and settings are invisible to Organisation B — hard boundary
BLOCKED [Cross-org exceptions not implemented (post-WHX)] AC-ORG-230 [CPO] The only exceptions to tenant isolation are: cross-organisation ordering relationships (Orders area) and platform admin operations
Data Minimisation (Cross-Organisation)
BLOCKED [Data minimisation depends on patient/order modules] AC-ORG-231 [CPO] Central Fab users see pseudonymised patient data only for incoming orders — no patient identity, no prescriber contact details, no insurance information
BLOCKED [Data minimisation depends on patient/order modules] AC-ORG-232 [CO] Technicians at any org type never see patient PII — only pseudonyms and fabrication-relevant clinical data
BLOCKED [Data minimisation depends on patient/order modules] AC-ORG-233 [CPO] Billing Specialists see patient name, DOB, insurance, and pricing data — no clinical images, scans, or measurements
BLOCKED [Notification data minimisation depends on orders module] AC-ORG-234 [CPO] Notifications contain order references only — no patient data in email or push notifications
BLOCKED [Data minimisation depends on patient/order modules] AC-ORG-235 [CO] Production Manager sees patient name + DOB for internal orders, pseudonym only for cross-org orders
Deletion Constraints
READY AC-ORG-236 [CPO] Organisations cannot be hard-deleted — only terminated
BLOCKED [Unit deletion constraints with orders not verified] AC-ORG-237 [CPO] Units cannot be deleted if they have associated orders or patients — deactivate instead
BLOCKED [Unit deletion constraints with patients not verified] AC-ORG-238 [CPO] At least one unit must remain active per active organisation
READY AC-ORG-239 [CPO] Users cannot be deleted — only suspended
READY AC-ORG-240 [CPO] At least one active Org Admin must exist per active organisation
Concurrent Operations
READY AC-ORG-241 [CPO] When two authorised users edit the same setting concurrently, the second user is informed that the value has changed since they loaded the page and must refresh before saving
User Profile Access
READY AC-ORG-242 [CPO] Every user (regardless of role) can access their own profile from the platform header
READY AC-ORG-243 [CPO] Users can edit their job title, phone number, locale override, and timezone override from their profile
READY AC-ORG-244 [CO] Physicians can view and edit their credential fields (licence number, qualification, licensing authority) from their profile
READY AC-ORG-245 [CPO] Users can view their unit assignments, role assignments, and primary unit from their profile (read-only — changes require Org Admin)

Patients

66 ready 56 blocked 133 not started 255 total
#0 Patient Creation Scenarios 4/25 16%
Prerequisites
BLOCKED [Org active state validation not enforced in patient creation service] AC-PAT-016 [CPO] Patient creation requires the organisation to be in Active state — blocked with explanatory message when organisation is in Setup or Terminated state
NOT STARTED AC-PAT-016-a [CPO] Patient creation requires assignment to an active unit — blocked if no active units exist
Mandatory and progressive fields
READY AC-PAT-001 [CPO] Patient record can be created with minimum fields: first name, last name, date of birth, phone number, email address
NOT STARTED AC-PAT-001-a [CPO] Insurance information is required when a Reimbursement Prescription (naročilnica) is created for the order — the system checks payer validity before the CPO invests in fabrication. For self-paying patients (Path D), no Reimbursement Prescription is needed — self-pay is marked explicitly
NOT STARTED AC-PAT-001-b [CPO] Shipping address is required before device delivery — prompted at delivery, not at creation
Draft orders without Clinical Prescription
NOT STARTED AC-PAT-036-a [CPO] A CPO can create a draft order for a patient before the Clinical Prescription (izvid) is in the system. The CPO knows the device is needed and begins clinical work
NOT STARTED AC-PAT-036-b [CPO] The draft order collects assessment data, measurements, scans, and device configuration — all before the Clinical Prescription arrives
NOT STARTED AC-PAT-036-c [CPO] The order cannot be confirmed/submitted for production until a valid Clinical Prescription (izvid) is linked (for MDR-regulated orders). The Clinical Prescription is a submission gate, not a creation prerequisite. For insured patients, a Reimbursement Prescription (naročilnica) is additionally required before fabrication can begin
NOT STARTED AC-PAT-036-d [CPO] When an order is cancelled, the linked Clinical Prescription (izvid) is released and can be linked to a different order for the same patient. The Reimbursement Prescription (naročilnica), if any, is voided and must be reissued for a new order
READY AC-PAT-002 [CPO] Patient reference number (e.g., `JoSm-00142`) is generated once per patient at first order creation — not at patient creation. It is a stable, human-readable identifier that serves as the production pseudonym, allowing the fabrication team to identify the patient's devices without seeing their full name. Consultation-only patients do not receive one. The format is configurable per organisation. For cross-org orders, the patient reference serves as the pseudonymised identifier visible to the receiving organisation (see GLOSSARY.md — Patient Reference Number, Pseudonym)
READY AC-PAT-003 [CPO] Duplicate detection fires on name + DOB match — shows potential matches but does not block creation
READY AC-PAT-004 [CPO] Patient status starts as Active when the record is created
Path A and B — CPO in the field
NOT STARTED AC-PAT-001-d [CO] CPO can create a patient record and capture preliminary clinical notes, measurements, and photos in the field
NOT STARTED AC-PAT-001-f [CPO] When the patient later visits the clinic, admin can add insurance and other administrative data to the existing record
Path C and D — Admin creates, CPO continues
NOT STARTED AC-PAT-001-g [CPO] Admin can create a patient record with demographics and contact details. The CPO later opens the same record to add clinical data
NOT STARTED AC-PAT-001-h [CPO] Admin can enter the Clinical Prescription (izvid) and/or Reimbursement Prescription (naročilnica) at reception if the patient brings them
Path E and F — CPO creates directly in clinic
NOT STARTED AC-PAT-001-i [CO] CPO can create the patient record and proceed directly to clinical work without admin involvement
Transparency and consent per path
NOT STARTED AC-PAT-020-a [CPO] Both Admin and CPO roles can record the transparency acknowledgment. The record captures WHO informed the patient
NOT STARTED AC-PAT-020-b [CPO] The signed patient information form (transparency acknowledgment + non-clinical consents) must be scanned and uploaded to the patient record as a classified attachment type (distinct from clinical images and scans — aids audit retrieval and is excluded from cross-org sharing)
NOT STARTED AC-PAT-020-c [CPO] Transparency is a soft prompt, not a hard block — clinical work can proceed if the transparency record hasn't been completed yet, but the system shows a persistent reminder
NOT STARTED AC-PAT-020-d [CPO] If a patient refuses to sign the form, the CPO records "patient was verbally informed, declined to sign" — the transparency obligation is met by informing the patient, not by obtaining their signature. Clinical work proceeds regardless
NOT STARTED AC-PAT-022-a [CPO] Non-clinical consent checkboxes on the form must default to unchecked — pre-ticked boxes are not valid consent under GDPR (Recital 32, CJEU Planet49)
NOT STARTED AC-PAT-022-b [CPO] Non-clinical consent (marketing, research) can be captured at any point — reception, during assessment, or at a later visit. It never blocks clinical actions
Edge Cases
NOT STARTED AC-PAT-013 [CPO] Concurrent edit: if admin and CPO are both editing the same patient record, the second to save is informed and must refresh
NOT STARTED AC-PAT-003-a [CPO] Duplicate detection works the same regardless of who creates the record (admin or CPO) and where (field or clinic)
#1 New AFO Patient — End-to-End 20/47 43%
Step 1 — Patient record created (Journey 0)
Step 2 — Verify transparency and consent
BLOCKED [Outstanding transparency summary on patient view not found] AC-PAT-025 [CPO] Outstanding transparency items are visible on the patient record summary — none should remain before clinical work begins
READY AC-PAT-020 [CPO] Transparency record present with: timestamp, method, staff member identity
BLOCKED [Clinical processing lawful basis (Article 9(2)(h)) - theoretical, no enforcement visible] AC-PAT-021 [CO] Transparency record is informational — not a consent gate. Clinical processing continues under the treatment lawful basis (Article 9(2)(h))
Step 3 — Enter Clinical Prescription (izvid) and Reimbursement Prescription (naročilnica)
READY AC-PAT-030 [CPO] Clinical Prescription (izvid) requires: prescriber name, qualification, licence number, institution, diagnosis (with ICD code), device authorised, laterality (left/right/bilateral — shown for lateralised devices; hidden for midline devices such as cranial helmets and spinal braces), prescription date, expiration date, uploaded document. Prescriptions can be created by users with prescribing authority: Physician role (always), or Clinician role where the unit's jurisdiction authorises CPO prescribing *(BR-ORG-029)*. Admin can record prescriber details and upload prescription documents from paper prescriptions — this is data entry of an external prescription, not the clinical act of prescribing
NOT STARTED AC-PAT-030-a [CPO] Reimbursement Prescription (naročilnica) requires: insurance number, insurance provider, cost estimate, reference to Clinical Prescription, uploaded document. Only needed for insured patients (Paths A, B, C)
READY AC-PAT-033 [CPO] Previously entered prescribers are suggested on name entry
BLOCKED [K-level hidden for orthotics - conditional display not verified] AC-PAT-035 [CO] K-level field does NOT appear for an AFO Clinical Prescription — K-level is prosthetic-specific
READY AC-PAT-032 [CPO] Clinical Prescriptions are immutable after creation — corrections supersede the original, which is preserved in the audit trail
Step 4 — Conduct Initial Assessment
READY AC-PAT-040 [CPO] System verifies the patient record is in Active state before an assessment can be started — if the patient is Inactive, reactivation is prompted
READY AC-PAT-042 [CPO] Assessment starts in Draft status
READY AC-PAT-045 [CO] For returning patients, medical history is pre-populated from the patient record and editable
NOT STARTED AC-PAT-046-a [CO] Each measurement records: type, anatomical location, laterality (left/right/N/A), value, unit (per org settings), and condition (weight-bearing/non-weight-bearing/supine)
NOT STARTED AC-PAT-046-b [CO] For returning patients, previous measurements are visible alongside new measurements
READY AC-PAT-050 [CO] Clinical reasoning fields present: assessment summary, treatment goals, device recommendation, special instructions
NOT STARTED AC-PAT-050-a [CO] Empty clinical reasoning triggers a warning but does NOT block completion
Step 5 — Mark a required field as clinically unavailable
READY AC-PAT-049 [CO] CPO can mark a required field as "clinically unavailable" with mandatory free-text justification
NOT STARTED AC-PAT-049-a [CO] The justification becomes part of the assessment record
NOT STARTED AC-PAT-049-b [CPO] Assessment with documented field unavailability is valid for order creation
Step 6 — Upload scan files and clinical images
BLOCKED [Scan file type validation (STL, OBJ, PLY, STEP) - FE type checking unclear] AC-PAT-102 [CPO] Scan files (STL, OBJ, PLY, STEP) can be uploaded with metadata: body region, laterality, description
BLOCKED [Clinical image types (JPG, PNG, HEIC) - FE validation not verified] AC-PAT-103 [CPO] Clinical images (JPG, PNG, HEIC) can be uploaded
READY AC-PAT-104 [CPO] File integrity verified via checksum on upload
READY AC-PAT-105 [CPO] File size limits enforced per type (500 MB scan, 50 MB image)
BLOCKED [Upload without transparency warning - not verified] AC-PAT-109 [CPO] If no transparency record exists, the system prompts — but does not block upload
Step 7 — Complete assessment and create order
READY AC-PAT-041 [CO] Minimum fields enforced for Initial Assessment completion: weight, height, at least one measurement, contraindication review completed (either individual category review or a single 'no contraindications identified' confirmation covering all categories)
READY AC-PAT-043 [CPO] On completion, system records: CPO identity and completion timestamp
READY AC-PAT-034 [CPO] Clinical Prescription (izvid) validity checked at order submission (not draft creation) — must be active, non-expired. For insured patients, Reimbursement Prescription (naročilnica) must also be approved before fabrication begins. Draft orders can exist without either document per AC-PAT-036-a
READY AC-PAT-100 [CPO] Attachments linked to the order as references, not copies
Step 8 — Trial Fitting after fabrication
READY AC-PAT-063 [CO] Trial Fitting assessment can be created linked to the order
NOT STARTED AC-PAT-063-a [CO] Clinical Prescription is inherited from the order — not re-verified at each visit
NOT STARTED AC-PAT-063-b [CO] Iteration outcome field present with device-appropriate labels: Proceed to finishing / Rebuild / Adjust and refit / Discontinue (device approach not viable — requires clinical justification, cancels the order)
BLOCKED [Assessment field validation not fully verified] AC-PAT-051 [CO] Any device adjustments recorded as distinct structured entries
BLOCKED [Assessment field validation not fully verified] AC-PAT-052 [CPO] Adjustment records cannot be edited after creation — append-only. Soft delete for errors, original preserved
Step 9 — Device Delivery
READY AC-PAT-064 [CPO] Device Delivery assessment created with delivery confirmation
NOT STARTED AC-PAT-064-b [CO] CPO performs delivery examination: fit verification, alignment check, skin check, functional test, patient/caregiver education (donning/doffing, wear schedule, skin care), delivery checklist (all components present, device matches configuration)
BLOCKED [Assessment field validation not fully verified] AC-PAT-055 [CO] Clinician-rated device outcomes captured:
BLOCKED [Annex XIII Section 1 generation - not implemented] AC-PAT-120 [BOTH] Annex XIII Section 1 statement generated at fitting/delivery — frozen after generation
Step 10 — Post-delivery Follow-Up (2–4 weeks later)
READY AC-PAT-069 [CO] Follow-Up assessment can be created linked to the order (Slovenian: Kontrola po prevzemu)
NOT STARTED AC-PAT-069-a [CO] Follow-Up does not require a prescription
NOT STARTED AC-PAT-069-b [CO] Follow-Ups are numbered sequentially (Follow-Up 1, 2, 3...)
NOT STARTED AC-PAT-069-c [CO] CPO performs follow-up examination: device fit, skin condition under device, wear pattern (pressure marks, redness), functional performance, alignment
BLOCKED [Assessment field validation not fully verified] AC-PAT-051 [CO] Device adjustments can be recorded at follow-up visits (using IN-PAT-008 fields)
BLOCKED [Assessment field validation not fully verified] AC-PAT-055 [CO] Clinician-rated device outcomes captured at follow-up
BLOCKED [Assessment field validation not fully verified] AC-PAT-054 [CO] CPO indicates next steps after the visit
Edge Cases
READY AC-PAT-070 [CO] Bilateral AFO: single assessment with laterality-specific measurements → single bilateral order
NOT STARTED AC-PAT-034-a [CPO] Clinical Prescription near expiration: system warns during assessment if it expires within 30 days
NOT STARTED AC-PAT-034-b [CPO] Clinical Prescription expires while assessment is in Draft: completion OK, but order submission blocked. Prescription validity is checked at the time the system processes the Gate 2 check — if the prescription expires on the submission date, submission succeeds if the expiration date is today (expiry means "before today," not "before this moment")
READY AC-PAT-071 [CPO] Full visit history visible for the order: Initial Assessment, Trial Fitting(s), Device Delivery, Follow-Up(s), Service visits
#2 Corrective Helmet Treatment — Infant with Guardian 8/29 28%
Step 1 — Create infant patient record
READY AC-PAT-110 [CPO] Entering a DOB indicating a minor triggers a prompt for guardian information
READY AC-PAT-111 [CPO] Minor detection is calculated from DOB, not a manual flag
READY AC-PAT-112 [CPO] Multiple guardians can be entered (both parents), one marked as primary contact
Step 2 — Transparency and guardian consent
BLOCKED [Non-clinical consent at any point - not fully verified] AC-PAT-024 [CPO] Consent record identifies the guardian as the consenting party, not the infant
READY AC-PAT-114 [CPO] Communication preferences default to the guardian's contact details
Step 3 — Initial Assessment for cranial reshaping
BLOCKED [Assessment field validation not fully verified] AC-PAT-053 [CO] Assessment form adapts for the cranial helmet device type
BLOCKED [Treatment monitoring - not fully verified] AC-PAT-085 [CO] All cranial measurement fields are present and functional
BLOCKED [Guardian-reported outcomes for infants - not verified] AC-PAT-113 [CO] Guardian-reported outcomes replace clinician-rated device outcomes for the infant
Step 4 — Helmet order, fabrication, and initial fitting (Device Delivery)
NOT STARTED AC-PAT-064-a [CPO] Device Delivery does NOT close the order — this is the start of treatment, not the end
BLOCKED [Annex XIII Section 1 generation - not implemented] AC-PAT-120 [BOTH] Annex XIII Section 1 statement generated at device delivery — frozen after generation
BLOCKED [Annex XIII Section 2 tracking - not implemented] AC-PAT-121 [BOTH] Post-delivery adjustments are part of Annex XIII Section 2 documentation (living document), NOT the Section 1 statement
Step 5 — Monthly Progress Review (checkup 1)
READY AC-PAT-080 [CPO] Progress Review can be created linked to the existing helmet order
READY AC-PAT-081 [CO] Baseline (Initial Assessment) automatically linked for comparison
BLOCKED [Treatment monitoring - not fully verified] AC-PAT-086 [CO] Cranial measurements captured and comparable to baseline for tracking progress
READY AC-PAT-065 [CO] Visit outcome required before finalisation: Continue treatment / Treatment complete / Refer out / Device replacement
BLOCKED [Assessment field validation not fully verified] AC-PAT-051 [CO] Multiple structured device adjustments recordable per visit (using IN-PAT-008 fields)
BLOCKED [Assessment field validation not fully verified] AC-PAT-052 [CPO] Adjustment records immutable after creation — append-only
BLOCKED [Treatment timeline scan data indicator - not verified] AC-PAT-087 [CO] Treatment timeline indicates which visits have scan data attached
Step 6 — Progress Reviews 2 through N
NOT STARTED AC-PAT-065-a [CPO] Progress Reviews numbered sequentially per order (1, 2, 3...)
READY AC-PAT-082 [CO] Treatment timeline shows all visits chronologically: date, type, scan indicator, adjustment count, visit outcome
Step 7 — Treatment complete
BLOCKED [Treatment completion signal - gate completion not verified in detail] AC-PAT-083 [CPO] Only one Progress Review per order can be marked "treatment complete"
NOT STARTED AC-PAT-083-a [CPO] Treatment completion signals the Orders module to close the order. If Gate 3 passes, the order moves to COMPLETE and the CPO sees confirmation. If Gate 3 fails, the CPO sees the gate failure results with actionable items — they do not need to navigate to the Orders area separately to trigger the gate
BLOCKED [Gate 3 Annex XIII verification - not implemented] AC-PAT-122 [BOTH] Gate 3 at order completion verifies: Section 1 was already generated at delivery, Section 2 documentation is complete (all Progress Reviews, adjustments, treatment completion)
Edge Cases
BLOCKED [Treatment monitoring - not fully verified] AC-PAT-084 [CPO] Treatment completion is final for v1. [post-WHX] Reversal with approval
NOT STARTED AC-PAT-083-b [CPO] Attempting treatment complete on a second Progress Review for the same order is blocked
NOT STARTED AC-PAT-065-b [CO] "Device replacement" outcome: CPO can create a new order
BLOCKED [Guardian change during treatment - not verified] AC-PAT-115 [CPO] Guardian change during treatment: new guardian added, previous preserved in history
NOT STARTED AC-PAT-042-a [CO] Assessment saved as Draft if infant is uncooperative — CPO completes later
NOT STARTED AC-PAT-065-c [CO] No maximum limit on number of Progress Reviews or treatment duration
#3 Prosthetic Test Socket Iterations — Returning Patient 14/33 42%
Step 1 — Open returning patient and start Initial Assessment
READY AC-PAT-045 [CO] Medical history pre-populated from patient record, editable
NOT STARTED AC-PAT-046-b [CO] Previous measurements visible alongside new measurements
READY AC-PAT-095 [CO] Previous prosthesis configurations visible with full bill of materials
BLOCKED [Assessment field validation not fully verified] AC-PAT-053 [CO] Assessment form adapts for prosthetic device type
READY AC-PAT-090 [CO] All prosthetic-specific fields present and functional
Step 2 — Complete assessment and create order
NOT STARTED AC-PAT-041-a [CO] Prosthetic Initial Assessment minimum fields include amputation level and K-level in addition to standard minimums
Step 3 — Test Socket 1: Creation and Trial Fitting
READY AC-PAT-091 [CPO] Test socket iteration auto-numbered: "Test Socket 1"
READY AC-PAT-063 [CO] Trial Fitting assessment created linked to the order for Test Socket 1
NOT STARTED AC-PAT-063-a [CO] Clinical Prescription inherited from the order — not re-verified at each fitting
NOT STARTED AC-PAT-063-b [CO] Iteration outcome field present with prosthetic-specific labels: Proceed to definitive fabrication / Rebuild socket / Adjust and retest / Discontinue (device approach not viable — requires clinical justification, cancels the order)
NOT STARTED AC-PAT-063-c [CO] CO documents socket fit findings: pressure distribution, alignment, suspension adequacy, gait observation, patient-reported comfort
BLOCKED [Assessment field validation not fully verified] AC-PAT-051 [CO] Structured adjustment records for socket modifications made during fitting (using IN-PAT-008 fields)
BLOCKED [Assessment field validation not fully verified] AC-PAT-055 [CO] Clinician-rated device outcomes captured at Trial Fitting
Step 4 — CPO selects "Rebuild socket" — iteration loop
NOT STARTED AC-PAT-091-a [CPO] New test socket fabrication cycle begins within the same order — iteration increments to "Test Socket 2"
NOT STARTED AC-PAT-063-d [CO] CO documents the clinical reasoning for the rebuild decision — what was wrong with the previous socket and what needs to change
READY AC-PAT-094 [CO] Full iteration history visible: all previous fittings with outcomes, adjustments, and clinical reasoning at each
Step 5 — Test Socket 2: Trial Fitting — CPO selects "Proceed to definitive"
READY AC-PAT-063 [CO] Trial Fitting assessment created for Test Socket 2
NOT STARTED AC-PAT-063-b [CO] Iteration outcome: CO selects "Proceed to definitive fabrication"
READY AC-PAT-092 [CPO] "Proceed to definitive" can only be set once per order
READY AC-PAT-094 [CO] Full iteration history visible: 2 fittings, outcomes at each, what changed between iterations
NOT STARTED AC-PAT-063-c [CO] Socket fit findings documented — the definitive socket will be fabricated based on the accepted test socket
Step 6 — Definitive prosthesis delivery
READY AC-PAT-064 [CPO] Device Delivery with delivery confirmation and clinician-rated device outcomes
NOT STARTED AC-PAT-064-b [CO] CO performs delivery examination: fit verification, alignment check, skin check, functional test, patient/caregiver education
BLOCKED [Annex XIII Section 1 generation - not implemented] AC-PAT-120 [BOTH] Annex XIII Section 1 statement generated at fitting/delivery — frozen after generation
Step 7 — Same patient returns 5 years later
NOT STARTED AC-PAT-005 [CPO] Patient can be reactivated — prompts verification of demographics and consent status
READY AC-PAT-095 [CO] Previous prosthesis orders visible with full component detail
READY AC-PAT-045 [CO] Medical history pre-populated but editable (weight, medications change over years)
NOT STARTED AC-PAT-046-b [CO] Previous measurements visible alongside new measurements
Edge Cases
READY AC-PAT-049 [CO] K0 patient: CPO can mark assessment fields as "clinically unavailable" with justification and proceed
READY AC-PAT-049 [CO] Open wound: measurements marked "clinically unavailable" with justification
NOT STARTED AC-PAT-092-a [CPO] Attempting "Proceed to definitive" after it was already set is blocked
BLOCKED [Prosthetic assessment - not fully verified] AC-PAT-093 [CPO] "Proceed to definitive" is final for v1. [post-WHX] Reversal with approval and documented clinical justification
NOT STARTED AC-PAT-091-b [CO] No hard limit on test socket iterations
#4 Consultation-Only Patient — GDPR Deletion 4/13 31%
Steps
READY AC-PAT-001 [CPO] Admin or CPO creates patient with minimum fields
READY AC-PAT-020 [CPO] Transparency recorded
READY AC-PAT-060 [CO] Consultation created without a Clinical Prescription and without a draft order. Minimum completion: at least one of medical history entry, physical exam finding, measurement, or clinical reasoning note
NOT STARTED AC-PAT-060-a [CO] Draft order creation is NOT available from a Consultation — if the CPO decides a device is needed, they exit the consultation workflow and create a draft order separately (consultation data carries forward per AC-PAT-062)
NOT STARTED AC-PAT-004-a [CPO] Patient transitions to Inactive after configured inactivity period (default: 12 months)
NOT STARTED AC-PAT-007 [CPO] Consultation-only patient (no Clinical Prescription, no order — including no draft order) can be fully deleted
NOT STARTED AC-PAT-007-a [CPO] Only Org Admin can delete. Requires explicit confirmation — the confirmation dialog requires typing the patient's name and lists what will be deleted (patient record, N assessments, N attachments, consent records)
NOT STARTED AC-PAT-007-b [CPO] After deletion: patient, assessments, attachments, consent, transparency records all removed (cascade hard delete)
NOT STARTED AC-PAT-007-c [CPO] Patient with a Clinical Prescription but no order (including no draft order) can be fully deleted — the prescription document is also deleted. No device was placed on the market, so no MDR retention obligation applies
NOT STARTED AC-PAT-007-d [CPO] Patient with only draft orders (never submitted) can be deleted after draft orders are cancelled. Patient with only cancelled orders (device never fabricated) can be deleted. In both cases, no device was placed on the market
NOT STARTED AC-PAT-008 [CPO] Patient WITH completed or delivered device orders cannot be deleted — system explains why, lists the orders, and offers identity removal instead (see Task 02: Identity Removal)
Edge Cases
READY AC-PAT-062 [CO] Consultation data carry-forward: patient returns with Clinical Prescription (izvid) → CPO creates a draft order, consultation data pre-populates the assessment. Attachments not copied. All pre-populated data editable. Most recent Consultation used if multiple exist
NOT STARTED AC-PAT-007-e [CPO] Patient who had a Clinical Prescription entered but no order — verified as deletable per AC-PAT-007-c (no MDR retention obligation without a device placed on the market)
#5 Service Visit — Routine Repair 1/4 25%
Steps
READY AC-PAT-066 [CO] Service visit can be created linked to an existing order. No prescription required
NOT STARTED AC-PAT-066-a [CO] Minimum completion: description of issue, description of work performed
BLOCKED [Assessment field validation not fully verified] AC-PAT-051 [CO] Each device modification recorded as a distinct structured adjustment entry (using IN-PAT-008 fields)
BLOCKED [Assessment field validation not fully verified] AC-PAT-054 [CO] CPO indicates next steps after the visit
#6 Mixed Visit — Service + Adjustment in One Appointment 1/4 25%
Steps
READY AC-PAT-067 [CO] When a visit involves both service-level work (padding, strap) and prescription-level work (component replacement), the visit is recorded under the more restrictive type (Adjustment)
NOT STARTED AC-PAT-067-a [CO] Each adjustment record includes a classification: service-level vs prescription-driven — so the distinction is captured for billing and audit, not lost in the CPO's head
NOT STARTED AC-PAT-067-b [CO] If a CPO starts a Service visit and then realizes a prescription-driven modification is needed, the visit type can be changed to Adjustment without creating a new record
BLOCKED [Assessment field validation not fully verified] AC-PAT-051 [CO] Each modification recorded as a distinct structured entry
#7 Role-Based Data Visibility 0/7 0%
NOT STARTED AC-PAT-009 [BOTH] Each role sees only the data listed above
NOT STARTED AC-PAT-010 [BOTH] Technician accesses patient data only through order context — never the patient record directly
NOT STARTED AC-PAT-012 [CPO] Organisation A's patients invisible to Organisation B
NOT STARTED AC-PAT-011 [CPO] All patient data access logged with who, what, when
NOT STARTED AC-PAT-009-a [BOTH] User with multiple roles: permissions are the union — most permissive access applies
NOT STARTED AC-PAT-012-a [CPO] Central Fab owner cannot access the Patients area at all — org-type restriction overrides role permission
NOT STARTED AC-PAT-012-b [CPO] When a CPO switches unit context *(AC-ORG-073)*, the patient list filters to patients associated with the selected unit. Patients from other units are accessible via search but not shown in the default list
#8 Returning Patient — New Device (Same Type) 1/6 17%
READY AC-PAT-045 [CO] Medical history pre-populated from patient record, editable (weight, medications change over time)
NOT STARTED AC-PAT-046-b [CO] Previous measurements visible alongside new measurements for comparison
NOT STARTED AC-PAT-043-a [CO] Previous device orders visible with full history — device type, configuration, outcomes, service history
NOT STARTED AC-PAT-062-a [CO] Assessment data from the previous order's Initial Assessment is available for reference (not pre-populated — the CPO takes fresh measurements for a new device)
BLOCKED [Assessment field validation not fully verified] AC-PAT-053 [CO] Assessment form uses the same device-type template as the previous order (CPO can change if the device type has changed)
NOT STARTED AC-PAT-005 [CPO] If the patient was Inactive, reactivation prompts verification of demographics and consent status
#9 Returning Patient — Different Device Type 1/4 25%
BLOCKED [Assessment field validation not fully verified] AC-PAT-053 [CO] Assessment form adapts to the NEW device type — different template from the previous order
READY AC-PAT-045 [CO] Medical history carries forward (patient-level, device-type-independent)
NOT STARTED AC-PAT-046-c [CO] Previous measurements from a different device type are visible for reference but may not be anatomically relevant — the CPO decides what's useful
NOT STARTED AC-PAT-043-a [CO] Full device history visible regardless of device type — the CPO can see all previous orders
#10 Warranty Claim 1/4 25%
READY AC-PAT-068 [CO] Warranty Assessment can be created linked to the order. No prescription required
NOT STARTED AC-PAT-068-a [CO] Minimum completion: description of issue, warranty determination (covered / not covered / referred to manufacturer)
BLOCKED [Assessment field validation not fully verified] AC-PAT-051 [CO] Any device modifications recorded as structured adjustment entries
NOT STARTED AC-PAT-068-b [CPO] Warranty determination is documented for audit — who determined, when, reasoning
#11 Adjustment with New Clinical Prescription 2/4 50%
READY AC-PAT-067 [CO] Adjustment visit created linked to the order. Requires a new Clinical Prescription (izvid) from the physician authorizing the modification
READY AC-PAT-030 [CPO] New Clinical Prescription entered with all required fields (prescriber, diagnosis, device modification authorised, laterality, ICD code, dates)
BLOCKED [Assessment field validation not fully verified] AC-PAT-051 [CO] Structured adjustment records capture what was changed, why, and classify each modification as prescription-driven
BLOCKED [Assessment field validation not fully verified] AC-PAT-054 [CO] CPO indicates next steps — schedule follow-up, mark as complete, etc.
#12 Patient Transfer Between COs 0/3 0%
NOT STARTED AC-PAT-047-a [CO] The incoming CPO can see the complete treatment history — all assessments, all visits, all adjustments, all clinical reasoning by the previous CPO
NOT STARTED AC-PAT-047-b [CO] No data is lost or hidden when a different CPO opens the patient record — the record is the same regardless of which CPO views it
NOT STARTED AC-PAT-011 [CPO] All access is logged — the incoming CPO's access to the patient record is audit-trailed
#13 Multi-Device Patient 1/4 25%
NOT STARTED AC-PAT-071-a [CO] All active orders for the patient are visible from the patient record — clearly distinguishable by device type, order number, and status
NOT STARTED AC-PAT-071-b [CO] The CPO can navigate between orders without leaving the patient context
NOT STARTED AC-PAT-071-c [CO] Assessment data is order-specific — measurements for the AFO order are separate from measurements for the prosthetic order
READY AC-PAT-045 [CO] Medical history is shared (patient-level) — the CPO doesn't re-enter it per order
#14 Patient Discharge (Clinician-Initiated Inactivity) 0/4 0%
NOT STARTED AC-PAT-006-a [CPO] Clinician discharge requires no open orders — blocked with message if open orders exist
NOT STARTED AC-PAT-006-b [CO] Only CPO or Org Admin can initiate clinician discharge
NOT STARTED AC-PAT-006-c [CPO] Inactive patients (including discharged) remain searchable and viewable (read-only) — they are not deleted
NOT STARTED AC-PAT-005 [CPO] An inactive patient (including discharged) can be reactivated if they return
#15 Patient-to-Order Seamless Flow (Cross-Module) 0/6 0%
BLOCKED [Patient data pre-population in order - cross-module not verified] AC-PAT-200 [BOTH] When the CPO clicks "create order" from an assessment, patient data (measurements, contraindications, prescriber details, linked scans/images) is already populated in the order — no re-entry
BLOCKED [Back-and-forth navigation without losing work - not verified] AC-PAT-201 [BOTH] The CPO can navigate back to the patient record from the order context and return to the order without losing work
BLOCKED [Device type pre-suggestion from assessment - not verified] AC-PAT-202 [BOTH] Device type selection reflects the assessment context — if the CPO assessed for an AFO, the device type is pre-suggested (but changeable)
BLOCKED [Component pre-fill from assessment - not verified] AC-PAT-203 [BOTH] Component pre-fill (per the CPO's clinical assessment and the device type's default component tree) happens automatically — the CPO reviews and adjusts, not builds from scratch
BLOCKED [Full workflow without re-entry - not verified] AC-PAT-204 [BOTH] The CPO can complete the full flow (patient creation → assessment → device selection → component configuration → offer → order confirmation) without leaving the workflow or re-entering data at any step
BLOCKED [Prescription + Payer Auth gating - cross-module not verified] AC-PAT-205 [BOTH] Clinical Prescription verification and Reimbursement Prescription validation happen at the appropriate moments (per AC-PAT-036-c and AC-PAT-001-a) without interrupting the flow — the system guides, not blocks
Cross-Cutting Concerns 8/58 14%
Patient Lifecycle
NOT STARTED AC-PAT-004-b [CPO] Patient starts as Active at record creation — no separate New state
NOT STARTED AC-PAT-006 [CPO] Active → Inactive: blocked if open orders exist, with message listing affected orders. Each transition carries a reason (automatic inactivity, clinician discharge, other)
NOT STARTED AC-PAT-005 [CPO] Inactive → Active: prompts demographics and consent verification
NOT STARTED AC-PAT-004-c [CPO] Archived is terminal — no transition out. If an archived patient returns, a new record is created with a reference to the archived one
NOT STARTED AC-PAT-004-d [CPO] Invalid transitions rejected (e.g., Active → Archived directly — must go through Inactive first)
Clinical Prescription Lifecycle
READY AC-PAT-032 [CPO] Clinical Prescriptions are immutable after creation — corrections supersede the original, which is preserved in the audit trail
NOT STARTED AC-PAT-032-a [CPO] When a Clinical Prescription expires or is superseded, existing orders linked to it remain valid
NOT STARTED AC-PAT-032-b [CPO] Clinical Prescription records linked to device orders retained for minimum 10 years
Reimbursement Prescription Lifecycle
NOT STARTED AC-PAT-036-e [CPO] A Reimbursement Prescription (naročilnica) must reference a valid Clinical Prescription — it cannot exist independently
NOT STARTED AC-PAT-036-f [CPO] Reimbursement Prescription approval status is tracked: Pending, Approved, Denied, Partially Approved
NOT STARTED AC-PAT-036-g [CPO] For insured patients (Paths A, B, C), fabrication cannot begin until the Reimbursement Prescription is approved (BR-RX-009)
NOT STARTED AC-PAT-036-h [CPO] When an order is cancelled, the Reimbursement Prescription is voided and must be reissued for any new order
Consent Lifecycle
BLOCKED [Consent form upload as classified attachment - classification not verified] AC-PAT-023 [CPO] Consent withdrawal recorded with timestamp; previous status preserved
NOT STARTED AC-PAT-023-a [CPO] Withdrawal stops future non-clinical processing; MDR-obligated data retained
NOT STARTED AC-PAT-021-a [CO] Clinical processing continues unaffected by consent withdrawal — never consent-based
NOT STARTED AC-PAT-023-b [CPO] If a guardian withdraws non-clinical consent while a pediatric patient has an active order (including IN_TREATMENT), clinical processing (assessments, Progress Reviews, device adjustments) continues under the treatment lawful basis. The withdrawal affects only non-clinical processing (marketing, research data sharing). The system does not prompt the CPO to stop treatment
NOT STARTED AC-PAT-100-a [CPO] Order-linked attachments remain accessible regardless of non-clinical consent withdrawal
Assessment Lifecycle
READY AC-PAT-042 [CO] Draft → Complete is an explicit action by the CPO — not triggered by saving or navigating away. Saving preserves Draft status
NOT STARTED AC-PAT-042-a [CPO] When the CPO chooses to finalise, the system checks minimum required fields (BR-PAT-020). Missing fields are listed with two actions: 'Go to field' and 'Mark as clinically unavailable' (BR-PAT-027)
NOT STARTED AC-PAT-042-b [CPO] The CPO sees a confirmation before the assessment transitions to Complete
READY AC-PAT-043 [CPO] On completion: CPO identity and completion timestamp recorded
READY AC-PAT-044 [CPO] Completed assessments can be amended (new version created, original version preserved with its completion record). The amendment records who amended, when, and what changed
NOT STARTED AC-PAT-044-d [CPO] When a completed assessment is amended and that assessment is linked to an existing order, the order is flagged with a notice: "Source assessment updated." The CPO who created the order is notified. The order's clinical context snapshot is not changed automatically — the CPO reviews the amendment and decides whether a snapshot correction is needed (DRAFT/SUBMITTED only per BR-ORD-004a) or whether the order should be cancelled and recreated
NOT STARTED AC-PAT-044-a [CPO] Assessment completion is idempotent — if already Complete, a second completion attempt is a no-op
NOT STARTED AC-PAT-044-b [CPO] Draft assessments can be cancelled (voided) by the CPO — soft-deleted, preserved in audit trail, hidden from working view. Completed assessments cannot be cancelled
NOT STARTED AC-PAT-044-c [CPO] Draft assessments are auto-saved periodically. If a save fails, the CPO sees an error with the option to retry
Attachments
READY AC-PAT-100 [CPO] All attachments belong to the patient record; orders hold links, not copies
READY AC-PAT-101 [CPO] One attachment can be linked to multiple orders
BLOCKED [Attachment body region metadata - not verified] AC-PAT-106 [CPO] Attachments cannot be hard-deleted — only soft-deleted/archived
BLOCKED [Attachment body region metadata - not verified] AC-PAT-107 [CPO] Order-linked attachments retained for minimum 10 years. Consultation-only patient attachments deleted with patient record
BLOCKED [Attachment linking - not verified] AC-PAT-108 [CPO] Technician access to attachments via order link only
NOT STARTED AC-PAT-108-a [CPO] Soft-deleted attachments remain accessible through existing order links (MDR retention) but are hidden from the patient record's attachment list
Notifications
NOT STARTED AC-PAT-011-a [CPO] Any notifications triggered by Patients-area events (prescription approaching expiry, assessment completion, consent changes, transparency reminders) contain patient reference numbers only — no patient name, contact details, or clinical data in the notification content. The user navigates to the platform to see full detail
Patient Data Editing
NOT STARTED AC-PAT-014 [CPO] Admin can edit patient demographics (name, contact, address, insurance) at any time while the patient is Active
NOT STARTED AC-PAT-014-a [CO] CPO can edit clinical data (medical history, contraindications, allergies) at any time — these are patient-level and evolve over time
NOT STARTED AC-PAT-014-b [CPO] All edits to patient data are tracked with who changed what and when (audit trail)
NOT STARTED AC-PAT-014-c [CPO] Editing is blocked for Archived patients — the record is read-only
NOT STARTED AC-PAT-014-d [CPO] Editing Inactive patients triggers a reactivation prompt before changes can be saved
READY AC-PAT-032 [CPO] Clinical Prescriptions are immutable after creation — corrections supersede the original, which is preserved in the audit trail
BLOCKED [Assessment field validation not fully verified] AC-PAT-052 [CPO] Adjustment records are immutable — append-only, soft delete for errors
READY AC-PAT-044 [CPO] Completed assessments can be amended via new version (see Assessment Lifecycle section)
Contextual Field Visibility
NOT STARTED AC-PAT-015 [CPO] Guardian fields (name, relationship, phone, email, primary contact) are collapsed by default for adult patients but expandable on demand — a CPO may need guardian or caregiver contact details for adults with cognitive disability, dementia, or elderly patients whose family manages their care
NOT STARTED AC-PAT-015-a [CO] Guardian-reported outcomes are hidden for adult patients — only shown when the patient cannot self-report
NOT STARTED AC-PAT-015-b [CO] Infant-specific cranial fields (fontanelle status, torticollis grade) are hidden for adult protective helmet assessments
NOT STARTED AC-PAT-053-a [CO] Prosthetic-specific fields (amputation level, K-level, residual limb, socket design, etc.) are hidden when assessing for an orthotic or cranial device
NOT STARTED AC-PAT-053-b [CO] Cranial measurement fields (CVAI, CI, diagonals, ear position, etc.) are hidden when assessing for an orthotic or prosthetic device
NOT STARTED AC-PAT-053-c [CO] K-level field is hidden for orthotic assessments — Functional Grade (see GLOSSARY.md) is used instead
NOT STARTED AC-PAT-053-d [CO] Treatment monitoring fields (Progress Review, treatment timeline, treatment completion) are hidden for devices without a treatment monitoring phase
NOT STARTED AC-PAT-053-e [CO] Protective helmet assessments do not display corrective reshaping fields (CVAI, CI, severity classification, etc.)
NOT STARTED AC-PAT-053-f [CO] Consultation shows general assessment fields only — no order-linked fields, no device configuration, no iteration outcomes
NOT STARTED AC-PAT-053-g [CO] Service visits show a focused view: issue description, work performed, adjustment records — not the full Initial Assessment field set
NOT STARTED AC-PAT-053-h [CO] Follow-Up visits show a focused view: device fit, skin condition, wear pattern, outcomes — not the full Initial Assessment field set
NOT STARTED AC-PAT-053-i [CO] Warranty visits show: issue description, warranty determination — not clinical assessment fields
NOT STARTED AC-PAT-053-j [CO] For unilateral devices, measurement fields for the untreated side are hidden (the CPO can expand them if needed for comparison)
Regulatory Traceability
BLOCKED [Annex XIII Section 1 generation - not implemented] AC-PAT-120 [BOTH] Annex XIII Section 1 statement (point-in-time) generated at fitting/delivery for all devices. Frozen after generation
BLOCKED [Annex XIII Section 2 tracking - not implemented] AC-PAT-121 [BOTH] Post-delivery adjustments and treatment monitoring are Annex XIII Section 2 documentation (living document), not Section 1
BLOCKED [Gate 3 Annex XIII verification - not implemented] AC-PAT-122 [BOTH] For devices with a treatment monitoring phase: Section 1 readiness checkpoint at FITTING → IN_TREATMENT. Gate 3 verifies Section 1 was already generated and Section 2 is complete
BLOCKED [10-year retention enforcement - not implemented] AC-PAT-123 [BOTH] Complete device record (Section 1 + Section 2 + adjustment history) retained for minimum 10 years from the date the device was placed on the market (which for custom-made devices = delivery to patient). Note: 15-year retention applies for implantable custom-made devices per MDR Article 10(8)

Orders & Configuration

59 ready 89 blocked 25 not started 173 total
#1 New AFO Order — End-to-End 14/41 34%
Step 1 — Create order from completed assessment
BLOCKED [Order creation from assessment - FE flow not fully verified] AC-ORD-001 [CPO] CPO can create a new device order from a completed assessment with seamless transition
BLOCKED [Links to patient/assessment/prescription - FE display not verified] AC-ORD-002 [CPO] The order record contains explicit links to patient, assessment, and prescription
BLOCKED [Clinical context snapshot capture - FE display not verified] AC-ORD-003 [BOTH] The clinical context snapshot is captured at creation and cannot be modified afterward
NOT STARTED AC-ORD-003-a [CPO] Order creation from an assessment is blocked if the assessment is currently being edited by another user — the CPO sees a message indicating the assessment has unsaved changes. Order creation is permitted only from a saved (Draft or Complete) assessment
NOT STARTED AC-ORD-003-b [CPO] CPO can initiate a snapshot correction on a DRAFT or SUBMITTED order. The correction records the original value, new value, clinical justification, and correcting user (per the snapshot correction record). Attempting a correction on an order in any other status is blocked with a message directing the CPO to cancel and recreate
NOT STARTED AC-ORD-003-c [CPO] When the source assessment linked to an order has been amended (per AC-PAT-044-d), the order detail view displays a notice: "Source assessment updated." The snapshot remains unchanged — the CPO reviews the amendment and decides whether to correct the snapshot or take no action
BLOCKED [CPO-only creation guard - FE enforcement not verified] AC-ORD-007 [CPO] Only CPOs can create new device orders; Production Managers can create repair and maintenance orders
BLOCKED [Org scoping - FE isolation not verified] AC-ORD-008 [CPO] Orders are scoped to the organisation — users in Organisation A cannot see Organisation B's orders
NOT STARTED AC-ORD-008-a [CPO] Within a multi-unit organisation, orders are assigned to the unit where they were created. When a CPO switches unit context *(AC-ORG-073)*, the order list filters to orders for the selected unit. Orders from other units are accessible via search but not shown in the default list. Org-level roles (Org Admin) see all orders across all units regardless of unit context
Step 2 — Configure device in the visual configurator
BLOCKED [Visual device representation required - currently form-based, not visual] AC-ORD-030 [BOTH] The configurator displays a visual representation of the device — not a form with dropdowns
BLOCKED [Pre-fill mode - depends on AC-ORD-030 visual configurator] AC-ORD-031 [CO] Pre-filled mode loads all components per the device type's component tree
BLOCKED [Component swapping - depends on AC-ORD-030] AC-ORD-032 [CO] Every pre-filled component can be changed, removed, or swapped
BLOCKED [Build-from-scratch mode - depends on AC-ORD-030] AC-ORD-033 [CO] Build-from-scratch mode starts with an empty canvas and allows manual component addition
BLOCKED [Mode switch preserves selections - depends on AC-ORD-030] AC-ORD-034 [CPO] Switching between modes preserves existing component selections
BLOCKED [Action logging - no DB persistence for action logs] AC-ORD-036 [CPO] All component actions are logged with timestamp and user
BLOCKED [Device categories - depends on AC-ORD-030] AC-ORD-037 [CO] Device categories and types are supported per the defined table
BLOCKED [Reimbursement codes in configurator - depends on AC-ORD-030] AC-ORD-048 [CPO] Reimbursement codes are visible on each component
Step 3 — Link attachments
READY AC-ORD-060 [CPO] Existing patient attachments can be linked to an order
BLOCKED [Upload+link in one action - FE flow not confirmed] AC-ORD-061 [CPO] New uploads are added to the patient record and linked to the order in one action
READY AC-ORD-062 [CPO] Required attachments by device type block submission if not linked — hard block
BLOCKED [One attachment to multiple orders - not verified] AC-ORD-063 [CPO] One attachment can be linked to multiple orders
Step 4 — Set payment path (Path A)
BLOCKED [Four payment paths (A/B/C/D) - schema exists but FE workflow incomplete] AC-ORD-080 [CPO] Four payment paths (A, B, C, D) are supported and documented on the order
BLOCKED [Order total calculation - no calculation logic in service] AC-ORD-086 [CPO] Order total is calculated from component unit prices — not manually entered
BLOCKED [Insurance budget display - no API endpoint] AC-ORD-087 [CPO] Insurance budget is displayed alongside the order total for comparison
READY AC-ORD-088 [CPO] Payment path is required before order submission (part of quality gate 2)
Step 5 — Submit order (DRAFT → SUBMITTED)
READY AC-ORD-092 [BOTH] Gate 2 verifies required components, no hard-block errors, required attachments, documented overrides, prescriber details, and payment path before submission
READY AC-ORD-017 [CPO] Every status transition is logged with timestamp, user, and notes
READY AC-ORD-010 [CPO] All 16 statuses are supported with the defined transitions
Step 6 — Production through delivery (RECEIVED → IN_PRODUCTION → SHIPPED → DELIVERED)
READY AC-ORD-006 [CPO] The order reference number is assigned at RECEIVED status, not at creation
NOT STARTED AC-ORD-065 [CPO] Production staff see attachment files without patient PII
Step 7 — Fitting
READY AC-ORD-100 [BOTH] Every device passes through FITTING before COMPLETE — no shortcut exists
READY AC-ORD-101 [CO] Fitting assessment can be recorded with fit evaluation, adjustments, and clinical notes
BLOCKED [PROs captured - assessment integration not verified] AC-ORD-102 [CO] Clinician-rated device outcomes are captured at fitting per the Patients area model (AC-PAT-055): comfort, function, satisfaction, pain, cosmetic acceptability, wear time, issues reported
READY AC-ORD-103 [CPO] Adjustments are append-only and cannot be deleted
NOT STARTED AC-ORD-104 [CO] Base workflow: FITTING → COMPLETE after acceptance
Step 8 — Complete order (Gate 3)
READY AC-ORD-093 [BOTH] Gate 3 verifies fitting documentation, PROs, serial numbers, traceability chain, and Annex XIII readiness before completion
NOT STARTED AC-ORD-076 [CPO] All Annex XIII required fields are present in the order data model
Edge Cases
BLOCKED [Build-from-scratch configurator mode - form-based not visual] AC-ORD-035 [CO] Bilateral flag creates L/R pair with mirror or independent configuration per AC-CTE-022 through AC-CTE-025; each side is independently editable when in independent mode. Bilateral handling applies to orthotic devices — prosthetic bilateral patients create two separate orders (one per side) per BR-PROS-006, because each residual limb has independent test socket iterations and completion timelines
READY AC-ORD-004 [CPO] Draft orders can be saved and resumed later
READY AC-ORD-005 [CPO] Draft orders without a prescription link can be deleted; submitted orders cannot
READY AC-ORD-012 [CPO] FITTING is required between DELIVERED and COMPLETE — no shortcut exists
#2 Prosthetic Order with Test Socket 7/12 58%
Step 1 — Create order and configure prosthesis
BLOCKED [Path C payer denial handling - not implemented] AC-ORD-046 [CO] Pre-fill logic populates components based on assessment data and patient context
BLOCKED [Path C payer denial handling - not implemented] AC-ORD-047 [CO] K-level pre-fill is scoped to prosthetics — not applied to all device types
READY AC-ORD-014 [CO] `TEST_DEVICE_*` statuses are only available for orders whose device type includes the test device phase
READY AC-ORD-015 [CPO] The test device phase and treatment phase are independent — a device type may include either, both, or neither
Step 2 — Submit and fabricate test socket
READY AC-ORD-011 [CPO] The unified status flow applies to all orders, with optional phases determined by device type
Step 3 — Test socket fitting and iteration
READY AC-ORD-106 [CO] Test device phase: test socket fitting allows approve, rebuild, or adjust-and-retest decisions
BLOCKED [Test socket iterations numbered - explicit model not found] AC-ORD-108 [CO] Test socket iterations are numbered and each evaluation is a distinct record
READY AC-ORD-016 [CO] Test socket approve/rebuild decisions can only be made by a CPO
Step 4 — Rebuild iteration
BLOCKED [Order lifecycle - not fully verified] AC-ORD-009 [CPO] Component modifications during `TEST_DEVICE_FITTING` and FITTING are logged with what changed, clinical reasoning, timestamp, and user
BLOCKED [Depends on AC-ORD-038] AC-ORD-039 [CO] The configurator can be reopened during `TEST_DEVICE_FITTING` and FITTING to swap components
Step 5 — Proceed to definitive device
Edge Cases
READY AC-ORD-106 [CO] Unlimited test socket iterations — no system-imposed maximum
READY AC-ORD-100 [CPO] Gate 3 serial number check applies to definitive device components only — test socket components are exempt
#3 Treatment Phase Devices (Cranial Helmets, Scoliosis Braces) 3/6 50%
Step 1 — Create order and configure helmet
READY AC-ORD-013 [CO] IN_TREATMENT is only available for orders whose device type includes the treatment phase
BLOCKED [Device categories - depends on AC-ORD-030] AC-ORD-037 [CO] Device categories and types are supported per the defined table
Step 2 — Submit, fabricate, deliver, fit
Step 3 — Enter treatment phase (FITTING → IN_TREATMENT)
READY AC-ORD-105 [CO] Treatment monitoring phase: FITTING → IN_TREATMENT → COMPLETE after treatment completion signal
Step 4 — Treatment completion
BLOCKED [Treatment completion signal - no treatment completion flag in schema] AC-ORD-098 [BOTH] Orders with treatment phase require treatment completion signal at gate 3
Edge Cases
READY AC-ORD-103 [CO] Gate 3 displays a soft warning for orders with treatment phase when treatment duration is below a configurable minimum. The default minimum is device-type-aware (e.g., 14 days for cranial helmets, 6 months for scoliosis braces) — not a single organisation-level default
NOT STARTED AC-ORD-077 [CPO] Pediatric orders inherit guardian transparency from the patient record
#4 Path C Non-Standard Device 9/19 47%
Step 1 — Configure and select Path C
BLOCKED [Path C justification - FE not verified] AC-ORD-082 [CPO] Path C captures standard alternative, recommended device, clinical justification, and payer approval status
BLOCKED [Payment path logic - not fully verified] AC-ORD-084 [CO] The platform generates a Path C proposal document from existing order data — no separate data entry
BLOCKED [Path C proposal document - no generation logic] AC-ORD-091 [CPO] Path C proposal document includes exactly the fields listed in the Proposal Contents table — no more, no less
Step 2 — Submit proposal (DRAFT → PENDING_APPROVAL)
READY AC-ORD-021 [CPO] PENDING_APPROVAL is only available for Path C orders — Paths A, B, and D go directly from DRAFT to SUBMITTED
READY AC-ORD-022 [CPO] Orders in PENDING_APPROVAL are not visible to production staff
READY AC-ORD-092 [CPO] Path C proposal reference copy is retained as an order attachment subject to 10-year MDR retention
Step 3 — Payer decision
BLOCKED [Path C payer approval - FE not verified] AC-ORD-083 [CPO] Path C requires external payer approval before the order can be submitted to production
BLOCKED [Approval/denial recording - FE not verified] AC-ORD-085 [CPO] CPO can record payer approval (with reference) or denial on a Path C order
READY AC-ORD-023 [CPO] CPO can move a PENDING_APPROVAL order to SUBMITTED (approved) or back to DRAFT (denied)
Step 4 — Art 14 transparency and completion
READY AC-ORD-093 [CPO] Art 14 transparency notice provision is documented on the order (timestamp, user, notice version) before order completion
BLOCKED [Quality gate - not fully verified] AC-ORD-094 [CPO] Path C proposal submission operates under GDPR Art 6(1)(c) legal obligation — no consent gate blocks proposal generation
BLOCKED [Quality gate - not fully verified] AC-ORD-095 [CPO] Confirming transparency notice provision is a single CPO action — the system records timestamp, authenticated user, and active notice template version
Edge Cases
READY AC-ORD-024 [CPO] If substantive configuration is modified while in PENDING_APPROVAL, the order reverts to DRAFT and the pending approval is invalidated
READY AC-ORD-025 [CPO] When a Path C denial is resolved, all original Path C data (clinical justification, proposal, denial reference) is retained
READY AC-ORD-026 [CPO] Switching from denied Path C to self-pay (Path B) requires fresh patient financial consent documentation
BLOCKED [Path C approval expiry warning - not implemented] AC-ORD-097 [CPO] Path C approval expiry (`approvalValidUntil`) generates a soft warning at Gate 2 when expired — not a hard block. CPO can override with documented acknowledgement
BLOCKED [Quality gate - not fully verified] AC-ORD-096 [CPO] If the self-pay amount changes after patient financial consent is confirmed, the consent is invalidated and must be re-captured
READY AC-ORD-101 [CPO] Gate 2 verifies that Path B/C `patientInformed` confirmation is current
BLOCKED [PROs captured - assessment integration not verified] AC-ORD-102 [CPO] Gate 2 treats expired Path C approval as a soft warning, not a hard block
#5 Cross-Org B2B Order 0/15 0%
Step 1 — Place B2B order
BLOCKED [Cross-org B2B ordering - post-WHX, not implemented] AC-ORD-120 [CPO] A clinic CPO can place a B2B order to an external manufacturer or central fab through the platform
BLOCKED [Cross-org B2B ordering - post-WHX, not implemented] AC-ORD-121 [CO] The ordering clinic specifies device type, prescription, attachments, and clinical notes — not component-level configuration
BLOCKED [Cross-org B2B ordering - post-WHX, not implemented] AC-ORD-126 [CPO] Prescriber details are captured in the cross-org order record for Annex XIII compliance but are not visible to Central Fab users in any view — accessible only to the ordering clinic and to QA/Compliance roles at the manufacturer of record. Central Fab users see the prescriber's professional credentials only (licence number, institution) without personal contact details
Step 2 — Receiving organisation handles order
BLOCKED [Cross-org B2B ordering - post-WHX, not implemented] AC-ORD-122 [CPO] The receiving manufacturer/central fab sees pseudonymised patient references — no patient PII
BLOCKED [Cross-org B2B ordering - post-WHX, not implemented] AC-ORD-128 [CO] The receiving manufacturer's CPO configures the device using their own catalog
BLOCKED [Cross-org B2B ordering - post-WHX, not implemented] AC-ORD-127 [CPO] B2B orders follow the same status lifecycle as internal orders
Step 3 — Status updates and delivery
BLOCKED [Cross-org B2B ordering - post-WHX, not implemented] AC-ORD-124 [CPO] Status updates flow back to the ordering clinic in real-time
BLOCKED [Cross-org B2B ordering - post-WHX, not implemented] AC-ORD-129 [CPO] Notifications to the ordering clinic follow data minimisation rules
Edge Cases
BLOCKED [Cross-org B2B ordering - post-WHX, not implemented] AC-ORD-123 [CPO] Central fab clients cannot see each other's orders
BLOCKED [Cross-org B2B ordering - post-WHX, not implemented] AC-ORD-125 [CPO] Hybrid organisations can distinguish own patient orders from incoming B2B orders in their queue
NOT STARTED AC-ORD-073 [CPO] Cross-organisation sharing for fabrication does not require separate patient consent
NOT STARTED AC-ORD-071 [CPO] Central fabs receive pseudonymised patient references — no name, contact, or insurance
BLOCKED [Cross-org B2B ordering - post-WHX, not implemented] AC-ORD-132 [CPO] **\[post-WHX\]** When a cross-org order enters IN\_TREATMENT after fitting, the receiving organisation sees the IN\_TREATMENT status but cannot act on treatment-phase decisions (Progress Reviews, treatment completion). Treatment monitoring is conducted by the ordering clinic's CPO. The receiving org sees status updates only
BLOCKED [Cross-org B2B ordering - post-WHX, not implemented] AC-ORD-133 [CPO] **\[post-WHX\]** A bilateral cross-org order uses a single pseudonymised patient reference for both sides. The receiving organisation sees both L/R configurations within the same order. Bilateral handling follows the same mirror/independent rules as internal orders
BLOCKED [Cross-org B2B ordering - post-WHX, not implemented] AC-ORD-134 [CPO] **\[post-WHX\]** In cross-org orders, the ordering clinic's tree extensions are not shared with the receiving organisation. The receiving manufacturer configures the device using their own tree version and their own extensions. The ordering clinic's device specification and clinical context are provided as reference information, not as binding configuration constraints
#6 Repair/Maintenance Order 5/7 71%
Step 1 — Create service order from existing device
READY AC-ORD-050 [CPO] Repair orders can be created referencing an existing completed order
READY AC-ORD-051 [CPO] Maintenance orders can be created referencing an existing completed order with manufacturer service interval documented
READY AC-ORD-059 [CO] Warranty status (ACTIVE, EXPIRING_SOON, EXPIRED) is computed and displayed per component
Step 2 — Incident flagging
READY AC-ORD-054 [CO] Every repair, maintenance, adjustment, and reclamation order includes an incident flag
BLOCKED [BLOCKED BY: notification-system - CONFIRMED_INCIDENT logged but notification requires notification system] AC-ORD-055 [CPO] CONFIRMED_INCIDENT flag triggers a notification to the Compliance area
Step 3 — Fabricate, deliver, complete
READY AC-ORD-060 [CPO] Service history shows all events chronologically per device
BLOCKED [Upload+link in one action - FE flow not confirmed] AC-ORD-061 [CPO] Service history records are append-only and cannot be deleted
#7 Adjustment Order 1/6 17%
Step 1 — Create adjustment order
BLOCKED [Warranty tracking per component - not fully verified] AC-ORD-056 [CO] Adjustment orders require a prescription, a focused clinical assessment, and a `parentOrderId`
BLOCKED [Warranty tracking per component - not fully verified] AC-ORD-058 [CO] The adjustment reason (anatomical change, activity level change, other clinical) is captured
Step 2 — Modify configuration
BLOCKED [Warranty tracking per component - not fully verified] AC-ORD-057 [CO] Adjustment orders load the parent order's configuration in the configurator as a starting point
BLOCKED [Pre-fill mode - depends on AC-ORD-030 visual configurator] AC-ORD-031 [CPO] ADJUSTMENT orders follow the core flow only — no test device phase, no treatment phase
Step 3 — Submit and fabricate
Edge Cases
READY AC-ORD-054 [CO] Incident flag is available on adjustment orders for safety signal capture
BLOCKED [Order lifecycle - not fully verified] AC-ORD-009 [CPO] Component modifications are logged with what changed, clinical reasoning, timestamp, and user
#8 Reclamation (Warranty Claim) 4/6 67%
Step 1 — Validate warranty
READY AC-ORD-059 [CO] Warranty status (ACTIVE, EXPIRING_SOON, EXPIRED) is computed and displayed per component
Step 2 — Create reclamation order
READY AC-ORD-052 [CPO] Reclamation orders validate warranty status before creation
READY AC-ORD-054 [CO] Incident flag is available for safety signal capture
Step 3 — Fabricate replacement and complete
READY AC-ORD-060 [CPO] Service history shows all events chronologically per device
Edge Cases
BLOCKED [BLOCKED BY: notification-system - incident flag captured (PR #290) but notification delivery requires notification system] AC-ORD-053 [CPO] Reclamation creation is blocked for components with expired warranty
BLOCKED [BLOCKED BY: notification-system - CONFIRMED_INCIDENT logged but notification requires notification system] AC-ORD-055 [CPO] CONFIRMED_INCIDENT flag triggers notification to Compliance
#9 Role-Based Data Visibility 1/13 8%
Patient PII visibility
NOT STARTED AC-ORD-070 [CPO] Role-based visibility is enforced per the matrix — technicians see no patient PII
NOT STARTED AC-ORD-071 [CPO] Central fabs receive pseudonymised patient references — no name, contact, or insurance
NOT STARTED AC-ORD-075 [CPO] Notifications contain order references only — no patient data in email or push
Pricing visibility
BLOCKED [Payment path logic - not verified] AC-ORD-089 [CPO] Pricing is visible to clinical, admin, billing, and management roles
BLOCKED [Payment path logic - not verified] AC-ORD-090 [CPO] Pricing is hidden from production, technician, and logistics roles
Payer data visibility
NOT STARTED AC-ORD-072 [CPO] Payers see identity and claims data — no clinical images or scans (measurements are shared for medical necessity justification)
Cross-org and compliance data
NOT STARTED AC-ORD-073 [CPO] Cross-organisation sharing for fabrication does not require separate patient consent
NOT STARTED AC-ORD-074 [CPO] Order data is retained for 10 years per MDR retention requirement
NOT STARTED AC-ORD-077 [CPO] Pediatric orders inherit guardian transparency from the patient record
Search and dashboard visibility
READY AC-ORD-111 [CPO] Search results respect role-based visibility
NOT STARTED AC-ORD-116 [CPO] Role-specific dashboards show relevant information per the defined views
Edge Cases
NOT STARTED AC-ORD-065 [CPO] Production staff see attachment files without patient PII
BLOCKED [Treatment phase completion - not fully verified] AC-ORD-115 [CPO] Email and push notifications contain order references only — no patient data
#10 Quality Gates Verification 5/15 33%
Gate 1 — Order creation
BLOCKED [Path C proposal document - no generation logic] AC-ORD-091 [BOTH] Gate 1 verifies assessment completion, transparency record, prescription, prescriber details, and clinical context before order creation
BLOCKED [Quality gate - not verified] AC-ORD-099 [CO] Gate 1 clinical context check is device-type-aware — only fields required for the selected device type are verified
Gate 2 — Order submission
READY AC-ORD-092 [BOTH] Gate 2 verifies required components, no hard-block errors, required attachments, documented overrides, prescriber details, and payment path before submission
READY AC-ORD-101 [CPO] Gate 2 verifies that Path B/C `patientInformed` confirmation is current (timestamp later than most recent self-pay amount change)
BLOCKED [PROs captured - assessment integration not verified] AC-ORD-102 [CPO] Gate 2 treats expired Path C approval (`approvalValidUntil`) as a soft warning, not a hard block
Gate 3 — Order completion
READY AC-ORD-093 [BOTH] Gate 3 verifies fitting documentation, PROs, serial numbers, traceability chain, and Annex XIII readiness before completion
BLOCKED [Treatment completion signal - no treatment completion flag in schema] AC-ORD-098 [CPO] Orders with treatment phase require treatment completion signal at gate 3
READY AC-ORD-100 [CPO] Gate 3 serial number check applies to definitive device components only — test socket components are exempt
READY AC-ORD-103 [CPO] Gate 3 displays a soft warning for orders with treatment phase when treatment duration is below a configurable minimum
Cross-cutting gate behaviour
BLOCKED [Quality gate - not fully verified] AC-ORD-094 [CPO] A broken traceability chain link blocks progression at any gate
BLOCKED [Quality gate - not fully verified] AC-ORD-095 [CPO] Clear feedback is provided when a gate check fails, identifying the specific issue
NOT STARTED AC-ORD-095-a [CPO] When a gate check fails due to data owned by another area (e.g., incomplete assessment, missing transparency record, expired prescription), the failure message identifies the specific gap and provides a direct link to the source record in the Patients area (e.g., "Assessment incomplete: missing weight, height. Open assessment")
BLOCKED [Quality gate - not fully verified] AC-ORD-096 [CPO] Gate evidence is recorded with timestamp, user, and check results
BLOCKED [Path C approval expiry warning - not implemented] AC-ORD-097 [CPO] Gate evidence is append-only and cannot be modified
NOT STARTED AC-ORD-076 [CPO] All Annex XIII required fields are present in the order data model
#11 Device Rejection at Fitting 6/11 55%
Step 1 — Device arrives at fitting
READY AC-ORD-100 [BOTH] Every device passes through FITTING before COMPLETE — no shortcut exists
READY AC-ORD-101 [CO] Fitting assessment can be recorded with fit evaluation, adjustments, and clinical notes
Step 2 — CPO rejects the device
BLOCKED [Device rejection to IN_PRODUCTION - FE flow not verified] AC-ORD-107 [CO] Device rejection at fitting sends the order back to IN_PRODUCTION with a documented reason
READY AC-ORD-027 [CPO] A device rejected at fitting returns to IN_PRODUCTION with a documented rejection reason
Step 3 — Component modifications during rework
BLOCKED [Depends on AC-ORD-038] AC-ORD-039 [CO] The configurator can be reopened during FITTING to swap components
BLOCKED [Order lifecycle - not fully verified] AC-ORD-009 [CPO] Component modifications during FITTING are logged with what changed, clinical reasoning, timestamp, and user
BLOCKED [Action logging - no DB persistence for action logs] AC-ORD-036 [CPO] All component actions are logged with timestamp and user
Step 4 — Rework and return to fitting
READY AC-ORD-101 [CO] A new fitting assessment is recorded for the reworked device
BLOCKED [PROs captured - assessment integration not verified] AC-ORD-102 [CO] PROs are captured again at the second fitting
Edge Cases
READY AC-ORD-017 [CPO] Every status transition (FITTING → IN_PRODUCTION → FITTING) is logged
READY AC-ORD-020 [CPO] Cancelled and rejected orders retain all data
#12 Configuration Override Flow 1/9 11%
Step 1 — Encounter validation warning
BLOCKED [Path C payer approval workflow - not implemented] AC-ORD-041 [CO] Clinical validity issues trigger soft warnings with override capability
BLOCKED [Path C payer approval workflow - not implemented] AC-ORD-043 [CO] Material conflicts (allergies) trigger soft warnings with override — not hard blocks
BLOCKED [Path C payer approval workflow - not implemented] AC-ORD-042 [CO] Mechanical compatibility violations trigger hard blocks with no override
BLOCKED [Art 14 transparency for non-standard devices - not implemented] AC-ORD-040 [CO] Required components missing triggers a hard block preventing submission
Step 2 — Override with justification
BLOCKED [Path C payer approval workflow - not implemented] AC-ORD-044 [BOTH] Every override requires a justification and is logged with timestamp and user
BLOCKED [Path C payer denial handling - not implemented] AC-ORD-045 [CPO] Override records are append-only and cannot be edited or deleted
Step 3 — Verify override in traceability chain
READY AC-ORD-092 [BOTH] Gate 2 verifies that all soft-warning overrides have documented justifications
Edge Cases
NOT STARTED AC-ORD-049 [CO] Each device type references the applicable GSPR conformity template
BLOCKED [Free-form entry for unlisted products - not verified] AC-ORD-038 [CO] The configurator works for device types with and without encoded component trees
Cross-Cutting Concerns 3/13 23%
Search and history
BLOCKED [Partial - has order number, type, status, date range filters (FE PR #352) but missing device type and clinician filters] AC-ORD-110 [CPO] Orders can be searched by patient name, reference number, date range, status, device type, clinician, and order type
BLOCKED [Treatment phase monitoring - not fully verified] AC-ORD-112 [CPO] Order history per patient shows all orders chronologically
BLOCKED [Treatment phase monitoring - not fully verified] AC-ORD-113 [CPO] Device history shows the complete lifecycle from creation through service
BLOCKED [Treatment phase monitoring - not fully verified] AC-ORD-114 [CPO] Status change notifications are sent to the correct recipients per the notification table
NOT STARTED AC-ORD-117 [CPO] Recent orders are accessible without searching
Order lifecycle scope for cross-area consumers
BLOCKED [Cross-org B2B ordering - post-WHX, not implemented] AC-ORD-130 [CPO] Terminal order states are COMPLETE and CANCELLED. All other statuses are non-terminal. Cross-area checks (organisation termination per AC-ORG-152, unit deactivation per AC-ORG-068) use this definition to determine whether outstanding orders exist
BLOCKED [Cross-org B2B ordering - post-WHX, not implemented] AC-ORD-131 [CPO] An order in a CPO-dependent status (FITTING, TEST_DEVICE_FITTING, IN_TREATMENT) can be progressed by any active CPO assigned to the same unit — not only the CPO who created the order
Cancellation and rejection
READY AC-ORD-018 [CPO] Cancellation requires a reason; cancellation after SHIPPED requires Org Admin approval
READY AC-ORD-019 [CPO] Rejected orders can be revised and resubmitted
READY AC-ORD-020 [CPO] Cancelled and rejected orders retain all data
NOT STARTED AC-ORD-028 [CPO] A rejected order can be returned to DRAFT by the CPO for revision and resubmission
NOT STARTED AC-ORD-029 [CPO] MDR-critical status transitions require mandatory notes documenting the clinical decision rationale
BLOCKED [Visual device representation required - currently form-based, not visual] AC-ORD-030 [CPO] An on-hold order can be rejected directly without returning to RECEIVED first

Component Trees

74 ready 34 blocked 3 not started 111 total
#1 CPO Configures a New AFO — Tree Evaluation End-to-End 29/31 94%
Step 1 — CPO selects device type
READY AC-CTE-001 [BOTH] Device hierarchy presents category → type → subtype navigation
BLOCKED [All 6 device categories structurally present - Upper Limb trees not published (post-WHX)] AC-CTE-002 [CO] All six device categories are structurally present in the hierarchy: Lower Limb Orthotic, Upper Limb Orthotic, Lower Limb Prosthetic, Upper Limb Prosthetic, Cranial, Spinal. Four categories have published trees at WHX (Lower Limb Orthotic, Lower Limb Prosthetic, Cranial, Spinal); Upper Limb Orthotic and Upper Limb Prosthetic are visible but have no published trees until post-WHX
READY AC-CTE-003 [CPO] Selecting a subtype loads the published tree version for that subtype
READY AC-CTE-004 [CPO] If only one subtype exists for a type, subtype selection is skipped
Step 2 — Bilateral handling (if bilateral device)
READY AC-CTE-022 [CO] Bilateral device creates paired configurations — left and right — with the default bilateral mode (mirror or independent) coming from the tree definition per position, not from user choice
READY AC-CTE-023 [CO] Mirror behaviour copies selections from primary side to secondary side — default for orthotic positions where both sides typically use the same components
READY AC-CTE-024 [CO] Independent behaviour allows different selections per side — default for prosthetic positions where residual limbs differ. Note: bilateral prosthetic devices use separate orders (one per side) per BR-PROS-006, not paired configurations within one order. The bilateral handling in AC-CTE-022 through AC-CTE-025 applies to orthotic bilateral configurations
READY AC-CTE-025 [CO] CPO can switch between mirror and independent at any point — switching from independent to mirror warns that the secondary side's selections will be replaced by the primary side's, and requires confirmation before proceeding
Step 3 — Tree loads and pre-fill fires
READY AC-CTE-005 [BOTH] The configurator displays all component positions for the selected device type, each clearly indicating whether it is required, optional, or conditionally dependent on another selection
READY AC-CTE-006 [CO] Pre-fill recommendations populate based on patient clinical data from the linked assessment — weight, height, activity level, pathology
READY AC-CTE-007 [CPO] Pre-fill sources layer in priority order: assessment data overrides previous device history, which overrides organisation preferences, which overrides Pentla defaults — when sources conflict, the higher-priority source wins
READY AC-CTE-008 [CO] Previous device manufacturer ranks higher in suggestions but does not lock the selection
READY AC-CTE-009 [CPO] Pre-fill populates all positions before the CPO begins interacting with the configurator — there is no visible loading state for pre-fill results after the tree appears
Step 4 — CPO reviews and modifies components
READY AC-CTE-010 [BOTH] Every pre-filled value can be changed, removed, or swapped by the CPO — pre-fill is recommendation, never constraint
READY AC-CTE-011 [CO] Available products for each position come from the organisation's component catalog, filtered by component category
READY AC-CTE-012 [CPO] Preferred catalog entries rank higher in the selection list
READY AC-CTE-013 [CPO] Each component shows its reimbursement code
NOT STARTED AC-CTE-013-a [CPO] Component specifications in the configurator (size, weight class, load rating) display in the organisation's configured measurement system (metric/imperial per AC-ORG-202). Changing the org preference affects display only — stored specifications retain their original units
READY AC-CTE-014 [CO] Selecting a component that triggers a conditional dependency immediately updates affected positions — e.g., selecting an articulated shell requires a hinge
READY AC-CTE-015 [CO] When a component selection triggers a dependency, the configurator responds correctly: required positions appear, excluded positions are removed, recommended positions show a suggestion, and default-value positions are pre-populated — each response matches clinical expectation for the device type
READY AC-CTE-016 [CPO] Changing a component updates only visibly affected positions — unrelated positions remain unchanged
READY AC-CTE-017 [CPO] When the CPO changes a component, dependency and validation updates appear without a visible loading state — affected positions update immediately
READY AC-CTE-018 [CO] Compatibility rules check physical constraints between selected products — e.g., adapter type mismatch between knee and pylon
READY AC-CTE-019 [CO] Hard blocks prevent submission for physical impossibilities — the affected positions display the specific incompatibility (e.g., "selected knee requires 4-hole adapter, selected pylon has tube-clamp adapter") and the CPO can continue configuring other positions while the conflict exists
READY AC-CTE-020 [CO] Soft warnings allow submission with documented clinical justification — the justification field appears in-context at the warning, not on a separate screen
READY AC-CTE-021 [CPO] Positions without a selection do not trigger compatibility warnings — the CPO is not warned about a conflict until both relevant components are selected
Step 5 — Full validation on submission
READY AC-CTE-026 [BOTH] Full validation pass runs at submission: all positions checked, all dependencies verified, all compatibility rules evaluated
READY AC-CTE-027 [CPO] Every position shows a validation status — including valid ones
READY AC-CTE-028 [CPO] Hard blocks prevent submission; soft warnings allow submission with override
Step 6 — Save and resume (edge case)
READY AC-CTE-029 [CPO] Reopening a saved draft re-evaluates the full tree against saved selections using the pinned tree version
READY AC-CTE-030 [CPO] Re-evaluation catches catalog changes since the draft was saved — deactivated products flagged
#2 CPO Configures a Transfemoral Prosthesis — Complex Tree 0/12 0%
Step 1 — Device type selection and pre-fill
BLOCKED [Transfemoral tree - tree data exists in tests but FE not verified] AC-CTE-031 [CO] Transfemoral prosthesis tree loads with all expected positions: socket, liner, knee unit, pylon, foot, suspension, cosmetic cover
BLOCKED [K-level pre-fill - not verified end-to-end] AC-CTE-032 [CO] K-level from assessment pre-fills appropriate knee unit categories — K3 patient sees microprocessor and fluid-controlled knee categories, with microprocessor ranked first
BLOCKED [Knee unit cascade - tests exist but FE not verified] AC-CTE-033 [CO] Patient weight pre-fills load-rated components within safe range
Step 2 — Knee unit cascade
BLOCKED [Adapter compatibility - tests exist but FE not verified] AC-CTE-034 [CO] Selecting a specific knee unit triggers adapter compatibility check on pylon
BLOCKED [Hard blocks for incompatibilities - FE display not verified] AC-CTE-035 [CO] If selected pylon adapter is incompatible with the knee unit, a hard block appears at both affected positions — the CPO can continue configuring other positions and resolve the mismatch before submission
BLOCKED [Free-form entry - FE exists but end-to-end not verified] AC-CTE-036 [CO] Changing the knee unit re-evaluates pylon, foot, and cosmetic cover dependencies
Step 3 — Free-form entry for unlisted product
BLOCKED [Free-form validation - not verified end-to-end] AC-CTE-037 [CPO] CPO can enter an unlisted product for any position using free-form entry
BLOCKED [Free-form per-order - not verified] AC-CTE-038 [CO] Free-form entries are subject to the same compatibility validation as catalog entries
BLOCKED [Free-form per-order - not verified] AC-CTE-039 [CPO] Free-form entries are per-order and do not enter the catalog automatically
Step 4 — Component swap during fitting
BLOCKED [Test device component swap - not verified] AC-CTE-040 [CO] During `TEST_DEVICE_FITTING` or FITTING status, the same evaluation logic applies — validation rules do not change. Components used during test fitting may be temporary clinic stock (e.g., a demo knee for gait evaluation) and are distinguished from definitive selections in the final BoM
BLOCKED [Test device component swap - not verified] AC-CTE-041 [CO] Swapping a component during fitting triggers the same dependency re-evaluation
Step 5 — Subtype with multiple activity variants (edge case)
BLOCKED [Subtype activity variants (everyday/sports) - no UI support] AC-CTE-045 [CO] Transtibial prosthesis subtypes (everyday, sports, swimming) are separate device configurations, each with its own tree — a patient may have multiple active prostheses for different activities, ordered independently
#3 Pentla Domain Expert Authors and Publishes a New Tree Version 19/22 86%
Step 1 — Create a draft
READY AC-CTE-046 [CPO] Domain expert can create a draft from an existing published version (copy) or from scratch
READY AC-CTE-047 [CPO] Only one draft may exist per device subtype at any time
Step 2 — Edit positions and rules
READY AC-CTE-048 [CO] Domain expert can add, remove, and reorder positions in the hierarchy
READY AC-CTE-049 [CPO] Position codes must be unique within the tree version — duplicates are rejected immediately
READY AC-CTE-050 [CPO] Every tree must have exactly one root position
READY AC-CTE-051 [CPO] Position hierarchy must be acyclic — cycle detected immediately during editing
Step 3 — Add conditional dependencies and compatibility rules
READY AC-CTE-052 [CO] Domain expert can define conditional dependencies between positions with trigger conditions and effects
READY AC-CTE-053 [CPO] Dependency trigger and target must belong to the same tree version
READY AC-CTE-054 [CPO] Compatibility rule positions must belong to the same tree version
Step 4 — Authoring validation (continuous)
READY AC-CTE-055 [CPO] When a domain expert adds or edits a position, structural constraint violations (duplicate codes, cycles, missing root) are flagged at the point of the edit — no separate validation step is needed to discover them
READY AC-CTE-056 [CPO] Component categories must reference the global registry — unrecognised categories are rejected
Step 5 — Testing sandbox
BLOCKED [Testing sandbox - no separate test catalog verified] AC-CTE-057 [CPO] Domain expert can run the evaluation engine against the draft version with test clinical data
BLOCKED [Testing sandbox - not verified] AC-CTE-058 [CPO] Testing sandbox uses a test catalog, not a real organisation's catalog
BLOCKED [Testing sandbox - not verified] AC-CTE-059 [CPO] [post-WHX] Test scenarios can be saved and replayed for regression testing
Step 6 — Publish-time checks
READY AC-CTE-060 [CPO] Publish-time validation catches circular dependency chains
READY AC-CTE-061 [CPO] Publish-time validation catches require + exclude conflicts on the same position
READY AC-CTE-062 [CPO] Publish-time validation catches unreachable positions
Step 7 — Publish
READY AC-CTE-063 [CPO] Publish workflow includes validation results, change description, and confirmation
READY AC-CTE-064 [CPO] Previous published version is automatically deprecated when the new version is published
READY AC-CTE-065 [CPO] Published versions cannot be rolled back — forward-fix only
Step 8 — In-progress orders unaffected (edge case)
READY AC-CTE-066 [CPO] Orders created before the publish continue using their pinned version — no change in rules, validation, or available positions
READY AC-CTE-067 [CPO] New orders created after publish get the new version
#4 Organisation Admin Manages Customer Extensions 0/11 0%
Step 1 — Create an extension
BLOCKED [Customer extensions - not implemented] AC-CTE-068 [CPO] Org admin can create all five extension types: add position, hide position, modify pre-fill, add conditional dependency, add compatibility rule
BLOCKED [Customer extensions - not implemented] AC-CTE-069 [CPO] Extensions are organisation-scoped — invisible to other organisations
Step 2 — Hide required position (edge case: blocked)
BLOCKED [Customer extensions - not implemented] AC-CTE-070 [CPO] Hiding a required position is blocked unless a conditional dependency adjusts its classification — the block message identifies the position's required classification and explains that a conditional dependency must change it before hiding is allowed
Step 3 — Preview and activate
BLOCKED [Customer extensions - not implemented] AC-CTE-071 [CO] Org admin can preview the combined effect of tree + extensions before activation
BLOCKED [Customer extensions - not implemented] AC-CTE-072 [CPO] Extension approval workflow is configurable — optional per organisation
Step 4 — Extension snapshot on order creation
BLOCKED [Customer extensions - not implemented] AC-CTE-073 [CPO] When a CPO creates an order, active extensions are snapshotted alongside the tree version
BLOCKED [Customer extensions - not implemented] AC-CTE-074 [CPO] Extension snapshots are complete copies — subsequent extension changes do not affect in-flight orders
Step 5 — New tree version triggers migration
BLOCKED [Customer extensions - not implemented] AC-CTE-075 [CPO] When Pentla publishes a new tree version, org admin receives a migration notification listing affected extensions
BLOCKED [Customer extensions - not implemented] AC-CTE-076 [CPO] New orders use the new tree version without extensions until migration is complete
Step 6 — Migration review
BLOCKED [Customer extensions - not implemented] AC-CTE-077 [CPO] Org admin reviews each extension against the new tree version — some may apply cleanly, others may need adjustment. [post-WHX] The migration interface pre-classifies each extension as compatible, needs review, or obsolete to reduce manual review effort
Step 7 — Extension deactivation
BLOCKED [Customer extensions - not implemented] AC-CTE-078 [CPO] Deactivating an extension does not affect orders that already captured it in their snapshot
#5 Organisation Admin Manages Component Catalog 11/13 85%
Step 1 — Create and manage catalogs
READY AC-CTE-079 [CPO] Org admin can create, activate, and deactivate catalogs
READY AC-CTE-080 [CPO] Catalogs are organisation-scoped — invisible to other organisations
Step 2 — Add catalog entries
READY AC-CTE-081 [CPO] Catalog entries capture: product identity, component category, technical specifications, compatibility tags, pricing, reimbursement code, preference flag, reference material
READY AC-CTE-082 [CPO] Component category must reference the global registry — unrecognised categories are rejected
Step 3 — Inactive entry handling
READY AC-CTE-083 [CPO] Inactive entries are excluded from new configurations
READY AC-CTE-084 [CPO] Inactive entries are retained for historical reference on existing orders
NOT STARTED AC-CTE-084-a [CPO] When a CPO reopens the configurator for a DRAFT order and a previously-selected component's catalog entry has been deactivated since the draft was saved, the affected position displays a "no longer available" indicator on the deactivated component. The CPO must replace the deactivated component before submission — deactivated components are a hard block at Gate 2
Step 4 — Bulk import
READY AC-CTE-085 [CPO] Bulk import validates entries, flags duplicates, and reports errors
READY AC-CTE-086 [CPO] Import adds entries but does not update or delete existing entries
Step 5 — Free-form entry promotion
READY AC-CTE-087 [CPO] Catalog management shows free-form entries awaiting review
READY AC-CTE-088 [CPO] Org admin can promote a free-form entry to a full catalog entry
Step 6 — Catalog usage statistics
BLOCKED [Catalog usage statistics - not verified] AC-CTE-089 [CPO] [post-WHX] Catalog management shows usage statistics for entries
Step 7 — Required position coverage check
READY AC-CTE-090 [CPO] Every required position in active trees must have at least one matching catalog entry — warned at tree activation
#6 Tree Version Update with In-Progress Orders 3/10 30%
Step 1 — Orders exist using current tree version
BLOCKED [Test device component swap - not verified] AC-CTE-042 [CPO] The order records which tree version was active at draft creation
BLOCKED [Test device component swap - not verified] AC-CTE-043 [CPO] The order uses that pinned version through its entire lifecycle
READY AC-CTE-091 [CPO] Orders in DRAFT, IN_PRODUCTION, FITTING — all pinned to the current published tree version
Step 2 — Domain expert publishes new version
READY AC-CTE-092 [CPO] New version is published — previous version is deprecated
Step 3 — In-progress orders continue unchanged
READY AC-CTE-093 [CPO] DRAFT order reopened: tree rules, positions, and validation are identical to before the publish
NOT STARTED AC-CTE-093-a [CPO] When a CPO reopens a DRAFT order that uses a deprecated tree version, the configurator displays an informational notice indicating the order uses an older tree version and new orders would use the current version. The notice does not block — the CPO can continue working on the order without action
BLOCKED [Deprecated version notice on DRAFT reopening - not implemented] AC-CTE-094 [CPO] FITTING order: component swap uses the pinned version's rules
Step 4 — New order gets new version
BLOCKED [Version audit for historical orders - not verified] AC-CTE-095 [CPO] A new order created after publish loads the new tree version
Step 5 — Audit trail integrity
BLOCKED [Test device component swap - not verified] AC-CTE-044 [CPO] An auditor can see the exact tree version, extension snapshot, and all evaluation results for any historical order
BLOCKED [Version audit for historical orders - not verified] AC-CTE-096 [CPO] Auditor reviewing the in-progress order sees the original tree version and its rules — not the new version
#7 Reimbursement Codes and Multi-Jurisdiction 5/5 100%
Step 1 — Reimbursement codes are Pentla-managed
READY AC-CTE-097 [CPO] Reimbursement codes are shared across all organisations in a jurisdiction
Step 2 — Jurisdiction determines codes
READY AC-CTE-098 [CPO] The unit's jurisdiction determines which reimbursement codes apply — not the organisation's home country
READY AC-CTE-099 [CPO] A multi-jurisdiction organisation sees different codes depending on which unit the order belongs to
Step 3 — Codes visible in configurator
READY AC-CTE-100 [CO] Each component in the configurator displays its reimbursement code
Step 4 — Historical code retention
READY AC-CTE-101 [CPO] When reimbursement codes are updated, historical orders retain the codes that were in effect at order creation
#8 Device Type Examples — Clinical Accuracy Spot-Check 7/7 100%
Step 1 — AFO tree accuracy
READY AC-CTE-102 [CO] Solid AFO tree: shell, footplate, padding, straps — positions match real device structure
READY AC-CTE-103 [CO] Articulated AFO tree: hinge selection triggers appropriate ankle joint dependencies
Step 2 — Prosthetic tree accuracy
READY AC-CTE-104 [CO] Transtibial prosthesis: socket, liner, pylon, foot, suspension — positions and dependencies are clinically accurate
READY AC-CTE-105 [CO] Transfemoral prosthesis: knee unit cascading dependencies on pylon adapter and foot correctly reflect physical constraints
Step 3 — Cranial helmet accuracy
READY AC-CTE-106 [CO] Protective helmet: shell, padding, chin strap — simple structure, no reshaping components
READY AC-CTE-107 [CO] Corrective helmet: treatment monitoring components present, opening strategy positions reflect clinical practice
Step 4 — Spinal accuracy
READY AC-CTE-108 [CO] Cheneau TLSO: pressure zones, curve classification input, pad positioning — reflects scoliosis brace clinical practice