docs(vterm): refresh merged statusline baseline

Record canonical protocol v18 main after #125, mark Arc 4 complete, and pin
the Vterm Stage 1 feature commit and open PR #126 in the delivery records.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
Levi Neuwirth 2026-07-21 14:24:46 -04:00
parent bbc1f33a7c
commit 5d7f0078f1
3 changed files with 24 additions and 24 deletions

View File

@ -11,10 +11,8 @@ next machine reads it the way you just did.
## 1. Where the project stands (2026-07-21)
- Canonical `main` @ `bb17ec9` (#123 merged atop #124), protocol
**v17** (`SUPPORTED=[6..17]`). The rebased `statusline-segments`
branch implements protocol v18, but v18 is **not on main** until
review and merge.
- Canonical `main` @ `7bc0c61` (#125 merged), protocol
**v18** (`SUPPORTED=[6..18]`).
- **Syntax-highlight / language-detection side-quest (#114#118)
LANDED** — a one-shot arc built in sibling worktrees off main while
the user's themes lane (`theme-faces`) ran concurrently in the shared
@ -100,8 +98,7 @@ next machine reads it the way you just did.
`pmacs.editor.take_typed_edit()` (buffer-revision postcondition,
Q#AP9). Substrate: `buf:path()`, `pmacs.lsp.buffer_language(buf)`,
`PMACS_FAKE_LSP_CHANGE_SINK`, `TestDaemon::spawn_with_config`.
- **Themes (Arc 4) stages 1 and 2 LANDED; stage 3 IMPLEMENTED ON ITS
FEATURE BRANCH, AWAITING REVIEW.**
- **Themes (Arc 4) stages 13 LANDED; Arc 4 COMPLETE ON `main`.**
- Stage 1 (#120, `docs/theme-faces-framing.md` rev 9): named UI faces
as reserved `ui`/`ui.*` theme entries; transactional split
syntax/face epochs; protocol-v16 `ThemeFacts`; snapshot/baseline
@ -110,7 +107,7 @@ next machine reads it the way you just did.
`pmacs.gpu.set_font` and authoritative protocol-v17 `FontFacts`;
frontend-local family resolution, live font reload/reflow, and
visual-run caret geometry.
- Stage 3 (`statusline-segments`,
- Stage 3 (#125, `statusline-segments`,
`docs/statusline-segments-framing.md` rev 3): composable strict
`pmacs.statusline` providers; borrow-released per-window evaluation
with failure latches; legacy-preserving TUI composition; a pure
@ -121,10 +118,13 @@ next machine reads it the way you just did.
Clippy clean; 1,619 default + 1,793 CRDT library tests; 7 default +
8 CRDT feature acceptance; 114 M4; 109 required GPU; one-invocation
workspace sweep 2,718 passed across 78 suites (19 ignored,
`basedpyright` filtered); `git diff --check` clean. This branch is
awaiting review and **must not be described as merged**.
`basedpyright` filtered); `git diff --check` clean. Stage 3 landed
as #125 and completed Arc 4 on `main`.
- **Vterm Stage 1 terminal core IMPLEMENTED ON `vterm-core`, FULLY GATED,
AWAITING REVIEW, NOT MERGED** (`docs/vterm-framing.md` rev 3).
- Feature commit: `bbc1f33`; pull request: #126,
<https://github.com/levineuwirth/pmacs/pull/126> (open, non-draft,
targeting `main`).
- `AnsiParserProfile::{LineOriented, FullScreen}` preserves compile/REPL
behavior while terminal PTYs emit the full cursor/mode/device operation
set. `src/terminal/{screen,input,session}.rs` owns the state machine,

View File

@ -80,16 +80,13 @@ saveplace, autosave + crash recovery, optional backups. Generalize the
question: what is a "session" in a daemon world; do CRDT snapshots
ride along.
### Arc 4 — Themes + extensibility surface — COMPLETE ON FEATURE BRANCH
### Arc 4 — Themes + extensibility surface — COMPLETE ON `main`
Stages 1 and 2 landed as #120 and #124: named `ui.*` faces with
daemon-resolved `ThemeFacts`, then the live global
`pmacs.gpu.set_font` preference at protocol v17. Stage 3 is implemented
and fully gated on `statusline-segments`, awaiting review and **not yet
merged**: composable `pmacs.statusline` providers, per-window TUI
composition, a pure built-in LSP segment, dynamic modeline faces, and
semantic/GPU transport through protocol v18. Merging stage 3 completes
Arc 4 on `main`.
All three stages landed: #120 added named `ui.*` faces and daemon-resolved
`ThemeFacts`; #124 added the live global `pmacs.gpu.set_font` preference at
protocol v17; and #125 added composable `pmacs.statusline` providers,
per-window TUI composition, a pure built-in LSP segment, dynamic modeline
faces, and semantic/GPU transport through protocol v18.
### Arc 5 — Terminal, staged — VTERM STAGE 1 ON FEATURE BRANCH

View File

@ -35,9 +35,10 @@ later stage starts only after the preceding stage lands on `main`.
## 0. Revision 3 — Stage 1 implementation record
The first of the three vterm PRs is implemented on `vterm-core`, fully gated,
and awaiting review. It is deliberately headless: there is no `pmacs.terminal`
Lua module, interactive terminal command, TUI paint branch, or GPU/protocol
surface yet.
and awaiting review. Feature commit `bbc1f33` is published as open, non-draft
PR #126, <https://github.com/levineuwirth/pmacs/pull/126>, targeting `main`.
It is deliberately headless: there is no `pmacs.terminal` Lua module,
interactive terminal command, TUI paint branch, or GPU/protocol surface yet.
### 0.1 Public seam and ownership
@ -771,10 +772,12 @@ Per-stage utilization:
## 8. Branch and PR plan
Stage 1 is now implemented and fully gated on `vterm-core`, awaiting review and
not merged. Continue the approved plan only after the preceding PR lands:
Stage 1 is implemented and fully gated on `vterm-core` at `bbc1f33`, published
as open, non-draft PR #126 (<https://github.com/levineuwirth/pmacs/pull/126>),
targeting `main` and not merged. Continue the approved plan only after the
preceding PR lands:
1. review `vterm-core`; merge only when the user says;
1. review PR #126; merge only when the user says;
2. after stage 1 merges, create `pmacs-vterm-tui`, branch `vterm-tui`, from the
new `main`; implement/gate/open a second PR;
3. after stage 2 merges, create `pmacs-vterm-gpu`, branch `vterm-gpu`, from the