Skip to content

docs(T4.2): v4.0.0 train rollback runbook - #293

Merged
Data-Wise merged 1 commit into
devfrom
feature/v4-rollback-runbook
Jul 16, 2026
Merged

docs(T4.2): v4.0.0 train rollback runbook#293
Data-Wise merged 1 commit into
devfrom
feature/v4-rollback-runbook

Conversation

@Data-Wise

Copy link
Copy Markdown
Owner

Summary

Rollback runbook for the v4.0.0 train (ORCHESTRATE-folio-split.md Phase 4, T4.2 —
docs/specs/SPEC-v4-rollback-runbook-2026-07-16.md). Written BEFORE any v4.0.0/folio-v1.0.0 tag
exists, per the plan's own scheduling — T4.2 has no dependency on T4.0/T4.1/T4.1b/T4.1c and
gates T4.3 (folio can't release until this exists).

  • Path A (craft rollback): revert map for main, Homebrew re-point (craft.rb url+sha256),
    GitHub release annotated (not deleted — a prior good version exists to point users to).
  • Path B (folio rollback): this is folio's FIRST release, so rollback means deleting the
    release/tag and removing the formula entirely — there's no prior version to fall back to or
    downgrade toward. Confirmed via homebrew-release.yml that the tap-repo push is direct
    (GitHub App token, no PR step) — the runbook's commands reflect that specifically for the tap
    repo, while craft's/folio's own main reverts go through a PR per their branch protection.
  • Sequencing invariant stated explicitly: craft must not tag v4.0.0 before folio's release is
    confirmed fully live.
  • Path C (partial rollback — deliberately unresolved): folio ships, craft's release then
    stalls. Per the open judgment call flagged during Phase 4 planning, this is presented as a
    question with arguments both ways, not answered — the runbook's job is to make sure whoever
    hits this scenario sees the question, not to guess for them.

Test plan

Docs-only PR, no code/test changes. Verification is a read-through, per the SPEC's own Test
Plan section — no pytest/CI tier applies to a runbook. Pre-commit hooks (markdownlint,
mermaid-validate, etc.) passed clean on commit.

🤖 Generated with Claude Code

Written BEFORE any v4.0.0/folio-v1.0.0 tag exists, per the plan's own
scheduling (T4.2 has no dependency on T4.0/T4.1/T4.1b/T4.1c and gates
T4.3). Covers:

- Path A: craft revert map (dev->main merge-commit revert, Homebrew
  re-point via craft.rb url+sha256, GitHub release annotated not
  deleted since a prior good version exists to point users to).
- Path B: folio revert map (release+tag deletion appropriate here
  specifically because this is folio's FIRST release - no prior version
  exists, so nothing to annotate a "superseded" note toward; formula
  removed entirely, not downgraded, since it's created fresh in T4.3).
- Explicit sequencing invariant: craft must not tag v4.0.0 before
  folio's release is confirmed fully live.
- Path C: the partial-rollback question (folio ships, craft stalls) is
  deliberately left unresolved - stated as a question with arguments on
  both sides, not answered. This was flagged during Phase 4 planning as
  needing a human decision; the runbook's job is to make sure whoever
  hits this scenario sees the question, not to guess an answer for them.

Homebrew automation detail confirmed by reading
homebrew-release.yml: it pushes directly to homebrew-tap's main via a
GitHub App token, no PR step - the runbook's revert commands reflect
that (direct commit+push, not a PR-and-merge cycle, for the tap repo
specifically; craft's and folio's own main branches DO go through a
revert PR, per their branch protection).
@Data-Wise
Data-Wise merged commit 06a7b91 into dev Jul 16, 2026
6 checks passed
Data-Wise added a commit that referenced this pull request Jul 16, 2026
T4.0-T4.2 complete (folio sync, /folio:do router+tests+docs, rollback
runbook PR #293). T4.3 complete: folio v1.0.0 released, homebrew-tap
manifest entry (PR #141) + test_paths audit fix (PR #142), brew
install/audit verified clean. Adds the two /goal-ready SPEC files
authored during Phase 4 planning.
Data-Wise added a commit that referenced this pull request Jul 16, 2026
Version bump from 2.61.2 to 4.0.0 via bump-version.sh (47 commands, 2
agents, 40 skills, 64 specs). Converts CHANGELOG.md/docs/CHANGELOG.md
Unreleased section to 4.0.0, expanding docs/CHANGELOG.md with the full
PR list since 2.61.1 (#279 through #293).

Closes gaps surfaced by pre-release-check.sh's doc-coverage and
docs-staleness gates:
- Missing REFCARD rows (code:demo, git:issue-check) and mkdocs.yml nav
  entries (code:demo, site:deploy); new docs/commands/code/demo.md and
  docs/commands/site/deploy.md written (no prior site page existed for
  either command).
- audit-router skill (T3.6) was never added to docs/skills-agents.md.
- v4 rollback runbook added to mkdocs.yml nav.

pre-release-check.sh 4.0.0: PASSED (remaining items are cross-repo or
pre-existing advisories: homebrew-tap's craft.rb desc count, a
pre-existing internal-doc nav gap, and .STATUS drift notes).

Full pytest suite: 2637 passed, 0 failed. CI bash suites all green
(branch_guard_e2e's sole failure is the documented runner-sensitive
perf test, confirmed via SKIP_PERF).
@Data-Wise
Data-Wise deleted the feature/v4-rollback-runbook branch July 19, 2026 21:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant