alunduil / alunduil/blog.alunduil.com

When delete-and-restart beats carrying-and-bending

Open
#97 0 comments 0 reactions 0 assignees View on GitHub
idea
Dominant language
Astro
Stars
1
Forks
1
Avg merge
6h 34m
Merged PRs (30d)
118

Description

## Spark

woodland-generators spent the first half of the 2026-05-04→2026-05-09 window finishing a year-in-the-making PDF parser refit (released as 0.3.0). Then [#210 "Pivot to FoundryVTT plugin: monorepo, retire PDF playbook source"](https://github.com/alunduil/woodland-generators/issues/210) was opened *and closed* in the same window: PDF source layer retired ([#267](https://github.com/alunduil/woodland-generators/pull/267)), character generation removed ([#290](https://github.com/alunduil/woodland-generators/pull/290)), repo split into `@woodland-generators/core` + `@woodland-generators/cli` ([#271](https://github.com/alunduil/woodland-generators/pull/271), [#278](https://github.com/alunduil/woodland-generators/pull/278)), 30+ Foundry-direction issues filed.

A year of PDF parser work into the fire, end-to-end in five days.

## Why it could be interesting

The activity is "I rewrote a hobby tool." The underlying claim worth a post: **the cost of carrying built-but-misaligned code is usually undercounted.** The PDF parser bent the architecture (it's why `core` and `cli` weren't split until now), advertised the wrong product to anyone landing on the repo (PDF tooling, not tabletop tooling), and gated the first useful integration (Foundry) behind a layer nothing else needed. Deleting was both the technically and strategically simpler move once Foundry became the destination.

The interesting question for the post isn't "should you ever sunk-cost-fallacy your way out of code" — it's: **what early signals tell you a code path is anchoring you to the wrong product, *before* you've spent another year on it?**

## Open questions

- [ ] What were the concrete signals that the PDF parser was the wrong abstraction (vs. just "I want to try Foundry")?
- [ ] Of the 0.3.0 refit work, how much transferred and how much was retroactively waste?
- [ ] How does "delete and restart" interact with semver and existing users? (woodland-generators had no users — different calculus from a published library.)
- [ ] Is this the same shape as Hakyll → AstroPaper for this blog, or a different one?

## Source material

- [woodland#210](https://github.com/alunduil/woodland-generators/issues/210) — Pivot tracking issue (opened+closed)
- [woodland#267](https://github.com/alunduil/woodland-generators/pull/267) — feat!: retire PDF playbook source layer
- [woodland#290](https://github.com/alunduil/woodland-generators/pull/290) — feat!: remove character generation and source packages
- [woodland#205](https://github.com/alunduil/woodland-generators/pull/205) — release 0.3.0 (the last version of the old shape)
- [woodland#264](https://github.com/alunduil/woodland-generators/pull/264) — Convert repo to pnpm workspaces
- [woodland#271](https://github.com/alunduil/woodland-generators/pull/271), [#278](https://github.com/alunduil/woodland-generators/pull/278) — Extract core, cli
- [woodland#286](https://github.com/alunduil/woodland-generators/pull/286), [#287](https://github.com/alunduil/woodland-generators/pull/287) — cli 1.0.0, core 1.0.0
- [Foundry-direction roadmap issues](https://github.com/alunduil/woodland-generators/issues?q=is%3Aissue+created%3A2026-05-04..2026-05-09) — 30+ filed

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.