Back to branch review

sledtools/pika branch #144

pika-delete-legacy-runtime-residue

Delete local microvm guest module

branch: merged target: master
Updated 2026-03-27 13:44:44
Head 37ed49167215ded8d662d90f06627ec42de1c1b2
Merge Base cd9677e171a183ee300e84ecb8a23ea920153a8c

Continuous Integration

CI: success

branch merged · tutorial ready

Use recovery controls only for wedged queues, stale leases, or broken runners.

Run History

Full lane, log, rerun, and recovery detail lives here.

Run #180 success

head 37ed49167215ded8d662d90f06627ec42de1c1b2 · queued 2026-03-27 13:41:09 · 9 lane(s)

queued 14s · ran 3m 11s

started 2026-03-27 13:41:23

finished 2026-03-27 13:44:34

Lane #990 · check-pika-rust success

./scripts/pikaci-staged-linux-remote.sh run pre-merge-pika-rust · lane id pika_rust · retries 0 · queued 2026-03-27 13:41:09

queued 14s · ran 29s

target pre-merge-pika-rust

last heartbeat 2026-03-27 13:41:52

CI run 20260327T134152Z-1ca1eb81 · target pre-merge-pika-rust

started 2026-03-27 13:41:23

finished 2026-03-27 13:41:52

[pikaci] run started: 20260327T134152Z-1ca1eb81 · pre-merge-pika-rust · Run the VM-backed Rust tests from the pre-merge pika lane
[pikaci] run finished: 20260327T134152Z-1ca1eb81 · status=skipped · skipped; no changed files matched 23 filter(s)
error (ignored): SQLite database '/var/lib/pika-git/.cache/nix/eval-cache-v6/cde69aef94060b861d154cb7b49153f2b67bdb24ae6b64b594d6bde17984b809.sqlite' is busy
this derivation will be built:
  /nix/store/4n0557wpcirrmxp1j9gg6qmysin9dif1-pikaci-0.1.0.drv
[pikaci-tools] staged-linux-remote: resolution=nix-build package_root=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0
[pikaci-tools] staged-linux-remote: pikaci=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci
[pikaci-tools] staged-linux-remote: helper=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci-fulfill-prepared-output
[pikaci-tools] staged-linux-remote: launcher=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci-launch-fulfill-prepared-output
Lane #991 · check-pika-followup success

./scripts/pikaci-staged-linux-remote.sh run pre-merge-pika-followup · lane id pika_followup · retries 0 · queued 2026-03-27 13:41:09

queued 14s · ran 29s

target pre-merge-pika-followup

last heartbeat 2026-03-27 13:41:52

CI run 20260327T134152Z-fe4b047a · target pre-merge-pika-followup

started 2026-03-27 13:41:23

finished 2026-03-27 13:41:52

[pikaci] run started: 20260327T134152Z-fe4b047a · pre-merge-pika-followup · Run the VM-backed non-Rust follow-up checks from the pre-merge pika lane
[pikaci] run finished: 20260327T134152Z-fe4b047a · status=skipped · skipped; no changed files matched 25 filter(s)
error (ignored): SQLite database '/var/lib/pika-git/.cache/nix/eval-cache-v6/cde69aef94060b861d154cb7b49153f2b67bdb24ae6b64b594d6bde17984b809.sqlite' is busy
this derivation will be built:
  /nix/store/4n0557wpcirrmxp1j9gg6qmysin9dif1-pikaci-0.1.0.drv
[pikaci-tools] staged-linux-remote: resolution=nix-build package_root=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0
[pikaci-tools] staged-linux-remote: pikaci=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci
[pikaci-tools] staged-linux-remote: helper=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci-fulfill-prepared-output
[pikaci-tools] staged-linux-remote: launcher=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci-launch-fulfill-prepared-output
Lane #992 · check-notifications success

./scripts/pikaci-staged-linux-remote.sh run pre-merge-notifications · lane id notifications · retries 0 · queued 2026-03-27 13:41:09

queued 14s · ran 29s

target pre-merge-notifications

last heartbeat 2026-03-27 13:41:52

CI run 20260327T134152Z-e2dff3bc · target pre-merge-notifications

started 2026-03-27 13:41:23

finished 2026-03-27 13:41:52

[pikaci] run started: 20260327T134152Z-e2dff3bc · pre-merge-notifications · Run the VM-backed Rust tests from the notifications lane
[pikaci] run finished: 20260327T134152Z-e2dff3bc · status=skipped · skipped; no changed files matched 27 filter(s)
this derivation will be built:
  /nix/store/4n0557wpcirrmxp1j9gg6qmysin9dif1-pikaci-0.1.0.drv
[pikaci-tools] staged-linux-remote: resolution=nix-build package_root=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0
[pikaci-tools] staged-linux-remote: pikaci=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci
[pikaci-tools] staged-linux-remote: helper=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci-fulfill-prepared-output
[pikaci-tools] staged-linux-remote: launcher=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci-launch-fulfill-prepared-output
Lane #993 · check-agent-contracts success

./scripts/pikaci-staged-linux-remote.sh run pre-merge-agent-contracts · lane id agent_contracts · retries 0 · queued 2026-03-27 13:41:09

queued 14s · ran 29s

target pre-merge-agent-contracts

last heartbeat 2026-03-27 13:41:52

CI run 20260327T134152Z-b78af79c · target pre-merge-agent-contracts

started 2026-03-27 13:41:23

finished 2026-03-27 13:41:52

[pikaci] run started: 20260327T134152Z-b78af79c · pre-merge-agent-contracts · Run the Incus-backed pre-merge agent contracts lane
[pikaci] run finished: 20260327T134152Z-b78af79c · status=skipped · skipped; no changed files matched 32 filter(s)
error (ignored): SQLite database '/var/lib/pika-git/.cache/nix/eval-cache-v6/cde69aef94060b861d154cb7b49153f2b67bdb24ae6b64b594d6bde17984b809.sqlite' is busy
this derivation will be built:
  /nix/store/4n0557wpcirrmxp1j9gg6qmysin9dif1-pikaci-0.1.0.drv
[pikaci-tools] staged-linux-remote: resolution=nix-build package_root=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0
[pikaci-tools] staged-linux-remote: pikaci=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci
[pikaci-tools] staged-linux-remote: helper=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci-fulfill-prepared-output
[pikaci-tools] staged-linux-remote: launcher=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci-launch-fulfill-prepared-output
Lane #994 · check-rmp success

./scripts/pikaci-staged-linux-remote.sh run pre-merge-rmp · lane id rmp · retries 0 · queued 2026-03-27 13:41:09

queued 14s · ran 26s

target pre-merge-rmp

last heartbeat 2026-03-27 13:41:49

CI run 20260327T134149Z-d066a11b · target pre-merge-rmp

started 2026-03-27 13:41:23

finished 2026-03-27 13:41:49

[pikaci] run started: 20260327T134149Z-d066a11b · pre-merge-rmp · Run the VM-backed pre-merge RMP lane
[pikaci] run finished: 20260327T134149Z-d066a11b · status=skipped · skipped; no changed files matched 14 filter(s)
error (ignored): SQLite database '/var/lib/pika-git/.cache/nix/eval-cache-v6/cde69aef94060b861d154cb7b49153f2b67bdb24ae6b64b594d6bde17984b809.sqlite' is busy
this derivation will be built:
  /nix/store/4n0557wpcirrmxp1j9gg6qmysin9dif1-pikaci-0.1.0.drv
building '/nix/store/4n0557wpcirrmxp1j9gg6qmysin9dif1-pikaci-0.1.0.drv'...
[pikaci-tools] staged-linux-remote: resolution=nix-build package_root=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0
[pikaci-tools] staged-linux-remote: pikaci=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci
[pikaci-tools] staged-linux-remote: helper=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci-fulfill-prepared-output
[pikaci-tools] staged-linux-remote: launcher=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci-launch-fulfill-prepared-output
Lane #995 · check-pikachat success

./scripts/pikaci-staged-linux-remote.sh run pre-merge-pikachat-rust · lane id pikachat · retries 0 · queued 2026-03-27 13:41:09

queued 14s · ran 29s

target pre-merge-pikachat-rust

last heartbeat 2026-03-27 13:41:52

CI run 20260327T134152Z-3bbea56e · target pre-merge-pikachat-rust

started 2026-03-27 13:41:23

finished 2026-03-27 13:41:52

[pikaci] run started: 20260327T134152Z-3bbea56e · pre-merge-pikachat-rust · Run the VM-backed Rust tests from the pikachat lane
[pikaci] run finished: 20260327T134152Z-3bbea56e · status=skipped · skipped; no changed files matched 33 filter(s)
error (ignored): SQLite database '/var/lib/pika-git/.cache/nix/eval-cache-v6/cde69aef94060b861d154cb7b49153f2b67bdb24ae6b64b594d6bde17984b809.sqlite' is busy
this derivation will be built:
  /nix/store/4n0557wpcirrmxp1j9gg6qmysin9dif1-pikaci-0.1.0.drv
[pikaci-tools] staged-linux-remote: resolution=nix-build package_root=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0
[pikaci-tools] staged-linux-remote: pikaci=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci
[pikaci-tools] staged-linux-remote: helper=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci-fulfill-prepared-output
[pikaci-tools] staged-linux-remote: launcher=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci-launch-fulfill-prepared-output
Lane #996 · check-apple-host-sanity success

./scripts/pikaci-apple-remote.sh run --just-recipe apple-host-sanity · lane id apple_host_sanity · retries 0 · queued 2026-03-27 13:41:09

queued 14s · ran 3m 11s

target apple-host

last heartbeat 2026-03-27 13:44:34

started 2026-03-27 13:41:23

finished 2026-03-27 13:44:34

From /Volumes/pikaci-data/pikaci-apple/runs/apple-run-20260327T134123Z-37ed49167215/source.bundle
 * [new ref]             refs/pikaci-apple/run/apple-run-20260327T134123Z-37ed49167215 -> refs/pikaci-apple/prepared/37ed49167215ded8d662d90f06627ec42de1c1b2
Preparing worktree (detached HEAD 37ed49167)
building '/nix/store/ijdwn6a6pdi2bfslnwhwvh96fwrc0rg0-ph-0.1.0.drv'...
building '/nix/store/21x0s4irc4gxvvzscrp33qjlbljbn721-nix-shell-env.drv'...

Pika dev environment ready
  Rust:         rustc 1.93.0 (254b59607 2026-01-19)
  DATABASE_URL: postgresql:///pika_server?host=/Volumes/pikaci-data/pikaci-apple/prepared/37ed49167215ded8d662d90f06627ec42de1c1b2/worktree/crates/pika-server/.pgdata
  Postgres:     run 'cargo run -p pikahut -- up --profile postgres' when needed
  Xcode:        /Applications/Xcode-26.2.0.app/Contents/Developer

   Compiling aws-lc-sys v0.38.0
   Compiling ring v0.17.14
   Compiling objc2 v0.6.4
   Compiling secp256k1-sys v0.10.1
   Compiling libsqlite3-sys v0.35.0
   Compiling hypernote-protocol v0.1.0 (/Volumes/pikaci-data/pikaci-apple/prepared/37ed49167215ded8d662d90f06627ec42de1c1b2/worktree/crates/hypernote-protocol)
   Compiling pika_core v0.1.0 (/Volumes/pikaci-data/pikaci-apple/prepared/37ed49167215ded8d662d90f06627ec42de1c1b2/worktree/rust)
   Compiling pika-managed-agent-contract v0.1.0 (/Volumes/pikaci-data/pikaci-apple/prepared/37ed49167215ded8d662d90f06627ec42de1c1b2/worktree/crates/pika-managed-agent-contract)
   Compiling pika-relay-profiles v0.1.0 (/Volumes/pikaci-data/pikaci-apple/prepared/37ed49167215ded8d662d90f06627ec42de1c1b2/worktree/crates/pika-relay-profiles)
   Compiling objc2-core-foundation v0.3.2
   Compiling objc2-core-audio-types v0.3.2
   Compiling block2 v0.6.2
   Compiling secp256k1 v0.29.1
   Compiling rusqlite v0.37.0
   Compiling dispatch2 v0.3.1
   Compiling objc2-foundation v0.3.2
   Compiling objc2-core-graphics v0.3.2
   Compiling objc2-core-audio v0.3.2
   Compiling nostr v0.44.2
   Compiling refinery-core v0.9.0
   Compiling aws-lc-rs v1.16.1
   Compiling rustls v0.23.37
   Compiling refinery v0.9.0
   Compiling objc2-quartz-core v0.3.2
   Compiling objc2-audio-toolbox v0.3.2
   Compiling objc2-app-kit v0.3.2
   Compiling softbuffer v0.4.8
   Compiling coreaudio-rs v0.13.0
   Compiling rfd v0.15.4
   Compiling nostr-database v0.44.0
   Compiling mdk-storage-traits v0.7.1 (https://github.com/marmot-protocol/mdk?rev=ca0663ee332958aa92efadf916d19c6e1b1f99c7#ca0663ee)
   Compiling nostr-gossip v0.44.0
   Compiling iced_tiny_skia v0.14.0
   Compiling cpal v0.16.0
   Compiling mdk-core v0.7.1 (https://github.com/marmot-protocol/mdk?rev=ca0663ee332958aa92efadf916d19c6e1b1f99c7#ca0663ee)
   Compiling mdk-sqlite-storage v0.7.1 (https://github.com/marmot-protocol/mdk?rev=ca0663ee332958aa92efadf916d19c6e1b1f99c7#ca0663ee)
   Compiling iced_renderer v0.14.0
   Compiling rustls-webpki v0.103.9
   Compiling iced_widget v0.14.2
   Compiling iced v0.14.0
   Compiling tokio-rustls v0.26.4
   Compiling tungstenite v0.26.2
   Compiling rustls-platform-verifier v0.6.2
   Compiling pika-tls v0.1.0 (/Volumes/pikaci-data/pikaci-apple/prepared/37ed49167215ded8d662d90f06627ec42de1c1b2/worktree/crates/pika-tls)
   Compiling hyper-rustls v0.27.7
   Compiling quinn-proto v0.11.14
   Compiling tokio-tungstenite v0.26.2
   Compiling reqwest v0.12.28
   Compiling async-wsocket v0.13.2
   Compiling quinn v0.11.9
   Compiling nostr-relay-pool v0.44.0
   Compiling web-transport-quinn v0.11.8
   Compiling nostr-blossom v0.44.0
   Compiling pika-media v0.1.0 (/Volumes/pikaci-data/pikaci-apple/prepared/37ed49167215ded8d662d90f06627ec42de1c1b2/worktree/crates/pika-media)
   Compiling nostr-sdk v0.44.1
   Compiling nostr-connect v0.44.0
   Compiling pika-marmot-runtime v0.1.0 (/Volumes/pikaci-data/pikaci-apple/prepared/37ed49167215ded8d662d90f06627ec42de1c1b2/worktree/crates/pika-marmot-runtime)
   Compiling pika-desktop v0.1.0 (/Volumes/pikaci-data/pikaci-apple/prepared/37ed49167215ded8d662d90f06627ec42de1c1b2/worktree/crates/pika-desktop)
    Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 48s

Pika dev environment ready
  Rust:         rustc 1.93.0 (254b59607 2026-01-19)
  DATABASE_URL: postgresql:///pika_server?host=/Volumes/pikaci-data/pikaci-apple/prepared/37ed49167215ded8d662d90f06627ec42de1c1b2/worktree/crates/pika-server/.pgdata
  Postgres:     run 'cargo run -p pikahut -- up --profile postgres' when needed
  Xcode:        /Applications/Xcode-26.2.0.app/Contents/Developer


running 8 tests
test app_manager::tests::stale_full_state_is_dropped ... ok
test app_manager::tests::restoring_session_clears_after_non_login_state ... ok
test app_manager::tests::pending_login_nsec_clears_after_login_error_toast ... ok
2026-03-27T13:43:52.069727Z  INFO pika_core: FfiApp::new() starting data_dir=/tmp/nix-shell.w23DlV/.tmpUOHQnq/desktop-recovery-config keychain_group= app_version=1.1.1
2026-03-27T13:43:52.074443Z  INFO pika_core: FfiApp::new() starting data_dir=/tmp/nix-shell.w23DlV/.tmp8pI2Nh/desktop-recovery-clear keychain_group= app_version=1.1.1
test app_manager::tests::pending_login_nsec_persists_after_successful_login ... ok
test app_manager::tests::nsec_store_uses_owner_only_permissions ... ok
test app_manager::tests::account_created_side_effect_runs_when_stale ... ok
test app_manager::tests::clear_local_session_for_recovery_clears_persistence ... ok
test app_manager::tests::reset_relay_config_to_defaults_writes_default_relays ... ok

test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s


running 12 tests
test screen::home::tests::effective_selected_chat_prefers_optimistic_selection ... ok
test screen::home::tests::effective_selected_chat_falls_back_to_projected_selection ... ok
test utils::tests::relative_time_recent ... ok
test utils::tests::truncate_short_unchanged ... ok
test utils::tests::truncate_long_adds_ellipsis ... ok
test utils::tests::truncated_npub_long_is_compact ... ok
test utils::tests::truncated_npub_long_variant_is_compact ... ok
test utils::tests::truncated_npub_short_unchanged ... ok
test views::conversation::tests::clean_reply_target_clears_submissions_when_chat_disappears ... ok
test views::conversation::tests::hypernote_action_bubbles_up_as_event ... ok
test views::conversation::tests::clean_reply_target_removes_missing_message_submissions ... ok
test views::conversation::tests::clean_reply_target_drops_optimistic_entry_after_authoritative_response ... ok

test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.30s

apple-host-sanity complete
Lane #997 · check-pikachat-openclaw-e2e success

./scripts/pikaci-staged-linux-remote.sh run pre-merge-pikachat-openclaw-e2e · lane id pikachat_openclaw_e2e · retries 0 · queued 2026-03-27 13:41:09

queued 14s · ran 29s

target pre-merge-pikachat-openclaw-e2e

last heartbeat 2026-03-27 13:41:52

CI run 20260327T134152Z-7c04c310 · target pre-merge-pikachat-openclaw-e2e

started 2026-03-27 13:41:23

finished 2026-03-27 13:41:52

[pikaci] run started: 20260327T134152Z-7c04c310 · pre-merge-pikachat-openclaw-e2e · Run the VM-backed heavy OpenClaw gateway end-to-end scenario
[pikaci] run finished: 20260327T134152Z-7c04c310 · status=skipped · skipped; no changed files matched 27 filter(s)
error (ignored): SQLite database '/var/lib/pika-git/.cache/nix/eval-cache-v6/cde69aef94060b861d154cb7b49153f2b67bdb24ae6b64b594d6bde17984b809.sqlite' is busy
this derivation will be built:
  /nix/store/4n0557wpcirrmxp1j9gg6qmysin9dif1-pikaci-0.1.0.drv
[pikaci-tools] staged-linux-remote: resolution=nix-build package_root=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0
[pikaci-tools] staged-linux-remote: pikaci=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci
[pikaci-tools] staged-linux-remote: helper=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci-fulfill-prepared-output
[pikaci-tools] staged-linux-remote: launcher=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci-launch-fulfill-prepared-output
Lane #998 · check-fixture success

./scripts/pikaci-staged-linux-remote.sh run pre-merge-fixture-rust · lane id fixture · retries 0 · queued 2026-03-27 13:41:09

queued 14s · ran 29s

target pre-merge-fixture-rust

last heartbeat 2026-03-27 13:41:52

CI run 20260327T134152Z-67eb6389 · target pre-merge-fixture-rust

started 2026-03-27 13:41:23

finished 2026-03-27 13:41:52

[pikaci] run started: 20260327T134152Z-67eb6389 · pre-merge-fixture-rust · Run the VM-backed Rust tests from the fixture lane
[pikaci] run finished: 20260327T134152Z-67eb6389 · status=skipped · skipped; no changed files matched 44 filter(s)
error (ignored): SQLite database '/var/lib/pika-git/.cache/nix/eval-cache-v6/cde69aef94060b861d154cb7b49153f2b67bdb24ae6b64b594d6bde17984b809.sqlite' is busy
this derivation will be built:
  /nix/store/4n0557wpcirrmxp1j9gg6qmysin9dif1-pikaci-0.1.0.drv
[pikaci-tools] staged-linux-remote: resolution=nix-build package_root=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0
[pikaci-tools] staged-linux-remote: pikaci=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci
[pikaci-tools] staged-linux-remote: helper=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci-fulfill-prepared-output
[pikaci-tools] staged-linux-remote: launcher=/nix/store/wi1gr9j94ykid97nf845zs8nwc1lbg8p-pikaci-0.1.0/bin/pikaci-launch-fulfill-prepared-output