Skip to content

2026-09-17 Split Factory into stacked PRs

Framework PR 404 now contains only the package; histo app is stacked draft PR 406.

Work Done

At the user’s request, split the published combined Factory PR into:

  • mono #404: framework package and its root inventory entry only. Branch feat/factory-framework-histo, commit fefad76f, base main. Worktree ~/work/worktrees/mono/factory-framework.
  • mono #406: draft histo consumer app and its root inventory entry only. Branch feat/factory-histo, commit ff48f394, base feat/factory-framework-histo. Original worktree ~/work/worktrees/mono/factory-framework-histo now checks out this app branch.

Reordered framework before app; force-pushed #404 with an explicit old-OID lease. The final stacked committed tree is byte-for-byte identical to original combined commit 5e2c876f (tree 43accf33b65abddbd67c5a51dbccfa6a77b42bdf). Verified GitHub file lists and draft/base metadata. No behavior changed or tests reintroduced. Both PR descriptions explain the stack and validation boundaries.

Pitfalls

An uncommitted framework pyproject.toml edit was present in the original worktree. It was preserved byte-for-byte and left uncommitted; it is not in either PR. Cherry-picking the app after moving the root framework inventory row caused a cleanly merged duplicate row. Exact tree comparison caught it; the duplicate was removed before pushing. Main advanced meanwhile, so use merge-base/three-dot comparisons when inspecting PR scope, not a two-dot comparison with latest main.

Improvements

Review/merge #404 first, then rebase and retarget draft #406 onto main. Keep current worktree/branch mapping explicit: framework edits belong on the base, app edits on the draft. Do not accidentally include the preserved local manifest edit when committing unrelated app work.

Navigation

Type to search…

↑↓ navigate↵ selectEsc close