2.9 KiB
CCS case authoring
CCS content is imported through POST /api/ccs/admin/import by a SUPER user. The import payload contains reusable order-catalog entries and one or more versioned cases. Published cases require complete embedded references and pass the same validation in dry-run and live imports.
Use content/ccs/dka-emergency-001.json as the canonical example. Set validateOnly to true first, then submit the same payload with false. Updating an existing externalId creates a new immutable revision; active and completed attempts remain attached to the revision they started with.
Case structure
initialChartdefines the opening history, appearance, vitals, simulated start, and standing orders. Use orderedhistorySections(code,title,text) for the HPI, medical history, medications, allergies, family/social history, and review of systems. The legacyhistoryfield remains the fallback.allowedLocationscontrols patient movement.examsdefines selectable examination components and their simulated duration.- Catalog orders may define
displayRoute,displayFrequency, andresultSection. These are presentation defaults, not user-entered dosing instructions. orderResponsesmaps reusable catalog codes to case-specific results, delays, vital-sign changes, and an optional result-section override.eventsdefines timed progression.requiresOrderCodesrequires every listed order;requiresAnyOrderCodessupports equivalent alternatives.scoringCriteriaawards or subtracts points for timing, sequence, and harmful care.targetCodessupports clinically equivalent actions;afterTargetCodeenforces sequence.referencesstores the source title, publisher, HTTPS URL, supported claims, access date, and reviewer inside each case revision.
Order codes and event/criterion IDs must be stable lowercase identifiers. Case content should not expose the diagnosis in the opening chart or rely on unstructured text matching for scoring. Add aliases to the order catalog so users can find an order using common clinical wording.
Valid result sections are lab, imaging, other_test, and treatment; progress notes, vital snapshots, and the order sheet are generated by the runtime.
Timing, scoring, and prediction
New CCS attempts are timed. realTimeMinutes is the total wall-clock allowance: the runtime reserves its final two minutes for final orders, so a 20-minute case has 18 minutes of active management plus two minutes of case-end orders. Opening dialogs count against this limit and reconnecting does not pause it.
Only the first completed timed attempt for each distinct case contributes to the CCS estimate. Legacy practice attempts remain reviewable but cannot be newly created. The combined provisional prediction uses the latest Day 1 simulation and a separately reported CCS estimate; it is not presented as an official USMLE scoring formula.