Donkey on the Edge — Refactor Log (May 2026)
Running, human-readable record of actions taken. Newest at the bottom of each
phase. See refactor-plan-May2026.md for the plan. Commits are made by the user
via GitHub Desktop; entries here describe the action, not the commit.
Phase 0 — Zero-risk hygiene
2026-05-16 — Deleted local _site/ build output.
rm -rf _site— recovered 814M of local disk.- Not tracked in git (gitignored), regenerated by
jekyll build. Zero content or history impact.
2026-05-16 — Rewrote .gitignore.
- Replaced 54 lines (with dozens of auto-appended duplicate
.DS_Storeentries) with a clean set. - Added
**/.DS_Storeso stray.DS_Storefiles are ignored everywhere and the duplication cannot recur. Added Bundler/editor cruft patterns.
2026-05-16 — Untracked committed .DS_Store files.
git rm --cachedon the 6 tracked.DS_Storefiles (_includes,_layouts,_pages,_pages-draft,_posts-draft,_posts-unpublish).- Files left on disk (verified) — staged as deletions only. No content lost.
2026-05-16 — Created planning/logging docs.
- Added
refactor-plan-May2026.mdandrefactor-log-May2026.md.
Status: Phase 0 actions complete. Staged for user to review/commit in GitHub
Desktop. claude.md left untracked pending user decision.
Phase 1 — Baseline harness
2026-05-16 — Toolchain verified.
- Ruby 3.2.2, Bundler 2.5.6, Jekyll 3.9.5 via
github-pages231.bundle checkclean. Matches GitHub Pages classic build.
2026-05-16 — Baseline build succeeded.
bundle exec jekyll build— 0 errors, ~14s. 1,857index.html, 3,910 total files. Log:.refactor-baseline/build.log.
2026-05-16 — Image-reference audit (.refactor-baseline/audit.py).
- 1,884 pages, 13,707
<img>refs. 13,433 (98%) resolve OK. - 159 broken local images across 81 pages; 115 external (out of scope).
- Broken by class:
assets_c114,root-rel26,abs-own15,page-rel4. - Correction to earlier estimate: absolute-own URLs are 228 OK / 15 broken — the absolute→root-relative rewrite is hygiene, not breakage repair.
- Outputs:
.refactor-baseline/pages.txt,images-audit.tsv,images-broken.tsv.
2026-05-16 — assets_c recoverability probe.
- Indexed 1,921 repo image files. Of 114 broken
assets_c: 97 originals found in repo by stripping MT thumb suffix; 17 no obvious match (some double-thumbnailed — refinable). Phase 4 confirmed feasible.
Status: Phase 1 complete. .refactor-baseline/ artefacts are working files;
recommend gitignoring rather than committing (decision pending).
Phase 4 — Link repair: assets_c (MT thumbnails)
(Run ahead of Phase 2/3: reversible content edits, user commits via GH Desktop. Backup still required before destructive phases.)
2026-05-16 — Built old→new mapping (.refactor-baseline/assets_c_map.py).
- 67 unique broken
assets_cURLs; all confirmed present literally in_posts. Heuristic: strip-thumb-WxH(-id)groups, leadingYYYYMT date-folder prefix, trailing numeric IDs; match basename against repo image index. 65 matched exactly, 2 ambiguous. Map:assets_c-map.tsv.
2026-05-16 — Applied 65 replacements (assets_c_apply.py).
- Literal full-URL swap to root-relative
/images/...(spaces%20-encoded) across 52 post files, 65 occurrences. - Rebuild clean (0 errors). Re-audit: broken images 159 → 48;
assets_cbroken 114 → 3; pages w/ broken img 81 → 30. - Uncommitted; staged for user review in GitHub Desktop.
2026-05-16 — Adjudicated the 2 remaining ambiguous URLs.
CU-1_hal_floor_zooom-...→/images/clem_hal_floor_zooom.jpg(post front matter self-declares this image — near-certain).2010 hockney_CU-1-...→/images/hockney_clementine.jpg(post text “CU-1, my daughter”=Clementine;hockney_clf.jpgbyte-identical — strong).- Pending user confirmation before applying.
Phase 2 — Backup safety net
(not started)