fix(ci): the ABI pin, android dead code, windows gamescope compile #455

Merged
enricobuehler merged 2 commits from touch/dial-model into main 2026-08-30 20:56:08 +00:00
Owner

The touch PRs (#447, #448) merged while their first full CI run's fixes were still in the gates, so main carries the three breaks that run found — one per platform. This is those fixes, two commits, nothing else.

  • ci / rust: abi_version_is_pinned still asserted 27. The v28 bump (the touch capability, punktfunk_connection_host_caps2) arrived in Phase 0 without the pin update the test's own comment demands, and no gate on the branch ever ran punktfunk-core's tests. The pin now says 28, with the v28 line beside it.
  • android / android: cargoNdkClippy rejected the ring's in-stream surface as dead code, and it is right — the Android console holds the ring solely as the editor, so input, take_command, take_cmds, damage, animating, key, the shell's send_cmd and MenuList::animating are driven only by the desktop overlay. They wear cfg_attr(android, allow(dead_code)) (a cfg would cascade into their parameter types' imports), and the host_actions::{self} import shrinks to the one name every platform uses.
  • windows-client / client (both arches): the two overlay_focus::gamescope_session() calls T17 and the touch-devices log added compile only on Linux. Both go through a new in_gamescope() that answers false off Linux.

Verified: the container gate green with punktfunk-core's tests added (pf-presenter 64, pf-client-core 242, pf-console-ui 227, punktfunk-core 512 — the pin suite in for the first time); clippy -D warnings for pf-presenter and the Windows client on the Windows box. The Android lints have no local run (cargo-ndk clippy dies in audiopus's cmake on a Mac); the fixes answer exactly the four errors in the CI log, and this PR's own android job is the check.

The touch PRs (#447, #448) merged while their first full CI run's fixes were still in the gates, so main carries the three breaks that run found — one per platform. This is those fixes, two commits, nothing else. - **`ci / rust`:** `abi_version_is_pinned` still asserted 27. The v28 bump (the touch capability, `punktfunk_connection_host_caps2`) arrived in Phase 0 without the pin update the test's own comment demands, and no gate on the branch ever ran punktfunk-core's tests. The pin now says 28, with the v28 line beside it. - **`android / android`:** cargoNdkClippy rejected the ring's in-stream surface as dead code, and it is right — the Android console holds the ring solely as the editor, so `input`, `take_command`, `take_cmds`, `damage`, `animating`, `key`, the shell's `send_cmd` and `MenuList::animating` are driven only by the desktop overlay. They wear `cfg_attr(android, allow(dead_code))` (a cfg would cascade into their parameter types' imports), and the `host_actions::{self}` import shrinks to the one name every platform uses. - **`windows-client / client` (both arches):** the two `overlay_focus::gamescope_session()` calls T17 and the touch-devices log added compile only on Linux. Both go through a new `in_gamescope()` that answers `false` off Linux. Verified: the container gate green with punktfunk-core's tests added (pf-presenter 64, pf-client-core 242, pf-console-ui 227, punktfunk-core 512 — the pin suite in for the first time); clippy `-D warnings` for pf-presenter and the Windows client on the Windows box. The Android lints have no local run (cargo-ndk clippy dies in audiopus's cmake on a Mac); the fixes answer exactly the four errors in the CI log, and this PR's own android job is the check.
enricobuehler added 2 commits 2026-08-30 20:45:47 +00:00
`abi_version_is_pinned` still asserted 27. The v28 bump (the touch
capability, `punktfunk_connection_host_caps2`) arrived in Phase 0
without the pin update the test's own comment demands, and no gate on
this branch ever ran punktfunk-core's tests — the PR's first full CI
run is what caught it. The pin now says 28, with the v28 line beside
it. Container tests: punktfunk-core 512 green, the pin suite included.
fix(client): android and windows compile their own truth
ci / web (pull_request) Successful in 1m1s
ci / docs-site (pull_request) Successful in 54s
ci / bun-nix (pull_request) Successful in 24s
windows-client / client (arm64, --no-default-features, aarch64-pc-windows-msvc, C:\t-a64) (pull_request) Successful in 3m28s
ci / docs-drift (pull_request) Successful in 33s
ci / rust-arm64 (pull_request) Successful in 4m52s
apple / swift (pull_request) Successful in 2m13s
apple / distribute (pull_request) Skipped
apple / screenshots (pull_request) Skipped
android / android (pull_request) Successful in 10m10s
windows-client / client (x64, , x86_64-pc-windows-msvc, C:\t) (pull_request) Successful in 6m58s
ci / rust (pull_request) Failing after 9m41s
5f786267dd
Two platform breaks from the branch's first full CI run, invisible to
the local gates.

Android's cargoNdkClippy rejected the ring's in-stream surface as dead
code, and it is right: the Android console holds the ring solely as
the editor, so `input`, `take_command`, `take_cmds`, `damage`,
`animating` and `key` (and the shell's `send_cmd`, and
`MenuList::animating`) are driven only by the desktop overlay. They
wear `cfg_attr(android, allow(dead_code))` rather than a cfg — cfg'ing
them out cascades into their parameter types' imports — and the
`host_actions::{self}` import shrinks to the one name every platform
uses, with the desktop-only call fully qualified.

Windows failed on the two `overlay_focus::gamescope_session()` calls
T17 and the touch-devices log added: `overlay_focus` exists only on
Linux (there is no gamescope to be inside anywhere else). Both go
through a new `in_gamescope()` that answers `false` off Linux.

Verified: the container gate green (64 / 242 / 227); clippy
`-D warnings` for pf-presenter and the Windows client on the Windows
box. The Android lints have no local run (cargo-ndk clippy dies in
audiopus's cmake on a Mac) — the fixes answer exactly the four errors
in the CI log, and CI is the check.
enricobuehler merged commit 221d05500b into main 2026-08-30 20:56:08 +00:00
enricobuehler deleted branch touch/dial-model 2026-08-30 20:56:24 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: unom/punktfunk#455