Skip to content

KrinosAI — Use Case Specification

Template ID: TPL-02-02 | Stage: 02-Requirements | Version: 0.3
Record: KAI-VORAL-UCS-001 — retrospective draft for Visionary Oral. Not approved.

Purpose: Specify one interaction between an actor and the system in enough detail to derive requirements and tests.

Required inputs: PRD journeys and capabilities; personas.

Document control

Field Required entry
Document ID KAI-VORAL-UCS-001
Template used TPL-02-02 Use Case Specification v0.3
Product / project / software version or commit SHA VORAL (Visionary Oral) / PRJ-001 / a6b4429e3165 (branch app_dev of AI-Dental-Project/Visionary_Oral)
Record status and version Draft v0.1
Author / technical reviewer / quality reviewer Claude Code (drafted with Claude Code for KrinosAI) / Tech Lead (name to be assigned) / Security & Privacy Officer (name to be assigned)
Created / updated / approved dates 2026-10-27 / 2026-10-27 / Pending
Applicable SOP and revision SOP-LC-02 v0.3
Related issue, commit, requirement and evidence links KAI-VORAL-BRF-001, KAI-VORAL-IRS-001, KAI-VORAL-CHR-001, KAI-VORAL-DEC-001; KAI-VORAL-SRS-001
Approver and decision record Pending

Applicability and evidence baseline

Product / system boundary: Web app and API (dentalapp/), doctor/admin mobile app (mobile/), PDF Lambda (dentalapp/pdf-lambda/) at a6b4429e3165, and the external services they call (see KAI-VORAL-IRS-001). Related approved requirements, risks and change records: None approved. Related drafts are listed in document control. Retrospective record? Yes — follows the Retrospective Documentation Protocol (KrinosAI lifecycle pack, 05-References/). Items are labelled Observed (code or Git at a6b4429), Measured (dated run), Stated (named person, dated) or Not recorded. Use case UC-01 "Take a scan and give the patient a report" describes the mobile flow as implemented. Acceptable evidence: an implementation reference (file:line at a commit SHA), a dated test record, a signed decision, a vendor agreement, or another independently verifiable artifact. Never invent approvals, clinical results, measurements or performance data.

1. Actors permissions and goals

Actor Role / permission Goal
Doctor (PER-01, PER-02) Authenticated, active doctor; owns the patient Capture a scan and produce a report
System Backend + on-device models Store photos, analyse, render report
ML service / AI vendors External Server-side detections and text

2. Trigger and preconditions

Use case Trigger Preconditions
UC-01 Doctor taps "New scan" on a patient Doctor signed in, account active and not suspended (REQ-003); patient exists (REQ-010); camera permission

3. Normal interaction steps

Step Actor / system Action Observable result
1 Doctor Reads instructions for the front view, opens the camera Guide frame shown
2 Doctor Captures the photo Quality check result shown (REQ-013)
3 Doctor Accepts; repeats for upper and lower jaw Each photo saved to the phone (REQ-014)
4 System Runs detectors on the phone; uploads photos in the background Progress shown (REQ-017, REQ-018, REQ-015)
5 System Sends findings to the backend Findings stored on the scan (REQ-019)
6 System Shows the report Same report every time it is opened (REQ-022)

4. Alternate and exception flows

Flow From step Condition System behavior
A1 Retake 2 Photo fails quality minimums Asks for a retake (REQ-013)
A2 Offline 4 No backend reachable Photos stay queued; report drawn from the phone (REQ-011, REQ-027)
E1 Detector timeout 4 A detector step exceeds 120 s Photo marked failed; report says it could not be analysed (REQ-018)
E2 Suspended mid-flow Any Account suspended Account-suspended screen (REQ-003, REQ-004)

5. Outputs and records modified

Output Stored in
Scan photos Phone storage, then Cloudflare R2
Scan document with findings MongoDB scans
Report PDF Phone (mobile) / S3 via Lambda (web)

6. Privacy safety and abuse cases

Case Mitigation REQ
Report attached to the wrong patient Scan session bound to patient ID at capture REQ-010
Photos left on a lost phone Proposed (Claude Code, for confirmation): phone caches expire after 30 days and are wiped on suspension; app data protected by the OS secure storage (retention / device protection) REQ-035
Anonymous access to photos Owner/token checks REQ-036

7. Acceptance evidence

Flow AC / TC
Normal flow AC-01, AC-02, AC-03 (KAI-VORAL-ACR-001); test cases in stage 07 — OPEN-032
A2 Offline AC-04
E2 Suspended AC-05

Open issues and decisions

ID Specific gap or decision Responsible owner Due date Blocks gate? Evidence required Status
OPEN-001 Tracker project ID, named requester and sponsor, and named reviewers are not recorded Product Owner 2026-11-10 (proposed) Yes Tracker entry; names with roles Open
OPEN-029 No retention or deletion periods for patient data, photos, reports, backups or phone caches Security & Privacy Officer 2026-11-30 (proposed) Yes Retention schedule in the DPIA Open
OPEN-032 Design (DES) and test (TC) links for requirements are added by stages 03 and 07; requirements without them stay open Tech Lead 2026-12-15 (proposed) No RTM with DES and TC links Open

Review and approval

Review role Named individual Decision Date Signed / controlled record
Author Claude Code (drafted with Claude Code) Draft 2026-10-27 This file at the commit that adds it
Technical reviewer Tech Lead (name to be assigned) Pending Pending Pending
Quality / regulatory reviewer (if applicable) Qualified regulatory reviewer (name to be assigned) Pending Pending Pending
Authorized approver Product Owner (name to be assigned) Pending Pending Pending