Skip to content

Add native Pi support, configurable binding, Nix packaging and release CI - #1

Merged
invaliddayta merged 9 commits into
invaliddayta:mainfrom
tompro:feat/pi-nix-releases
Sep 13, 2026
Merged

invaliddayta merged 9 commits into
invaliddayta:mainfrom
tompro:feat/pi-nix-releases

Conversation

@tompro

@tompro tompro commented Sep 13, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds native Pi TUI support over tmux, optional lifecycle attention integration, and guarded image-file reference pasting (not automatic image-byte attachment; no auto-submit). Also adds configurable HOST with loopback defaults, a locked Nix package/app, and tag-triggered runtime release packaging with checksums.

Changes are in separable commits. Opening as a draft for maintainer feedback on scope and release conventions; happy to split into focused PRs if preferred. No release tags have been published.

Safety

  • Retains origin checks and documents external authentication for remote HTTP/WebSocket access.
  • No ACP/RPC or approval bypass.
  • Pending Pi image paste captures the actual process identity before upload, rejects same-pane/same-backend replacement and reconnects, and never automatically submits.
  • No machine-specific deployment configuration is included.

Validation

  • Frozen Bun install, TypeScript check, and frontend build passed.
  • Bun suite: 91 pass, 1 optional skip, 1066 assertions.
  • Chromium React/xterm fixture suite: 13 groups passed (mocked transports, not real provider sessions).
  • Linux x86-64 Nix package built; installed-wrapper and extracted-runtime fake-agent smoke suites passed with disposable tmux sockets.
  • Same-backend stale-paste race reproduced before correction and covered by regressions afterward.
  • Independent source review completed after the corrective commit.

Not yet verified

ARM64 evaluated but not built locally; hosted release workflow has not run. Authenticated live-agent behavior, real-device image interaction and speech were not tested. Speech assets are not bundled/downloaded by the Nix build. See docs/verification.md, docs/nix.md and docs/release.md for details.

@tompro
tompro marked this pull request as ready for review September 13, 2026 16:00

@invaliddayta invaliddayta left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed the runtime, Pi target-identity checks, configurable binding, Nix packaging, and release workflow. Added maintainer fixes in e7227fc: require an executable extracted launcher before smoke tests, verify packaged HTML/assets, and use Bun --backend copyfile. Validation: 91 Bun tests pass (1 optional skip), TypeScript and frontend build pass, all 13 browser fixture groups pass at desktop and 390px width, ARM64 Nix build passes, and both installed/extracted-runtime smoke suites pass. Latest PR CI passes all three jobs. No remaining blocking findings. Live authenticated Pi/model behavior and tag-triggered release publication remain untested.

@invaliddayta
invaliddayta merged commit 69ad97d into invaliddayta:main Sep 13, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants