talents/daily_schedule: migrate to external daily_schedule.schema.json
Third structured-outputs L3 migration after talents/sense (8c952dc4)
and talents/story (50693752). Introduces talent/daily_schedule.schema.json —
Draft 2020-12, provider-intersection subset (type, pattern, required,
additionalProperties, properties) — two HH:MM-pattern string fields
{primary, fallback}.
talent/daily_schedule.py is unchanged — post_process's strptime("%H:%M")
remains the authoritative gate; schema enforcement is advisory via the
existing dispatcher plumbing (think/talent.py and think/talents.py) and
surfaces on the finish event's schema_validation.
Live validation deferred — GOOGLE_API_KEY not available in this worktree
environment. Following the sense+story precedent, dispatcher pass-through
coverage remains provided by tests/test_generate_full.py
(test_dispatcher_passes_json_schema and
test_finish_event_includes_schema_validation), and new unit tests assert
schema validity and pattern behavior end-to-end.
Tests:
- test_daily_schedule_schema_file_is_valid_draft_2020_12
- test_daily_schedule_loaded_json_schema_matches_on_disk_schema
- test_daily_schedule_pattern_accepts_and_rejects_expected_values
Stats API baseline refresh: one new `schema` field in the daily_schedule
generator block in tests/baselines/api/stats/stats.json.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>