Epic: Guided buyer onboarding with 4-stakeholder approval gate
F07-001
Buyer self-service registration
Buyer3 SP
As a data buyer, I want to register for a marketplace account with company info, use case description, and regulatory credentials so that my application can be reviewed by the approval gate.
Acceptance Criteria
Given I am a new buyer, When I complete the registration form, Then my application enters the 4-stakeholder approval queue and I receive a confirmation email with estimated review time.
Given I omit required fields (company name, use case), When I submit the form, Then validation errors highlight the missing fields and submission is blocked.
F07-002
4-stakeholder sequential approval workflow
Operator5 SP
As a platform operator, I want each buyer application to require sequential approval from Legal, Compliance, Data Governance, and DPO so that no buyer gets data access without all 4 stakeholders signing off.
Acceptance Criteria
Given Legal approves a buyer, When the approval is recorded, Then the application advances to Compliance and the Compliance officer is notified.
Given any stakeholder rejects the application, When the rejection is recorded, Then the workflow stops, the buyer is notified with the rejection reason, and the application status shows "Rejected at [stage]."
F07-003
Buyer approval status tracking
Buyer2 SP
As a data buyer, I want to see the real-time status of my approval (which gates have been passed, which are pending) so that I know where my application stands.
Acceptance Criteria
Given Legal and Compliance have approved but Data Governance is pending, When I log in, Then I see a progress bar showing 2/4 complete with "Awaiting: Data Governance" displayed.
F07-004
Secured data pipe delivery
Buyer5 SP
As a data buyer, I want query results delivered via encrypted SFTP or API endpoint so that data in transit is protected and I can integrate results directly into my analytics pipeline.
Acceptance Criteria
Given my query results are ready, When I choose "Deliver via SFTP," Then the data is encrypted with AES-256 and transferred to my registered SFTP endpoint, and a delivery receipt is logged.
Given I choose "Deliver via API," When I call the results endpoint with my API key, Then I receive the data over TLS 1.3 with a response header showing the dataset hash for integrity verification.
Epic: Patient portal with data value, consent, trials, and earnings
F07-005
Data value visualization by category
Patient3 SP
As a patient, I want to see the estimated value of each consented data category (with buyer count and projected earnings) so that I understand what my data is worth and can make informed consent decisions.
Acceptance Criteria
Given I have 5 categories consented, When I view the Data Value section, Then each category shows: estimated monthly value, number of active buyers, and a visual bar proportional to value.
Given I revoke a category, When the Data Value section refreshes, Then that category shows $0 and the total recalculates.
F07-006
Clinical trial match and accept/decline
Patient5 SP
As a patient, I want to see clinical trials I'm eligible for and accept or decline each one so that I can participate in research that interests me and earn compensation.
Acceptance Criteria
Given I have 3 matched trials, When I open the Clinical Trials tab, Then each trial shows: title, CRO, compensation, eligibility match score, and Accept/Decline buttons.
Given I click "Accept" on a trial, When the action is confirmed, Then my status changes to "Enrolled — Pending Screening" and the CRO is notified.
Given I click "Decline," When the action is confirmed, Then the trial is moved to a "Declined" section and I am not shown that trial again unless I reopen it.
F07-007
Patient login with MFA
Patient3 SP
As a patient, I want to log into my portal with email + MFA (SMS or authenticator app) so that my health data is protected by multi-factor authentication.
Acceptance Criteria
Given I enter a valid email, When I click "Continue," Then a 6-digit MFA code is sent to my phone and I must enter it within 5 minutes.
Given I enter an incorrect MFA code 3 times, When the third attempt fails, Then my account is temporarily locked for 15 minutes and I receive an email alert about the failed attempts.
Epic: Consent-gated clinician views with AI co-pilot
F07-008
Consent-gated patient record view
Clinician3 SP
As a clinician, I want patient records to only show data categories the patient has consented to share with me so that I respect their data sovereignty while still delivering care.
Acceptance Criteria
Given a patient has consented to share Labs and Diagnoses but not Medications, When I open their record, Then I see Labs and Diagnoses sections but the Medications section shows "Access restricted by patient consent."
Given a patient grants Medications consent, When I refresh the record, Then the Medications section becomes visible within 30 seconds.
F07-009
AI co-pilot clinical summary
Clinician5 SP
As a clinician, I want an AI-generated summary of the patient's recent clinical activity (consented data only) so that I can prepare for the visit in 30 seconds instead of reviewing pages of records.
Acceptance Criteria
Given a patient has 3 recent visits, When I click "AI Summary," Then a 3-5 sentence summary appears highlighting: key diagnoses, recent lab changes, medication adjustments, and any care gaps — using only consented data categories.
Given a patient has restricted Medications access, When the AI summary generates, Then it does not mention medications and includes a note "Partial view — some categories restricted by patient consent."
F07-010
Clinician HIPAA login with NPI verification
Clinician3 SP
As a clinician, I want to log in using my NPI number + MFA with optional SSO (SMART on FHIR, Epic) so that my identity is verified against the NPI registry before I access any patient data.
Acceptance Criteria
Given I enter my email, NPI, and MFA code, When I click "Sign In," Then the system validates my NPI against the NPPES registry and grants access only if the NPI is active and matches my email domain.
Given I enter an invalid or deactivated NPI, When I attempt login, Then access is denied with "NPI not found or inactive — please verify your credentials."
F07-011
Clinician appointment list with consent indicators
Clinician2 SP
As a clinician, I want my appointment list to show consent status icons next to each patient so that I know at a glance which patients have full, partial, or no data sharing before I open their record.
Acceptance Criteria
Given I have 8 appointments today, When I view the list, Then each patient shows a consent indicator: green (all categories shared), amber (partial), red (no consent / restricted).