v2.6.2: any repo, safely - #10
Merged
Merged
Conversation
Per-repo state (FACTORY_HOME/<owner>/<repo>/, with a doctor warning on a leftover pre-v2.6.2 shared factory.db/workspaces), a resettable opt-in so reset/rebaseline refuse on a live repo, the base branch defaulting to origin/HEAD instead of a hard-coded main, a setup hook that runs once per worktree before any stage, issue forms plus a PR template that install ships (and install.sh now points at `doctor --fix`, which is what actually creates the labels those forms apply), a CI toolchain placeholder step, and a bun.lock guard so `factory scan` skips cleanly on a non-Bun repo. No new features. This is what a second repo (splitbill-demo plus lwp-website) needed before v2.7 adds routing. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Any repo, safely. No new features: this closes the gaps a second repo (splitbill-demo plus lwp-website) hit under one shared
FACTORY_HOME, per the roadmap's v2.6.2 section.factory.dbandworkspaces/issue-Nlive underFACTORY_HOME/<owner>/<repo>/, not one sharedFACTORY_HOME.factory doctorwarns (never auto-fixes) when the pre-v2.6.2 sharedfactory.db/workspaces/is still on disk.resettable: trueopt-in forreset/rebaseline, so a live repo can't have its issues and branches wiped by a sandbox-only config.origin/HEAD, not a hard-coded"main". Skill text now says "the base branch".setuphook (.factory/config.json'ssetup: string[]) runs once per worktree before any stage; a failure parks the issue with the log attached.template/.github/, whichinstallships.install.sh's next-step message now saysfactory doctor --fix, which is what actually creates the labels those forms apply.bun.lockguard sofactory scanskips cleanly on a non-Bun repo, andteach/sessions.jsonrenumbered to this roadmap.Full detail in
CHANGELOG.md, including what's explicitly not in this release (routing, concurrency, the pilot; those are v2.7+).Plan
Roadmap:
v2.6.2: any repo, safelysection of the current plan. Every item (1-6) is done; see CHANGELOG for the per-item accounting, including the "carried over" items from v2.6.1's deferral list.Gate evidence
bunx tsc --noEmit: no errorsbun test: 684 pass, 0 fail, 2216 expect() calls, across 68 filesskills-ref validate: all 7 shipped skills validVerify verdict
Self-verified (no separate verify-agent run for this internal release): every new structural test (per-repo path isolation,
resettablerefusal, base-branch defaulting, thebug.yml/feature.yml/docs.yml/PR-template shipping test, theinstall.sh --fixmessage test, the bun.lock skip, the legacy-state doctor warning) was proven with a revert-and-fail cycle — temporarily broke the corresponding fix, confirmed the test failed with a real diff, then restored it and confirmed green again.No live agent run for this release: no stage's behavior changed here (only config surface, file layout and wording), so the v2.6.1 live Claude run stands as current evidence.
Risk and rollback
Low risk, no new features. The riskiest change is
resettabledefaulting to requiring explicit opt-in forreset/rebaseline— a repo that relied on the old always-allowed reset (only ever splitbill's sandbox configs) needs"resettable": trueadded to.factory/config.json. Rollback: revert this PR: it is additive/gating, not a data migration, so nothing needs cleanup.🤖 Generated with Claude Code