Email me
Progress update, 26 Aug 2026
← Automating Garage Dreams

· Update · AI summary

Progress update, 26 Aug 2026

A short bullet-point summary of project progress up to 26 Aug 2026.

Updates are bullet-point summaries generated with AI from my commits and build notes, then checked by me. Project articles and learning notes are written by me.

  • A pre-implementation review of the workspace plan found a destructible window nobody had noticed. The plan told the operator to stop with a cover applied but uncommitted, and the article pipeline’s startup reconciliation deletes untracked files from the cover directory before it checks for a dirty tree, so a nightly run in that window would delete the new WebP, abort on the modified article, and leave frontmatter pointing at a file that no longer exists. The ignored workspace is safe from this precisely because it is ignored; the applied cover is not.
  • A proposed test would have exempted “explicitly labelled POSIX examples” by trusting the fence language, and the project’s own how-to-run block was fenced as bash while containing seven command forms that silently drop safety flags on Windows. The test would have exempted the exact block an operator copies, and reported green. It now requires an explicit label rather than a fence name.
  • The argument-forwarding fix was asserted but never proven with a path containing a space, and this repository lives under a directory with a space in its name, so every manifest path has one. Proven properly before the plan was implemented.
  • Planned a Claude-calls-Codex image integration and then deferred it, because planning it surfaced two corrections to its own premise: the cover it was meant to generate already existed and was sitting on disk, and the thing actually blocking progress was the argument-forwarding bug, not image generation. Its first step is now a cheap probe that may invalidate the whole plan.
  • Adopted a standing rule after nearly losing a plan: plans live in the project’s plans/ folder, never in the editor’s scratch directory. A scratch plan gets a generated name, sits outside the repository, is unversioned and is invisible to every other session.