diff --git a/.claude/visibility b/.claude/visibility new file mode 100644 index 0000000..a48cf0d --- /dev/null +++ b/.claude/visibility @@ -0,0 +1 @@ +public diff --git a/CLAUDE.md b/CLAUDE.md index 1eeb40b..8fddd39 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -186,93 +186,37 @@ ssh m1 'cd /Users/airvine/Projects/repo/fresh && Rscript -e " -# Cartography +# CI Monitoring -## Style Registry +When this repo has GitHub Actions workflows, scan recent runs on session start. Catches failed pkgdown deploys, broken vignette builds, and stale citation regenerations that would otherwise linger until the user manually checks. -Use the `gq` package for all shared layer symbology. Never hardcode hex color values when a registry style exists. +## On Session Start -```r -library(gq) -reg <- gq_reg_main() # load once per script — 51+ layers -``` - -**Core pattern:** `reg$layers$lake`, `reg$layers$road`, `reg$layers$bec_zone`, etc. - -### Translators - -| Target | Simple layer | Classified layer | -|--------|-------------|-----------------| -| tmap | `gq_tmap_style(layer)` → `do.call(tm_polygons, ...)` | `gq_tmap_classes(layer)` → field, values, labels | -| mapgl | `gq_mapgl_style(layer)` → paint properties | `gq_mapgl_classes(layer)` → match expression | - -### Custom styles - -For project-specific layers not in the main registry, use a hand-curated CSV and merge: - -```r -reg <- gq_reg_merge(gq_reg_main(), gq_reg_read_csv("path/to/custom.csv")) +```bash +gh run list --limit 5 --json status,conclusion,name,createdAt,databaseId \ + --jq '.[] | select(.conclusion == "failure")' ``` -Install: `pak::pak("NewGraphEnvironment/gq")` - -## Map Targets - -| Output | Tool | When | -|--------|------|------| -| PDF / print figures | `tmap` v4 | Bookdown PDF, static reports | -| Interactive HTML | `mapgl` (MapLibre GL) | Bookdown gitbook, memos, web pages | -| QGIS project | Native QML | Field work, Mergin Maps | +If any failures since the last visit, surface to the user before starting other work: -## Key Rules +> Workflow `` failed `