This commit is contained in:
@@ -10,8 +10,8 @@ from macOS and Linux and the hard gates pass.
|
||||
| Builds on Ubuntu | yes | conditional | pass |
|
||||
| Builds on Omarchy/Arch | yes | pending | pending |
|
||||
| Dependency/license closure permits Apache-2.0 distribution | yes | pending | pending |
|
||||
| Keyboard navigation + AccessKit tree | yes | pending | pending |
|
||||
| IME and composed Unicode input | yes | pending | pending |
|
||||
| Keyboard navigation + AccessKit tree | yes | keyboard pass; current-GPUI semantics compile; platform AT pending | fail: no AccessKit integration at pinned revision |
|
||||
| IME and composed Unicode input | yes | framework API exists; end-to-end pending | editor API exists; end-to-end pending |
|
||||
| Isolated system browser child | yes | pending | pending |
|
||||
| Cold startup, p50/p95 | record | pending | pending |
|
||||
| Idle RSS / six-stream RSS | record | pending | pending |
|
||||
@@ -43,4 +43,50 @@ performance numbers. GPUI's Ubuntu row remains conditional because the host has
|
||||
the runtime `libxkbcommon-x11.so.0` but lacks the unversioned development linker
|
||||
name normally supplied by `libxkbcommon-x11-dev`. Floem current main also
|
||||
requires its `editor` feature for the style/label modules used by this shell;
|
||||
that feature is now explicit in the spike. Neither finding decides the UI stack.
|
||||
that feature is now explicit in the spike. Neither build result by itself
|
||||
decides the UI stack.
|
||||
|
||||
## Accessibility gate and provisional direction
|
||||
|
||||
The published `gpui 0.2.2` used by the visual shell has focus and keyboard
|
||||
actions but does not expose the current AccessKit element API. An isolated probe
|
||||
therefore pins GPUI directly to Zed commit
|
||||
`ce48461eaadd16c65c31f835511ab96bd3b6e746` with its matching Rust 1.97.1
|
||||
toolchain. The real element wiring compiles with stable accessibility IDs,
|
||||
workspace/pane/terminal roles, selected state, focus tracking, and a needs-input
|
||||
description. The same probe installs real `EntityInputHandler` and
|
||||
`ElementInputHandler` implementations and tests marked-text commit, a composed
|
||||
accent, and a multi-codepoint emoji without splitting UTF-8. Three deterministic
|
||||
tests pass. AT-SPI/OS IME on Linux and VoiceOver/IME on macOS remain end-to-end
|
||||
gates.
|
||||
|
||||
The pinned Floem revision has keyboard focus and editor IME plumbing but no
|
||||
AccessKit dependency or semantic tree. That fails Lumbridge's accessibility
|
||||
gate without a maintained framework fork or adapter. The provisional direction
|
||||
is therefore **GPUI-first using current Zed GPUI behind a narrow Lumbridge UI
|
||||
adapter**. The published GPUI shell remains the lightweight interaction and
|
||||
visual benchmark until the dependency/toolchain migration is accepted.
|
||||
|
||||
This is not the final cross-platform release decision. Current-GPUI validation
|
||||
on amd-server required a 624 MiB Rust 1.97.1 toolchain, a 691-package lockfile,
|
||||
and 4.4 GiB of debug artifacts across check, test, Clippy, and build. Packaging,
|
||||
license closure, IME, platform assistive technology, browser parenting, macOS,
|
||||
and Omarchy still have to pass.
|
||||
|
||||
The comparable Floem shell passes build, test, strict Clippy, live rendering,
|
||||
streaming, mouse selection, and numeric pane selection on metal. Its command
|
||||
palette opens through the visible clickable affordance and uses Floem's native
|
||||
`TextInput`, but Ctrl/Cmd+K did not reach the handler in the X11 automation
|
||||
probe. That unresolved focus/event-routing behavior is another current strike
|
||||
against adopting Floem; it is recorded rather than hidden behind the clickable
|
||||
fallback.
|
||||
|
||||
## Measurement semantics
|
||||
|
||||
Both renderers consume the same deterministic six-surface action stream. Each
|
||||
tick invalidates six surfaces, appends one bounded line to each of the three
|
||||
terminal fixtures, and records stable event/revision counters. The GPUI footer
|
||||
currently reports dispatch-to-element-build p50/p95 over a bounded 256-sample
|
||||
window. It is deliberately not called key-to-present or frame-present latency:
|
||||
neither candidate exposes a reliable public cross-platform post-present
|
||||
callback. True present latency requires an external platform probe.
|
||||
|
||||
Reference in New Issue
Block a user