Handoff §0: the transfer manifest, and what git will not carry
The first version answered "what is the state of the work" but not
"what actually has to move", which is the question a machine change
asks. Audited it instead of assuming.
Most of the risk turned out to be already retired: spikes/ is tracked
(106 files), the editor-t4 worktree is clean with zero uncommitted and
zero untracked, there are no stashes, and every commit on every local
branch is already on origin. There is no unpushed work on this machine.
What a clone still will not give you, now enumerated: the gitignored
root HANDOFF.md (18KB, not regenerable, deliberately kept out of git),
.claude/settings.local.json, and — outside the repository entirely —
the 21-file agent memory directory both threads have been accumulating
track notes in.
One real exposure found: the branch ref editor-t4-packet2b exists here
and not on origin, which has only refs/heads/main. Its commits are
reachable through the f33673d merge so nothing is lost, but the pointer
is local and should be pushed before this machine is wiped.
§4 is restructured into before-wiping, on-arrival, and then-work, since
two of those steps have to happen while this machine still exists.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QjsEnYhm1gPpf6ii2iFxFV
This commit is contained in:
parent
ada751cc9f
commit
7909cf09cc
|
|
@ -1,17 +1,70 @@
|
|||
# Handoff — 2026-08-07
|
||||
|
||||
Written at `be244df`, pushed to `origin/main`. Working tree clean.
|
||||
Written at `ada751c`, pushed to `origin/main`. Working tree clean, no stashes, no
|
||||
unpushed commits on any branch.
|
||||
|
||||
**Scope note, stated first because it bounds everything below.** This handoff is
|
||||
written from the **spec / Pass-13 / format-epoch** session. A second session has
|
||||
been committing to this repository in parallel, and its files were placed
|
||||
explicitly out of bounds for this one — `spec/PLAN_EDITOR_APP.md`,
|
||||
**Scope note, stated first because it bounds §2.** This handoff is written from
|
||||
the **spec / Pass-13 / format-epoch** session. A second session has been
|
||||
committing to this repository in parallel, and its files were placed explicitly
|
||||
out of bounds for this one — `spec/PLAN_EDITOR_APP.md`,
|
||||
`spec/CONTRACT_EDITOR_*.md`, `spec/ANALYSIS_*.md`, `spec/DRAFT_T4_FIXTURE_RECIPE.md`,
|
||||
the whole `spikes/` tree, `crates/epiphany-editor-gui/**`,
|
||||
`crates/epiphany-render-svg/**`, `crates/epiphany-glyphs/**`, and the root
|
||||
`Cargo.toml`. **§2 is therefore not an assessment of that work.** It is what is
|
||||
visible from outside the boundary, plus a precise list of what to ask that
|
||||
session for. Do not treat §2 as authoritative the way §1 is.
|
||||
`Cargo.toml`. **§2 is therefore not an assessment of that work**; it is the view
|
||||
from outside the boundary plus what to ask that session for. §0, §1, §3 and §4
|
||||
are verified.
|
||||
|
||||
---
|
||||
|
||||
## §0. Transfer manifest — what `git clone` does NOT carry
|
||||
|
||||
**The good news first, because it is most of the risk retired.** `spikes/` is
|
||||
**tracked** (106 files), so the T4 spike moves with the repository. The
|
||||
`editor-t4` worktree is **clean** — zero uncommitted, zero untracked, zero
|
||||
unpushed. No stashes anywhere. Every commit on every local branch is already on
|
||||
`origin`. **There is no unpushed work on this machine.**
|
||||
|
||||
What a fresh `git clone` will nevertheless *not* give you:
|
||||
|
||||
### 0.1 Gitignored files that exist locally
|
||||
|
||||
| File | Size | Status |
|
||||
|---|---|---|
|
||||
| `HANDOFF.md` (repo root) | 18 KB, last touched 2026-06-21 | **Not regenerable — carry it.** Deliberately gitignored as "a planning briefing, not committed" |
|
||||
| `ALL_DECISIONS_AND_READMES.md` | 99 KB | Regenerable — it is a concatenation of the tracked per-crate `DECISIONS.md` and `README.md` |
|
||||
| `out.svg` | 50 KB | Regenerable — `cargo run -p epiphany-render-svg --example render_fixture` |
|
||||
| `target/`, `spec/*.aux` etc. | — | Build artifacts; let them rebuild |
|
||||
|
||||
Note the root `HANDOFF.md` is a *different, older* document from this one
|
||||
(`spec/HANDOFF_2026-08-07.md`, which is tracked and will transfer normally).
|
||||
|
||||
### 0.2 Local git state that is not on the remote
|
||||
|
||||
- **The branch ref `editor-t4-packet2b` does not exist on `origin`.** `origin`
|
||||
has only `refs/heads/main`. Its *commits* are safe — they are reachable through
|
||||
the `f33673d` merge — but the branch pointer is local. **If that thread intends
|
||||
to keep working on that branch, push it before wiping this machine:**
|
||||
`git push -u origin editor-t4-packet2b`.
|
||||
- **The worktree is local by nature.** Recreate on the other machine with:
|
||||
`git worktree add .claude/worktrees/editor-t4 editor-t4-packet2b`.
|
||||
- `.claude/settings.local.json` is untracked — local permissions/settings.
|
||||
|
||||
### 0.3 Outside the repository entirely
|
||||
|
||||
- **Agent memory: `~/.claude/projects/-home-jeans-Repos-active-epiphany/memory/`**
|
||||
— 21 files, 228 KB, including the track notes both threads have accumulated
|
||||
(`format-epoch-track`, `editor-app-plan-track`, `editor-core-editing-track`,
|
||||
`genesis-ops-track`, `pass12-g-pass`, `schema-major-1-track`, and the
|
||||
method/lesson notes). This lives outside the repo and will **not** move with
|
||||
it. Copy the directory to the same path on the other machine.
|
||||
- **Session/conversation state for both threads cannot transfer at all.** That is
|
||||
the irreducible loss in a machine move, and it is the reason this document and
|
||||
the other thread's own handoff exist.
|
||||
|
||||
### 0.4 Environment (see §3 for detail)
|
||||
|
||||
Toolchains 1.95.0 + 1.85, a TeX Live with **`xelatex`** and `fontspec`, and the
|
||||
GUI apt packages. None of it is in the repo.
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -277,16 +330,38 @@ to mutate against.
|
|||
|
||||
---
|
||||
|
||||
## §4. Recommended first moves after the move
|
||||
## §4. Order of operations for the move
|
||||
|
||||
1. Reproduce the green baseline in §3.5.
|
||||
2. Get the other session's own handoff for §2. This one is deliberately not a
|
||||
substitute for it.
|
||||
3. **Dispatch P13-S27.** It is the only unblocked item on the critical path, its
|
||||
contract is complete, and it discharges the three inherited obligations plus
|
||||
ends the no-canonical-base interval that currently constrains every other
|
||||
piece of bundle work.
|
||||
4. Then **P13-S16**, which becomes dispatchable the moment S27 lands.
|
||||
5. Take a ruling on **S8** (reject one spelling vs. keep both canonical) whenever
|
||||
convenient — it needs a decision, not an implementation, and it blocks nothing
|
||||
in the meantime.
|
||||
### 4.1 Before wiping this machine
|
||||
|
||||
1. **`git push -u origin editor-t4-packet2b`** — the only ref that exists here
|
||||
and not on the remote (§0.2). Its commits are safe either way; the pointer is
|
||||
not.
|
||||
2. Copy off the four local-only items: root `HANDOFF.md`,
|
||||
`.claude/settings.local.json`, and the out-of-repo
|
||||
`~/.claude/projects/-home-jeans-Repos-active-epiphany/memory/` directory
|
||||
(§0.1, §0.3). `ALL_DECISIONS_AND_READMES.md` and `out.svg` regenerate.
|
||||
3. Confirm both sessions have written their handoffs — this one covers §1; the
|
||||
editor/T4 thread's own is still owed (§2).
|
||||
|
||||
### 4.2 On arrival
|
||||
|
||||
4. `git clone`, then restore the memory directory to the same path, then
|
||||
`git worktree add .claude/worktrees/editor-t4 editor-t4-packet2b` if that
|
||||
thread is resuming there.
|
||||
5. Install the environment in §3, including **`xelatex`** — `pdflatex` fails
|
||||
outright on `fontspec`.
|
||||
6. **Reproduce the green baseline in §3.5 before starting new work.** 1570
|
||||
passing. This thread's whole method depends on a known-green baseline to
|
||||
mutate against; if the number differs, reconcile that first.
|
||||
|
||||
### 4.3 Then, in priority order
|
||||
|
||||
7. **Dispatch P13-S27.** The only unblocked item on the critical path, its
|
||||
contract is complete, and landing it discharges the three inherited
|
||||
obligations *and* ends the no-canonical-base interval that currently
|
||||
constrains every other piece of bundle work (§1.2).
|
||||
8. Then **P13-S16**, dispatchable the moment S27 lands.
|
||||
9. Take a ruling on **S8** (reject one spelling vs. keep both canonical) whenever
|
||||
convenient — it needs a decision, not an implementation, and blocks nothing in
|
||||
the meantime.
|
||||
|
|
|
|||
Loading…
Reference in New Issue