647f76333d
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Vgmzx8VTTTmCskSpQtsLTr
103 lines
3.7 KiB
Markdown
103 lines
3.7 KiB
Markdown
# Entry Enrichment — Design Spec
|
|
|
|
**Date:** 2026-06-21
|
|
**Status:** Approved
|
|
|
|
## Overview
|
|
|
|
Enrich all real trip journal entries with `location_city`, `location_country`, `lat`, `lng`, `weather_temp_c`, and `weather_desc` using an in-chat review workflow. One Markdown review doc per trip; Claude infers values, user corrects, Claude applies to YAML.
|
|
|
|
---
|
|
|
|
## Scope
|
|
|
|
### What this covers
|
|
|
|
- Filling in `location_city` and `location_country` where blank
|
|
- Geocoding to `lat`/`lng` for all entries with a city
|
|
- Approximate seasonal `weather_temp_c` and `weather_desc` for each entry date + location
|
|
- Three real trips: `central-asia-2023`, `us-canada-mex-2024`, `italy-2025`
|
|
|
|
### What this does not cover
|
|
|
|
- Adding new journal entries (content creation)
|
|
- Adding GPX tracks to central-asia or us-canada-mex
|
|
- Historical weather API lookups (values are seasonal approximations, not exact)
|
|
|
|
---
|
|
|
|
## Review Document Format
|
|
|
|
One file per trip at `docs/enrichment/{trip-slug}.md`.
|
|
|
|
### Table columns
|
|
|
|
| Column | Source | Notes |
|
|
|---|---|---|
|
|
| Entry | folder name | e.g. `2023-09-05-pixelfed-8.entry` |
|
|
| Date | `date` frontmatter | `YYYY-MM-DD` |
|
|
| Title | `title` frontmatter | Read-only reference |
|
|
| City | inferred from title+body | Edit to correct |
|
|
| Country | inferred from title+body | Edit to correct |
|
|
| Lat | extracted from Map Link | Do not edit directly; update Map Link instead |
|
|
| Lng | extracted from Map Link | Do not edit directly; update Map Link instead |
|
|
| Map Link | OSM link `https://www.openstreetmap.org/#map=15/{lat}/{lng}` | Replace with corrected OSM or Google Maps link |
|
|
| Temp °C | seasonal approximation | Edit directly if wrong |
|
|
| Weather | seasonal approximation | Edit directly if wrong (e.g. `sunny`, `cloudy`, `rainy`) |
|
|
|
|
### Coordinate extraction rules
|
|
|
|
When reading back a reviewed doc, extract lat/lng from Map Link using these URL patterns:
|
|
|
|
- **OSM:** `openstreetmap.org/#map={zoom}/{lat}/{lng}` → use the two numbers after `#map=N/`
|
|
- **Google Maps:** `maps.google.com/.../@{lat},{lng},{zoom}z` or `maps.app.goo.gl/...` (follow redirect, then parse)
|
|
|
|
If a cell has no Map Link (blank city), lat/lng are left empty.
|
|
|
|
---
|
|
|
|
## Inference Rules
|
|
|
|
1. Read `title` first — most locations are explicit ("Poutine and French Echoes in Old Montreal").
|
|
2. Fall back to body text if title is ambiguous.
|
|
3. If neither title nor body reveals a location, leave City/Country blank and note it for manual fill.
|
|
4. City = the specific city or town; Country = the country.
|
|
|
|
---
|
|
|
|
## Weather Approximation
|
|
|
|
Fill `weather_temp_c` with a single integer (the approximate daytime high in °C for that city + month). Fill `weather_desc` with one word: `sunny`, `cloudy`, `partly cloudy`, `rainy`, `cold`, or `hot`. Based on known climate patterns — not historical API data.
|
|
|
|
---
|
|
|
|
## Application Step
|
|
|
|
After user approves a reviewed doc, Claude:
|
|
|
|
1. Re-reads the table row by row
|
|
2. Extracts coordinates from Map Link (or leaves blank if no link)
|
|
3. Updates the corresponding `entry.md` frontmatter fields in-place
|
|
4. Reports a summary of changes made
|
|
|
|
No scripts are written — changes are applied directly via Edit tool.
|
|
|
|
---
|
|
|
|
## Order of Execution
|
|
|
|
1. `central-asia-2023` — 22 entries (generate doc → review → apply)
|
|
2. `us-canada-mex-2024` — 12 entries (generate doc → review → apply)
|
|
3. `italy-2025` — 2 entries (generate doc → review → apply)
|
|
|
|
---
|
|
|
|
## File Map
|
|
|
|
| File | Change |
|
|
|---|---|
|
|
| `docs/enrichment/central-asia-2023.md` | New — review table, 22 rows |
|
|
| `docs/enrichment/us-canada-mex-2024.md` | New — review table, 12 rows |
|
|
| `docs/enrichment/italy-2025.md` | New — review table, 2 rows |
|
|
| `user/pages/01.trips/*/01.dailies/*/entry.md` | Update 6 frontmatter fields per entry |
|