inou/api/prompts/exercise.md

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.