OXYGENHUB

✓ Run #36 passed

main at 5d968456fcb5 · pushed by andymccall · 1 min 12 s · pipeline 3297dfa08d52 · .flow/pipeline.kdl · all runs

✓ fmt passed · 1.7 s ✓ build passed · 42.6 s ✓ clippy passed · 9.5 s ✓ test passed · 58.0 s
✓ fmt passed · exit 0 · 1.7 s · on earth-1 · signed receipt by earth-1 (short-lived key)
0.0sfetching andymccall/spectra for state 2d2dcb7a2778+366e358ff5e7+62d35f1dd866+f4b3e9369e28
0.8sfetched in 0.8 s, 98 files exported in 0.0 s
0.9sbooting a microVM: 1 vCPU, 1024 MiB, rootfs 836461b61301

Ran on earth-1: holds the image, idle, speed 89 (class 3).

Where its time went: prepare 0.9s, run 0.6s, finish 0.0s.

✓ build passed · exit 0 · 42.6 s · on plex-1 · signed receipt by plex-1 (short-lived key) · 1 artifact
0.0sfetching andymccall/spectra for state 2d2dcb7a2778+366e358ff5e7+62d35f1dd866+f4b3e9369e28
1.6sfetched in 1.6 s, 98 files exported in 0.0 s
1.6scache target: this bookmark's, same key (/src/target)
1.7scache: 117 of 120 files and directories unchanged since the cached build, their times kept
1.8sbooting a microVM: 4 vCPU, 8192 MiB, rootfs 836461b61301
0.6s   Compiling spectra-core v0.1.0 (/src/crates/spectra-core)
0.6s   Compiling spectra v0.1.0 (/src)
2.7s   Compiling spectra-mcp v0.1.0 (/src/crates/spectra-mcp)
30.5s    Finished `release` profile [optimized] target(s) in 30.31s
42.1sartifact spectra: 19048552 bytes, blob 670ae5906cf1
42.3scache target: kept 1.6 GiB, under its cap of 60% of its 16.0 GiB disk

Ran on plex-1: holds its build cache (kept 9 min ago), holds the image, idle, speed 111 (class 3), after 0 s held for a better runner.

Where its time went: prepare 1.8s, run 30.7s, finish 9.7s.

✓ clippy passed · exit 0 · 9.5 s · on earth-1 · signed receipt by earth-1 (short-lived key)
0.0sfetching andymccall/spectra for state 2d2dcb7a2778+366e358ff5e7+62d35f1dd866+f4b3e9369e28
0.7sfetched in 0.7 s, 98 files exported in 0.0 s
0.7scache target: this bookmark's, same key (/src/target)
0.7scache: 117 of 120 files and directories unchanged since the cached build, their times kept
0.8sbooting a microVM: 4 vCPU, 8192 MiB, rootfs 836461b61301
1.4s    Checking spectra-core v0.1.0 (/src/crates/spectra-core)
3.9s    Checking spectra-mcp v0.1.0 (/src/crates/spectra-mcp)
5.3s    Checking spectra v0.1.0 (/src)
8.4s    Finished `dev` profile [unoptimized] target(s) in 7.88s
9.4scache target: kept 781 MiB, under its cap of 60% of its 15.6 GiB disk

Ran on earth-1: holds its build cache (kept 10 min ago), holds the image, idle, speed 89 (class 3).

Where its time went: prepare 0.8s, run 8.6s, finish 0.0s.

✓ test passed · exit 0 · 58.0 s · on earth-1 · signed receipt by earth-1 (short-lived key) · 2 artifacts · 76 tests, all passed · coverage 83.9%

76 passed · 1 min 47 s of test time

0.0sfetching andymccall/spectra for state 2d2dcb7a2778+366e358ff5e7+62d35f1dd866+f4b3e9369e28
0.9sfetched in 1.0 s, 98 files exported in 0.0 s
0.9scache target: this bookmark's, same key (/src/target)
1.0scache: 117 of 120 files and directories unchanged since the cached build, their times kept
1.1sbooting a microVM: 4 vCPU, 8192 MiB, rootfs 836461b61301
0.7sinfo: cargo-llvm-cov currently setting cfg(coverage); you can opt-out it by passing --no-cfg-coverage
2.3s   Compiling spectra-core v0.1.0 (/src/crates/spectra-core)
2.3s   Compiling spectra-api v0.1.0 (/src/crates/spectra-api)
2.3s   Compiling spectra v0.1.0 (/src)
6.0s   Compiling spectra-mcp v0.1.0 (/src/crates/spectra-mcp)
21.2s    Finished `test` profile [unoptimized] target(s) in 19.41s
21.4s────────────
21.4s Nextest run ID 014cda5c-bd1d-4fd0-b908-8308b74cf24c with nextest profile: ci
21.4s    Starting 76 tests across 26 binaries (1 test skipped)
21.7s        PASS [   0.291s] ( 1/76) spectra::bridge status_says_what_is_set_up
23.9s        PASS [   2.215s] ( 2/76) spectra::bridge the_bridge_signs_for_its_holder_only
24.5s        PASS [   3.126s] ( 3/76) spectra::auto one_entry_serves_every_folder
24.5s        PASS [   0.015s] ( 4/76) spectra::cli_admin a_missing_data_directory_says_what_to_do
25.0s        PASS [   0.450s] ( 5/76) spectra::cli_admin verify_check_and_rebuild_on_a_clean_and_a_tampered_ledger
25.0s        PASS [   3.638s] ( 6/76) spectra::api every_endpoint_for_an_agent_and_the_owner
25.1s        PASS [   0.034s] ( 7/76) spectra::cli_identity an_owner_without_a_secret_key_cannot_init
25.4s        PASS [   0.416s] ( 8/76) spectra::cli_identity a_second_writer_is_refused
26.6s        PASS [   5.224s] ( 9/76) spectra::allow the_owner_opens_one_channel_to_one_agent
27.7s        PASS [   2.345s] (10/76) spectra::cli_json a_terminal_chat_with_the_agents
28.6s        PASS [   2.031s] (11/76) spectra::cli_json every_json_output_parses_without_the_daemon
29.5s        PASS [   4.398s] (12/76) spectra::cli_identity init_then_an_owned_agent_end_to_end
30.3s        PASS [   1.622s] (13/76) spectra::cli_mcp the_shim_says_plainly_what_is_wrong
30.3s        PASS [   0.819s] (14/76) spectra::cli_project a_project_is_registered_once_and_an_agent_needs_one
30.7s        PASS [   2.986s] (15/76) spectra::cli_mcp a_client_speaks_to_spectra_through_the_shim
31.2s        PASS [   0.453s] (16/76) spectra::connect someone_elses_server_is_refused
31.7s        PASS [   7.775s] (17/76) spectra::briefs a_project_brief_reaches_its_own_agents_only
32.5s        PASS [   2.202s] (18/76) spectra::cli_project any_work_is_a_project_and_the_owner_links_them
32.6s        PASS [   0.097s] (19/76) spectra::remote init_refuses_what_is_not_a_key_id
33.6s        PASS [   2.448s] (20/76) spectra::connect the_owner_connects_delegates_and_claims
34.1s        PASS [   1.524s] (21/76) spectra::remote the_named_owner_claims_a_server_and_nobody_else_can
35.5s        PASS [   1.827s] (22/76) spectra::serve an_agent_discovers_lists_and_calls_tools_over_the_socket
37.3s        PASS [   3.207s] (23/76) spectra::serve every_refusal_the_spec_promises
37.5s        PASS [   5.884s] (24/76) spectra::mentions a_unique_part_of_a_name_is_a_mention
37.9s        PASS [   7.598s] (25/76) spectra::client every_command_works_from_another_machine
38.3s        PASS [   0.445s] (26/76) spectra::tls plain_http_beyond_loopback_is_refused
38.9s        PASS [   3.452s] (27/76) spectra::serve owner_commands_go_through_the_running_daemon_and_learn_uid_binds
39.3s        PASS [   1.744s] (28/76) spectra::tls an_agent_bound_to_a_uid_is_refused_over_the_network
39.6s        PASS [   2.278s] (29/76) spectra::tls a_client_trusts_the_certificate_the_instance_key_signed
39.6s        PASS [   0.010s] (30/76) spectra::bin/spectra cli::auto::tests::the_deepest_folder_of_the_right_kind_wins
39.6s        PASS [   0.007s] (31/76) spectra::bin/spectra cli::ui::tests::relative_times
39.6s        PASS [   0.007s] (32/76) spectra-core cbor::tests::refuses_what_is_not_canonical
39.6s        PASS [   0.007s] (33/76) spectra-core cbor::tests::round_trips_and_known_encodings
39.6s        PASS [   0.007s] (34/76) spectra-core conversation::tests::refs_and_direct_names
39.6s        PASS [   0.007s] (35/76) spectra-core event::tests::canonical_json_sorts_keys_at_every_level
39.6s        PASS [   0.007s] (36/76) spectra-core event::tests::every_field_but_the_proof_changes_the_hash
39.6s        PASS [   0.008s] (37/76) spectra-core event::tests::the_envelope_is_frozen
39.6s        PASS [   0.007s] (38/76) spectra-core hlc::tests::a_far_future_remote_time_moves_the_clock_by_the_drift_bound_at_most
39.7s        PASS [   0.007s] (39/76) spectra-core hlc::tests::ticks_are_monotonic_when_the_wall_clock_stalls_or_steps_back
39.8s        PASS [   0.144s] (40/76) spectra-core identity::tests::a_signature_binds_the_key_and_the_message_and_needs_both_halves
39.9s        PASS [   0.093s] (41/76) spectra-core identity::tests::identities_round_trip_and_successors_chain
39.9s        PASS [   0.007s] (42/76) spectra-core ids::tests::ulids_are_26_chars_and_sort_by_time
40.1s        PASS [   0.217s] (43/76) spectra-core keys::tests::a_home_made_here_reads_back_signs_and_delegates
40.2s        PASS [   0.050s] (44/76) spectra-core keys::tests::the_instance_key_is_made_once
40.2s        PASS [   0.007s] (45/76) spectra-core presence::tests::a_waiting_or_connected_agent_is_not_offline
40.2s        PASS [   0.006s] (46/76) spectra-core presence::tests::presence_moves_through_its_states_and_records_each_change
40.2s        PASS [   1.329s] (47/76) spectra::tools the_tool_list_fits_its_token_budget
40.2s        PASS [   0.010s] (48/76) spectra-core rules::tests::a_brief_must_fit_in_one_call
40.4s        PASS [   0.183s] (49/76) spectra-core proof::tests::a_proof_round_trips_and_binds_key_method_body_and_time
41.4s        PASS [   1.166s] (50/76) spectra-core::conversation agents_post_where_they_belong_and_nowhere_else
41.8s        PASS [   1.425s] (51/76) spectra-core::conversation duplicates_limits_and_redaction
42.9s        PASS [   4.634s] (52/76) spectra::tools an_idle_wait_loop_is_refused
43.2s        PASS [   0.226s] (53/76) spectra-core::ledger a_checkpoint_signed_by_another_key_is_caught
43.2s        PASS [   0.068s] (54/76) spectra-core::ledger a_ledger_from_a_newer_spectra_is_refused
43.4s        PASS [   0.110s] (55/76) spectra-core::ledger a_removed_event_is_caught
43.4s        PASS [   1.979s] (56/76) spectra-core::conversation search_finds_stemmed_words_and_respects_who_may_read
43.8s        PASS [   0.407s] (57/76) spectra-core::ledger an_append_abandoned_mid_flight_still_commits_and_never_blocks_later_ones
44.0s        PASS [   0.178s] (58/76) spectra-core::ledger an_edit_with_its_hash_recomputed_breaks_the_chain_or_the_checkpoint
44.4s        PASS [   2.531s] (59/76) spectra-core::conversation threads_mentions_and_direct_messages_reach_the_inbox
44.4s        PASS [   0.405s] (60/76) spectra-core::ledger an_edited_event_is_caught
44.5s        PASS [   1.104s] (61/76) spectra-core::ledger a_single_append_is_fast
44.6s        PASS [   0.128s] (62/76) spectra-core::ledger reopening_continues_the_chain
44.7s        PASS [   0.072s] (63/76) spectra-core::ledger the_bus_delivers_what_was_appended_in_order
44.8s        PASS [   0.469s] (64/76) spectra-core::ledger an_untouched_ledger_verifies_with_signed_checkpoints
45.1s        PASS [   0.463s] (65/76) spectra-core::principals a_proof_swapped_from_another_event_is_caught
45.4s        PASS [   0.615s] (66/76) spectra-core::principals an_agent_cannot_act_in_another_agents_name_or_the_owners
45.7s        PASS [   0.615s] (67/76) spectra-core::principals an_agent_cannot_record_itself_as_the_owner_or_a_successor
45.8s        PASS [   0.388s] (68/76) spectra-core::principals an_agent_without_the_owners_delegation_cannot_be_added
45.8s        PASS [   6.555s] (69/76) spectra::tools two_agents_talk_and_every_call_is_on_the_record
46.1s        PASS [   0.292s] (70/76) spectra-core::principals an_unsigned_claim_to_be_the_owner_or_an_agent_never_reaches_the_tables
46.4s        PASS [   0.625s] (71/76) spectra-core::principals an_owned_agent_acts_and_the_ledger_verifies_every_signature
46.4s        PASS [   0.007s] (72/76) spectra-mcp bridge::tests::tokens_are_fresh_and_compared_whole
46.4s        PASS [   0.009s] (73/76) spectra-mcp tls::tests::own_certificate_is_made_once_and_pinned
46.7s        PASS [   0.957s] (74/76) spectra-core::principals an_expired_or_disabled_agent_is_refused_and_flagged
47.4s        PASS [   1.303s] (75/76) spectra-core::principals requests_are_refused_unless_signed_fresh_unreplayed_and_from_the_bound_uid
0.0scoverage: 83.9% of lines (5751 of 6851) in 44 files
52.7s        PASS [   8.288s] (76/76) spectra-core::ledger projections_equal_a_rebuild_over_ten_thousand_random_events
52.7s────────────
52.7s     Summary [  31.299s] 76 tests run: 76 passed, 1 skipped
53.1s
53.1s    Finished report saved to /src/target/lcov.info
57.9sartifact coverage: 439514 bytes, blob 62f31fddb8fd
0.0stests: 76 tests, all passed in 1 min 47 s
57.9sartifact junit: 14762 bytes, blob 486f91c01cb6
58.0scache target: kept 1.8 GiB, under its cap of 60% of its 15.6 GiB disk

Ran on earth-1: holds its build cache (kept 9 min ago), holds the image, idle, speed 89 (class 3).

Where its time went: prepare 1.1s, run 53.3s, finish 3.4s.