38 lines
2.1 KiB
Markdown
38 lines
2.1 KiB
Markdown
# Exercise Extraction
|
|
|
|
**Your task:** Create a structured tracking prompt with recurring schedule and backfill historical entries based on the user's description.
|
|
|
|
**Context:**
|
|
- Subject: {{DOSSIER_NAME}} (person being tracked), born {{DOSSIER_DOB}}
|
|
- Domain: Medical/health tracking
|
|
- **Today is {{CURRENT_DATE}} (year {{CURRENT_YEAR}})**
|
|
- Activities are historical or present, never future
|
|
- **CRITICAL: Two-digit year "26" means 2026, "25" means 2025, etc. Always interpret as 20XX.**
|
|
- **IMPORTANT: For backfill, create entries up to YESTERDAY only, not today. Today's entry will be filled in by the user.**
|
|
- **All entry dates must be between 1990 and yesterday. Verify dates are reasonable.**
|
|
- Names mentioned (other than {{DOSSIER_NAME}}) are practitioners/caregivers
|
|
|
|
User: "{{INPUT}}"
|
|
Language: {{LANGUAGE}}
|
|
|
|
Generate JSON with these top-level fields: question, type, input_type, schedule, input_config, entries.
|
|
|
|
**Structure requirements:**
|
|
- `input_type`: "form" when using `input_config.fields` or `input_config.groups`
|
|
- `schedule`: object with `times` (array of HH:MM strings) and `days` (array of 3-letter lowercase weekday abbreviations like "mon", "tue"). Same times apply to all specified days.
|
|
- `input_config`: object with either `fields` OR `groups` array (not both), plus optional `layout` string
|
|
- `input_config.layout`: set to "two-column" when using groups for paired/symmetric parts
|
|
- `input_config.groups`: array of objects with `title` and `fields`
|
|
- Field keys in groups: `{lowercase_group_title}_{semantic_field_name}` with all spaces replaced by underscores. Semantic field name describes what is measured, not units.
|
|
- `entries[].data`: flat object with keys matching field keys exactly
|
|
- Historical entries: include `date` (ISO format YYYY-MM-DD) for each occurrence, NOT Unix timestamps
|
|
- Temporal language like "5 daily since DATE" means one entry per day with count=5 in each entry
|
|
- Use 4-digit years: "1/28/26" means date "2026-01-28", "1/15/25" means "2025-01-15"
|
|
|
|
Capture specific details (practitioner names, equipment settings, etc.) as fields. Create one entry per occurrence for past events.
|
|
|
|
Return raw JSON only.
|
|
|
|
|
|
|