Record one-command GPU invocation landing

Advance the durable snapshot to merge 63fbc66, record the green CI rerun, and
remove the completed GPU invocation lane from the volatile active-work ledger.
This commit is contained in:
Levi Neuwirth 2026-07-23 13:33:09 -04:00
parent 63fbc66943
commit d9669746c1
2 changed files with 25 additions and 68 deletions

View File

@ -14,8 +14,8 @@ backlog.
machine-local: `origin` may name this canonical URL, a release mirror,
or something else, and therefore has no authority by name alone.
- Canonical base at this snapshot:
`githubsucks/main` @ `96d0bae` (documentation refresh #140 atop Vterm
Stage 3 #135 and tab-width parity #137; protocol v19).
`githubsucks/main` @ `63fbc66` (one-command GPU invocation #141 atop
documentation refresh #140; protocol v19).
- On the transfer source, `origin/main` named a release mirror at
`d3fa632` and lagged badly. On the current destination, `origin` names
the canonical URL. This difference is why all recovery begins by
@ -49,53 +49,9 @@ git worktree list
git status --short --branch
```
The first command must expose `96d0bae` or a newer intentional main.
The first command must expose `63fbc66` or a newer intentional main.
If it does not, stop and repair the remote/fetch configuration.
## Active lane: one-command GPU invocation
- Portable branch: `githubsucks/gpu-invocation`
- Pull request: **#141 OPEN — do not merge without explicit user approval.**
- Base: `githubsucks/main` @ `96d0bae`; protocol remains v19.
- Implementation checkpoints: `154cb9f` (second implementation-review fixes)
atop `69825d0` (exception-safe immediate reaper ownership), `82355ca`
(first implementation-review fixes), and `6fd5834`; approved framing began
at `821835b` and is now Revision 6.
- State: both implementation reviews are resolved, all 18 acceptance criteria
complete, and the PR awaits user review. Public path is additive
`pmacs --gpu [--socket NAME|PATH]`; bare `pmacs [FILE]` remains TUI and
`pmacs --gpu FILE` remains rejected.
- Review fixes: pre-state GPU events are buffered until winit state exists;
daemon stdio is detached; spawned-child ownership is handed off without a
leak window; direct CLI guidance, help/path operands, and sibling-file
discovery are strict; transient retry, timeout reporting, hermetic socket
paths, deterministic concurrent-loser reaping, pre-I/O non-CRDT gating, and
post-SIGINT use of a pre-attached frontend have behavioral coverage. Probe
disconnect polling remains bounded and cleanup skips already-reaped PIDs.
- Verification: strict workspace and CRDT acceptance Clippy; 1,768 default +
1,944 CRDT library tests; root CLI 33; GPU 149 required; GPU invocation
acceptance 1 default + 9 CRDT; Vterm Stage 3 7; M4 121 with 3 ignored and
the requested `basedpyright` skip; full workspace 2,961 across 85 suites
with 19 ignored and 1 requested skip; formatting and diff check clean.
Unified release build passed. Two real Wayland/Vulkan launches attached at
protocol v19; the second reused the daemon retained after the first GPU
process exited.
- Distribution remains source-checkout/workspace oriented: `pmacs-gpu` is
still unpublished. No install/service packaging claim was added.
Recovery:
```sh
git fetch githubsucks --prune
git worktree add --track \
-b gpu-invocation \
../pmacs-gpu-invocation \
githubsucks/gpu-invocation
cd ../pmacs-gpu-invocation
cargo build -p pmacs-gpu
cargo test --features crdt --test gpu_invocation_acceptance
```
## Parked lane: kill-ring browser + persistence
- Portable branch: `githubsucks/kill-ring-browser`

View File

@ -1,11 +1,11 @@
# Agent handoff — cross-machine continuity
**Last updated: 2026-07-23, with the approved one-command GPU invocation
broker implemented on open PR #141, after the documentation refresh (#140),
Vterm Stage 3 (#135, protocol v19 and native GPU terminal), tab-width
rendering parity (#137), locals-query processing (#134), modeline detection
(#132), mode system wiring (#129), config registry (#127), Vterm Stages 12
(#126/#130), and completed Themes Arc 4 (#120/#124/#125).**
**Last updated: 2026-07-23, after one-command GPU invocation (#141) landed,
following the documentation refresh (#140), Vterm Stage 3 (#135, protocol v19
and native GPU terminal), tab-width rendering parity (#137), locals-query
processing (#134), modeline detection (#132), mode system wiring (#129),
config registry (#127), Vterm Stages 12 (#126/#130), and completed Themes
Arc 4 (#120/#124/#125).**
This file is the
bridge between development machines. If you are an agent reading
this on a fresh clone: this document plus the `docs/*-framing.md`
@ -19,21 +19,22 @@ commands, read `docs/active-work.md` immediately after this file.
## 1. Where the project stands (2026-07-23)
- `main` @ `96d0bae` (documentation refresh #140 atop Vterm Stage 3 #135
and tab-width parity #137), protocol **v19** (`SUPPORTED=[6..=19]`; v16 =
`ThemeFacts`, v17 = `FontFacts`, v18 = `StatuslineSegments`, v19 = terminal
frames/events).
- **One-command GPU invocation is implemented on OPEN PR #141, not yet on
`main`** (`gpu-invocation`, second implementation-review checkpoint
`154cb9f`, framing Revision 6). The additive public path is
`pmacs --gpu [--socket NAME|PATH]`; bare `pmacs [FILE]` remains the TUI.
Root owns the CRDT gate, socket resolution, sibling-regular-file GPU
discovery/PATH fallback, and GPU outcome. The separate `pmacs-gpu` binary
owns connect-or-start, a five-second / 50-ms retry window, pre-winit event
buffering, daemon process-group/stdin/stdout/stderr isolation, and named
child reaping with explicit ownership handoff. Direct
`pmacs-gpu --attach RAW_PATH` remains strict, is documented as advanced,
and never auto-starts. No protocol change.
- `main` @ `63fbc66` (one-command GPU invocation #141 atop documentation
refresh #140), protocol **v19** (`SUPPORTED=[6..=19]`; v16 = `ThemeFacts`,
v17 = `FontFacts`, v18 = `StatuslineSegments`, v19 = terminal frames/events).
- **One-command GPU invocation LANDED — #141**
(`docs/gpu-invocation-framing.md` rev 6; merge `63fbc66`; two implementation
reviews). The additive public path is `pmacs --gpu [--socket NAME|PATH]`;
bare `pmacs [FILE]` remains the TUI. Root owns the CRDT gate, socket
resolution, sibling-regular-file GPU discovery/PATH fallback, and GPU
outcome. The separate `pmacs-gpu` binary owns connect-or-start, a
five-second / 50-ms retry window, pre-winit event buffering, daemon
process-group/stdin/stdout/stderr isolation, and named child reaping with
explicit ownership handoff. Direct `pmacs-gpu --attach RAW_PATH` remains
strict, is documented as advanced, and never auto-starts. No protocol
change. The initial macOS/LuaJIT CI run exceeded an unrelated outline
performance threshold (147 ms / 100 ms); the complete failed-job rerun
passed all twelve checks before merge.
- **Config registry LANDED — #127** (`docs/config-registry-framing.md`
rev 3; merge `2e37c04`; two review rounds). `pmacs.config` is the
typed, introspectable options registry the backlog ranked first, and